当前位置: 首页 > 专利查询>辽宁大学专利>正文

一种基于海量不完备数据集的skyline偏好查询方法技术

技术编号:15639357 阅读:79 留言:0更新日期:2017-06-15 23:02
本发明专利技术涉及一种基于海量不完备数据集的skyline偏好查询方法,本方法根据用户偏好按属性重要程度将不完备数据集IS进行投影,对于投影得到的两个数据集IS’和IS”分别进行严格聚类和松散聚类,聚类后分别执行两种不同的skyline偏好查询算法,分别得到基于严格聚类的skyline结果集SSRS和基于松散聚类的skyline结果集RSRS,最后执行一次基于信息熵计算的skyline偏好查询结果选择策略,得到满足用户偏好的skyline查询结果集。有效解决了在海量不完备数据集上提取个性化信息的问题并提高了skyline查询算法在海量不完备数据集上的效率。

【技术实现步骤摘要】
一种基于海量不完备数据集的skyline偏好查询方法
本专利技术涉及一种基于海量不完备数据集的skyline偏好查询方法,属于物联网和大数据处理

技术介绍
物联网(Internetofthings,loT)是新一代信息技术的重要组成部分,也是信息化时的重要发展阶段。目前物联网领域中主要使用传感器和监测设备来获取数据,由于传感器和监测设备故障、误差和存在着的实际数据获取限制,数据理解有误或数据漏读等多种情况,使得数据集的不完备性普遍存在。这种有缺失数据的数据集,称为不完备数据集。随着物联网应用的发展与普及,以满足用户需求为目标的个性化推荐成为物联网数据处理的热点。例如,根据智能手环、智能手表等可穿戴设备中获取的用户信息,不同的厂商可以针对不同的用户推荐其产品。skyline查询作为一种典型的多目标优化问题的处理方法,在决策制定、市场分析、环境监视、数据挖掘、数据库可视化和计量经济学等应用中发挥着重要作用。因此,对物联网海量不完备数据进行skyline偏好查询处理是解决个性化推荐问题新的视角和切入点。以往对不完备数据的skyline查询是先将数据集进行清洗、修复等预处理,然后再进行skyline查询。但预处理消耗系统资源过多,修复后的数据存在一定的误差,导致查询结果不准确。并且对于一些时效性问题,如流感时期的数据,对这些强实效性数据进行预处理可能会导致数据失效。
技术实现思路
本专利技术针对现有技术的不足,摒弃了传统方法中的预处理阶段,提出了根据用户偏好将维度按重要程度分成两部分分别进行查询处理的策略:基于海量不完备数据集的skyline偏好查询(skylinepreferencequery),使得skyline查询在海量不完备数据集上的执行效率有了较大提升,并且得到满足用户偏好的个性化数据。本专利技术是通过下述技术方案实现的:一种基于海量不完备数据集的skyline偏好查询方法,包括以下步骤:(1)根据数据集中各属性重要程度将不完备数据集IS进行投影,得到重要属性投影后的数据集IS’和不重要属性投影后的数据集IS”(以下简称数据集IS’和数据集IS”);(2)针对数据集IS’和数据集IS”分别进行元组编码;(3)针对数据集IS’进行严格聚类,所述的严格聚类策略(或者方法)包括根据聚类编码的定义进行严格聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(4)针对数据集IS”进行松散聚类;所述的松散聚类策略(或者方法)包括根据元组编码和每个聚类的编码的包含关系的定义进行松散聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(5)将步骤(3)中,严格聚类并完成数据剔除的数据集,执行基于属性值排序的skyline偏好查询算法,得到基于严格聚类的skyline查询结果集SSRS(以下简称SSRS);(6)将步骤(4)中,松散聚类并完成数据剔除的数据集,执行基于支配程度计算的skyline偏好查询算法,得到基于松散聚类的skyline查询结果集RSRS(以下简称RSRS);(7)将步骤(5)、步骤(6)得到的SSRS与RSRS取交集,如果交集不为空集,那么交集中的元组就是最终的skyline查询结果;(8)如果步骤(7)的交集为空集,分别计算SSRS与RSRS中元组的信息熵,将SSRS和RSRS中的元组进行信息熵的计算后得出最终的skyline查询结果反馈给用户。所述(2)针对数据集IS’和数据集IS”进行元组编码的过程如下:pi′·tuple_code(pi″·tuple_code)=Mi,Mi=(m1,m,…,mk);若pi′·vk(pi″·vk)=*,Mi·mik=0;若pi′·vk(pi″·vk)≠*,Mi·mik=1,其中k∈[1,λ]([λ+1,d]).其中,IS’和IS”分别是IS在前λ维上的投影和后d-λ维上的投影,d是不完备数据集IS的维数,pi′和pi″分别是元组pi前λ维上的投影和后d-λ维上的投影,Mi是元组pi的编码,λ是维度的分割常数,λ∈[1,d];所述步骤(3)严格聚类中的聚类编码过程如下:对于如果存在ccj≠p′i·tuple_code,那么CS′=CS′∪{pi′·tuple_code}其中,CS’是严格聚类编码集合,ccj是聚类编码。所述步骤(5)中执行基于属性值排序的skyline偏好查询过程,得到严格聚类结果集SSRS的具体过程如下:(5.1):对数据集IS’中的各维度按照元组属性值非降序排序,使得更有可能支配其他元组的元组优先被处理;每维经过排序后都会生成一个数组Di,i∈[1,λ],对于每个数组Di都有Di[j]>=Di[j+1],j∈[1,|IS′|),其中|IS′|代表IS’中的元组个数;对于在第i维上存在缺失属性值的元组是不会加入数组Di中的,为了节省存储空间,数组Di中存储的只是元组id,而不是真正的元组;设立一个指向数组Di的指针ptri,经过严格聚类后没有被支配的元组都纳入候选集Candidate_Set;随机选择一个数组Di,处理数组Di中指针ptri指向的元组;每个在候选集中的元组都会维护两个值,一个是元组被处理的次数,记为processedCount,一个是元组编码中1的个数即非缺失属性维数,记为dimCount;(5.2):对于当前被选中的元组p,有以下几种情况:①,如果元组p′没有被处理过且元组p′还在候选集Candidate_Set中,就将它与除自己以外没有跟它比较过的元组pj′进行比较,即使pj′已经被之前处理过的元组所支配;若候选集中存在元组支配p′,元组p′就被移出候选集;②:如果元组p′没有被处理过但是被之前处理过的元组支配,即已不在候选集Candidate_Set中,p′就只与还在候选集Candidate_Set中并且没有与p′比较过的元组比较;在以上两种情况下,候选集中被元组p′支配的元组会被移出候选集;③:如果元组p′已经被处理过了就不进行任何比较;④:其中i≠j,p′i和p′j可比较的维度少于个,在这些可比较的维度上,若p′i在至少一维上的值比p′j“好”,剩余维度上的值不比p′j“差”就认为p′i弱支配p′j,记为pi′>*pj′如果两个元组pi′与pj′之间具有弱支配关系,还需要比较这两个元组的重量;若满足pi′的重量大于pj′的重量,才认为pi′支配pj′;综合考虑非缺失属性值及其被用户所赋予的权重,元组重量计算公式(1),如下所示:(5.3):当候选集中的元组p的比较次数达到了其非缺失属性维数dimCount,就将这个元组从候选集移到严格skyline结果集SSRS中;(5.4):当候选集为空或者所有元组都被处理过至少一次时,把候选集Candidate_Set中的其余元组都放入严格聚类skyline结果集SSRS中,此时基于属性值排序的skyline偏好查询过程结束。所述步骤(6)中执行支配程度计算skyline偏好查询算法,得到松散聚类结果集RSRS的具体过程如下:(6.1):对于每一个元组判断它聚于哪一个类是通过元组编码与聚类编码的匹配来完成的;严格聚类规则是对元组编码和聚类编码执行完全匹配,只有当一个元组的编码与一个聚类的编码完全一致时才认为将这个元组聚于这个类中;松散聚类规则是对元组编码和聚类编码执行不本文档来自技高网...
一种基于海量不完备数据集的skyline偏好查询方法

