大数据轮廓类的挖掘方法与流程

文档序号:12786488阅读:470来源:国知局

本发明涉及一种大数据轮廓类的挖掘技术,属于计算机应用技术领域。



背景技术:

轮廓查询技术是近年来数据库与数据挖掘的一个研究重点和热点,这主要是因为它在许多领域有着广泛的应用,如:大数据分析、城市导航系统、多标准决策支持以及高维数据可视化等。给定大数据对象集合R={o1,…,on},其中每个对象oi(i∈[0,n])具有m个维度F={d1,…,dm},每个维度衡量它的一个子特征(比如距离,价格等),那么F上的轮廓查询就是在R中找出一类对象集合R’,它满足如下条件:且R’中每个对象不会在F所有维度上的取值均差于R中的某一对象。不难看出,通过轮廓查询,用户只需考虑属于轮廓对象集合的对象,而不必关心那些被过滤掉的对象,这样用户就可以在小规模的轮廓对象集合上对自己感兴趣的对象进行选择。

S Borzsonyi等人首次将轮廓查询概念引入数据库领域,并提出两个正确性经过严格证明的查询算法:BNL(Block Nested Loops)和DC(Divide and Conquer)。假定对象全集为R,其中BNL算法通过O(|R|2)次对象间的比较来找出返回完整的轮廓对象集,而DC算法使用递归分区的方法来获取查询结果。P Godfrey等人从理论上给出BNL算法和DC算法的时间开销,并提出一种基于外部排序的有效方法LSA(Lattice Skyline Algorithm)。LSA的时间复杂度可降为O(|R|log|R|+k|R|),其中k为维数。K Lee等人基于ZBtree索引树来进一步优化LSA算法的处理效率,使其时间复杂度降为

M Sharifzadeh等人将轮廓查询与地理信息系统技术相结合,提出遥感轮廓查询的概念。基于空间几何领域的有效性质,作者给出一个时间复杂度为O(|a|2b+R1/2)的算法,其中R为空间数据对象集,a为搜索方案数,b为遥感点集中的凸包顶点数。M Khalefa等人考虑电子商务领域数据的模糊不完整特性,并给出一个时间复杂度为O(|R|2)的算法来处理这类数据的轮廓查询。Z Huang等人针对GFS(Google File System)系统的云计算环境,提出一个对数级时间复杂度的分布式算法SCGFS(Skyline Computation for Google File System)。M Alrifai等人在SOA(Service-Oriented Architecture)架构下,基于轮廓查询技术来有效选择Web服务。G Wang等人针对无线传感器网络,给出一个能量有效的轮廓查询处理算法SQWSN(Skyline Query on Wireless Sensor Networks)。S Sun等人基于B+索引树结构,设计一种面向多租户数据库的轮廓查询方法MDOS(Multi-tenant Database Oriented Skyline)。

现有的轮廓查询技术只是返回所有轮廓对象,而在大数据环境下,获取和遍历海量的轮廓对象变得没有实际意义。另一方面,不难发现,在实际应用中,数据对象通常都是以某些度量指标为参数进行集聚,而呈现所谓的“物以类聚”,而同个聚类中的对象具有相似的特征。因此,本发明通过考察轮廓对象的聚类特征而不是单个轮廓对象本身,可以显著提高分析大数据的效率以及分析质量。



技术实现要素:

本发明目的在于克服现有技术的不足,提出一种大数据轮廓类的挖掘技术,首先给出了轮廓类以及k路轮廓层次树的表示方法,然后在处理轮廓查询的过程中,将获得的各轮廓对象的位置信息组织成一棵k路轮廓层次树,从而在基于密度聚类轮廓对象集的过程中,使用k路轮廓层次树的多个有效剪枝性质来快速产生所有的轮廓类。本发明能够增加大数据分析的多样性以及显著提高轮廓类的挖掘效率。

本发明方法技术方案:

主要由4个步骤组成:

1、轮廓类表示

为了直观表示现实应用中大数据的集聚特征,本发明提出了轮廓类的表示方法,如定义1所示。

定义1(轮廓类).假定R是k维对象全集,如果对象集SC满足如下4个条件,那么称SC为一个轮廓类:

1)

2)

3)

4)

在定义1的轮廓类表示方法中,条件1)的为R的轮廓对象集合,条件2)和4)中的表示p密度可达r,而条件3)中表示p不密度可达r。密度可达见定义2所示。

定义2(密度可达).假定R是k维对象全集,给定用户距离参数d,如果存在一个核心轮廓对象链p1,p2,…,pn,p1=q,pn=p,对于pi+1与pi间是直接密度可达的,那么称q与p是密度可达的。为了简单,本发明把p密度可达r,记为同时,将p没有密度可达r,记为

在定义2中,直接密度可达见定义3所示。

定义3(核心轮廓对象及直接密度可达).假定R是k维对象全集,给定相似度阈值参数w以及数量阈值u,如果对象p满足如下条件,那么我们称p(a1,…,ak)为核心轮廓对象:

1)

2)与r的相似度sim(p,r)超过给定的相似度阈值w;

3)条件2)中r的数量超过给定的数量阈值u。

如果p为核心轮廓对象,那么我们称p直接密度可达r。

2、k路轮廓层次树表示

为了在大数据环境下快速产生所有的轮廓类,本发明提出了k路轮廓层次树表示方法。如定义4所示。

定义4(k路轮廓层次树).树结构T(ND,ED)是一棵k路轮廓层次树,如果它满足如下4个性质(其中ND为树节点的集合,而ED为边的集合):

1)T是一棵k叉树;

2)

3)

4)

在定义4的k路轮廓层次树表示方法中,表示多维坐标系原点,Anc(q)为q的祖先节点集合,Desc(p)为p的子孙节点集合,Cht(p,γ)表示p的的γ叉子树,sim为相似度函数。

特别,性质1)要求k路轮廓层次树的每个节点至多含有k棵子树;性质2)要求如果q在p的第γ叉子树上,那么,所有不在q第γ叉子树上的(q的)子孙节点r与p间的相似度应大于q与p间的相似度,反之,所有在q第γ叉子树上的(q的)子孙节点r与p间的相似度应小于q与p间的相似度;性质3)要求如果q和r处于p的不同分支子树上,那么q与r间的相似度应小于q与p以及r与p间的相似度;性质4)要求节点p到多维空间原点的相似度应大于所有p的子孙节点q到坐标原点的相似度。

3、构造k路轮廓层次树

从k维大数据对象集合R={o1,…,on}中,构造并生成k路轮廓层次树实例SLT-k。

4、产生轮廓类

基于步骤3生成的k路轮廓层次树实例SLT-k,利用k路轮廓层次树的4个性质快速产生所有的轮廓类。

本发明具有以下优点:

1、本发明所提出的轮廓类表示方法能够有效增加大数据分析的多样性;

2、本发明所提出的k路轮廓层次树表示方法能够显著提高轮廓类的挖掘效率。

附图说明

图1处理流程如图

具体实施方式

本发明提出一种大数据轮廓类的挖掘技术,首先给出了轮廓类以及k路轮廓层次树的表示方法,然后在处理轮廓查询的过程中,将获得的各轮廓对象的位置信息组织成一棵k路轮廓层次树,从而在基于密度聚类轮廓对象集的过程中,使用k路轮廓层次树的多个有效剪枝性质来快速产生所有的轮廓类。本发明处理流程如图1所示。

本发明主要由4个步骤组成:

1、轮廓类表示

为了直观表示现实应用中大数据的集聚特征,本发明提出了轮廓类的表示方法,如定义1所示。

定义1(轮廓类).假定R是k维对象全集,如果对象集SC满足如下4个条件,那么称SC为一个轮廓类:

1)

2)

3)

4)

在定义1的轮廓类表示方法中,条件1)的为R的轮廓对象集合,条件2)和4)中的表示p密度可达r,而条件3)中表示p不密度可达r。密度可达见定义2所示。

定义2(密度可达).假定R是k维对象全集,给定用户距离参数d,如果存在一个核心轮廓对象链p1,p2,…,pn,p1=q,pn=p,对于pi+1与pi间是直接密度可达的,那么称q与p是密度可达的。为了简单,本发明把p密度可达r,记为同时,将p没有密度可达r,记为

在定义2中,直接密度可达见定义3所示。

定义3(核心轮廓对象及直接密度可达).假定R是k维对象全集,给定相似度阈值参数w以及数量阈值u,如果对象p满足如下条件,那么我们称p(a1,…,ak)为核心轮廓对象:

1)

2)与r的相似度sim(p,r)超过给定的相似度阈值w;