【技术保护点】
一种基于海量不完备数据集的skyline偏好查询方法,其特征在于:包括以下步骤:(1)根据数据集中各属性重要程度将不完备数据集IS进行投影,得到重要属性投影后的数据集IS’和不重要属性投影后的数据集IS”;(2)针对数据集IS’和数据集IS”分别进行元组编码;(3)针对数据集IS’进行严格聚类,所述的严格聚类包括根据聚类编码的定义进行严格聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(4)针对数据集IS”进行松散聚类;所述的松散聚类包括根据元组编码和每个聚类的编码的包含关系的定义进行松散聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(5)将步骤(3)中,严格聚类并完成数据剔除的数据集,执行基于属性值排序的skyline偏好查询算法,得到基于严格聚类的skyline查询结果集SSRS;(6)将步骤(4)中,松散聚类并完成数据剔除的数据集,执行基于支配程度计算的skyline偏好查询算法,得到基于松散聚类的skyline查询结果集RSRS;(7)将步骤(5)、步骤(6)得到的SSRS与RSRS取交集,如果交集不为空集,那么交集中的元组就是最终的skyline查询结果;(8)如果步骤(7)的交集为空集,分别计算SSRS与RSRS中元组的信息熵,将SSRS和RSRS中的元组进行信息熵的计算后得出最终的skyline查询结果反馈给用户。...