3)条件2)中r的数量超过给定的数量阈值u。

如果p为核心轮廓对象,那么我们称p直接密度可达r。

2、k路轮廓层次树表示

为了在大数据环境下快速产生所有的轮廓类,本发明提出了k路轮廓层次树表示方法。如定义4所示。

定义4(k路轮廓层次树).树结构T(ND,ED)是一棵k路轮廓层次树,如果它满足如下4个性质(其中ND为树节点的集合,而ED为边的集合):

1)T是一棵k叉树;

2)

3)

4)

在定义4的k路轮廓层次树表示方法中,表示多维坐标系原点,Anc(q)为q的祖先节点集合,Desc(p)为p的子孙节点集合,Cht(p,γ)表示p的的γ叉子树,sim为相似度函数。

特别,性质1)要求k路轮廓层次树的每个节点至多含有k棵子树;性质2)要求如果q在p的第γ叉子树上,那么,所有不在q第γ叉子树上的(q的)子孙节点r与p间的相似度应大于q与p间的相似度,反之,所有在q第γ叉子树上的(q的)子孙节点r与p间的相似度应小于q与p间的相似度;性质3)要求如果q和r处于p的不同分支子树上,那么q与r间的相似度应小于q与p以及r与p间的相似度;性质4)要求节点p到多维空间原点的相似度应大于所有p的子孙节点q到坐标原点的相似度。

3、构造k路轮廓层次树

从k维大数据对象集合R={o1,…,on}中,构造并生成k路轮廓层次树实例SLT-k。

4、产生轮廓类

基于步骤3生成的k路轮廓层次树实例SLT-k,利用k路轮廓层次树的4个性质快速产生所有的轮廓类。

各步骤详述。

在本发明的处理流程中,步骤1的k维对象相似度p(a1,…,ak)和r(b1,…,bk)的相似度sim(p,r)采用欧几里得距离的倒数来计算,即

同时,步骤1的相似度阈值参数w通过用户的终端设备输入,取值大小由用户决定;而数量阈值u在实施时取值为1。

从而在步骤1定义3的具体实施过程中,我们把条件2)和3)进行合并,并表示为:

在本发明的处理流程中,与步骤1的实施类似,步骤2的k维对象相似度p和r的相似度sim(p,r)同样采用欧几里得距离的倒数来计算,即

其中p[i]和r[i]分别表示对象p和r的第i为取值。

从而在步骤2中,k路轮廓层次树的性质2)-4)可具体实施成:

2)

3)

4)

在本发明的处理流程中,步骤3从k维大数据对象集合R={o1,…,on}中,构造并生成k路轮廓层次树实例SLT-k,具体实施过程如下:

1)初始化k维区间集合S=<(∞,∞,…,∞)>;

2)重复执行3)-6)步直到S为空;

3)获取集合S中的第一个k维区间F;

4)获取F内与原点最近的轮廓对象p;

5)更新集合S为:

6)如果SLT-k为空,那么将p作为SLT-k的根节点;否则,我们首先获取p的父节点q,进而获取q在多维区间F中的维度位置j,最后将p放置在q的第j叉子节点上;

7)返回k路轮廓层次树实例SLT-k。

在本发明的处理流程中,步骤4,基于步骤3生成的k路轮廓层次树实例SLT-k,利用其4个性质来快速产生所有的轮廓类,具体实施过程如下:

从k路轮廓层次树实例SLT-k的根节点开始,宽度优先遍历SLT-k中的每个节点。对于被遍历到的当前节点p:我们首先获取p的最近邻顶点集其中F为产生p的k维区间。然后计算p与Ψ(p)中每个节点q的欧氏距离当计算完毕之后,我们获取Ψ(p)中与p的欧氏距离不大于1/w的m节点r1,…,rm(其中w为用户输入的相似度阈值参数,见本发明处理流程的步骤1)。接着,我们对m的值进行判断:如果m为0,即p与Ψ(p)中每个节点的欧氏距离均大于1/w,那么我们为p创建一个新的轮廓类。如果m不为0,那么我们合并这m个节点所在的轮廓类,并将p添加到该轮廓类中,进一步,如果这m个节点包含p的父节点q,并假定p在q的第γ叉子树上,那么我们将所有不在p第γ叉子树上的(p的)子孙节点添加到该轮廓类中,并从SLT-k中删除这些子孙节点。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1