【技术特征摘要】
1.一种基于海量不完备数据集的skyline偏好查询方法,其特征在于:包括以下步骤:(1)根据数据集中各属性重要程度将不完备数据集IS进行投影,得到重要属性投影后的数据集IS’和不重要属性投影后的数据集IS”;(2)针对数据集IS’和数据集IS”分别进行元组编码;(3)针对数据集IS’进行严格聚类,所述的严格聚类包括根据聚类编码的定义进行严格聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(4)针对数据集IS”进行松散聚类;所述的松散聚类包括根据元组编码和每个聚类的编码的包含关系的定义进行松散聚类和聚类后每个类中被支配的数据元组被剔除两个流程;(5)将步骤(3)中,严格聚类并完成数据剔除的数据集,执行基于属性值排序的skyline偏好查询算法,得到基于严格聚类的skyline查询结果集SSRS;(6)将步骤(4)中,松散聚类并完成数据剔除的数据集,执行基于支配程度计算的skyline偏好查询算法,得到基于松散聚类的skyline查询结果集RSRS;(7)将步骤(5)、步骤(6)得到的SSRS与RSRS取交集,如果交集不为空集,那么交集中的元组就是最终的skyline查询结果;(8)如果步骤(7)的交集为空集,分别计算SSRS与RSRS中元组的信息熵,将SSRS和RSRS中的元组进行信息熵的计算后得出最终的skyline查询结果反馈给用户。2.根据权利要求1所述的一种基于海量不完备数据集的skyline偏好查询方法,其特征在于:所述(2)针对数据集IS’和数据集IS”进行元组编码的过程如下:p′i·tuple_code(p″i·tuple_code)=Mi,Mi=(m1,m,…,mk);若p′i·vk(p″i·vk)=*,Mi·mik=0;若p′i·vk(p″i·vk)≠*,Mi·mik=1,其中k∈[1,λ]([λ+1,d])其中,IS’和IS”分别是IS在前λ维上的投影和后d-λ维上的投影,d是不完备数据集IS的维数,pi′和pi″分别是元组pi前λ维上的投影和后d-λ维上的投影,Mi是元组pi的编码,λ是维度的分割常数,λ∈[1,d]。3.根据权利要求1所述的一种基于海量不完备数据集的skyline偏好查询方法,其特征在于:所述步骤(3)严格聚类中的聚类编码过程如下:_对于如果存在ccj≠p′i·tuple_code,那么CS′=CS′U{pi′·tuple_code}其中,CS’是严格聚类编码集合,ccj是聚类编码。4.根据权利要求1所述的一种基于海量不完备数据集的skyline偏好查询方法,其特征在于:所述步骤(5)中执行基于属性值排序的skyline偏好查询过程,得到严格聚类结果集SSRS的具体过程如下:(5.1):对数据集IS’中的各维度按照元组属性值非降序排序,使得更有可能支配其他元组的元组优先被处理;每维经过排序后都会生成一个数组Di,i∈[1,λ],对于每个数组Di都有Di[j]>=Di[j+1],j∈[1,|IS′|),其中|IS′|代表IS’中的元组个数;对于在第i维上存在缺失属性值的元组是不会加入数组Di中的,为了节省存储空间,数组Di中存储的只是元组id,而不是真正的元组;设立一个指向数组Di的指针ptri,经过严格聚类后没有被支配的元组都纳入候选集Candidate_Set;随机选择一个数组Di,处理数组Di中指针ptri指向的元组;每个在候选集中的元组都会维护两个值,一个是元组被处理的次数,记为processedCount,一个是元组编码中1的个数即非缺失属性维数,记为dimCount;(5.2):对于当前被选中的元组p,有以下几种情况:①,如果元组p′没有被处理过且元组p′还在候选集Candidate_Set中,就将它与除自己以外没有跟它比较过的元组pj′进行比较,即使pi′已经被之前处理过的元组所支配;若候选集中存在元组支配p′,元组p′就被移出候选集;②:如果元组p′没有被处理过但是被之前处理过的元组支配,即已不在候选集Candidate_Set中,p′就只与还在候选集Candidat...

【专利技术属性】
技术研发人员:王妍石展王俊陆李玉诺宋宝燕
申请(专利权)人:辽宁大学
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1