CN104809242B - 一种基于分布式结构的大数据聚类方法和装置 - Google Patents
一种基于分布式结构的大数据聚类方法和装置 Download PDFInfo
- Publication number
- CN104809242B CN104809242B CN201510249247.1A CN201510249247A CN104809242B CN 104809242 B CN104809242 B CN 104809242B CN 201510249247 A CN201510249247 A CN 201510249247A CN 104809242 B CN104809242 B CN 104809242B
- Authority
- CN
- China
- Prior art keywords
- data
- hypergraph
- super side
- rule
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本发明提出了一种基于分布式结构的大数据聚类方法,包括:步骤S100,大数据预处理;步骤S200,大数据切分和管理;步骤S300,建立聚类用的超图模型;步骤S400,大数据映射,具体是将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;步骤S500,利用超图对每个数据块分别进行聚类处理;步骤S600,对步骤S500得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果。本发明利用云平台结合超图理论对大数据进行挖掘聚类处理,实现了大数据分析处理的快速、实时、准确。
Description
技术领域
本发明涉及数据挖掘领域,具体涉及一种基于分布式结构的大数据聚类方法和装置。
背景技术
半个世纪以来,随着计算机技术全面融入社会生活,信息爆炸已经积累到了一个开始引发变革的程度。它不仅使世界充斥着比以往更多的信息,而且其增长速度也在加快。信息爆炸的学科如天文学和基因学,创造出了“大数据”这个概念。如今,这个概念几乎应用到了所有人类智力与发展的领域中。21世纪是数据信息大发展的时代,移动互联、社交网络、电子商务等极大拓展了互联网的边界和应用范围,各种数据正在迅速膨胀并变大。互联网(社交、搜索、电商)、移动互联网(微博)、物联网(传感器,智慧地球)、车联网、GPS、医学影像、安全监控、金融(银行、股市、保险)、电信(通话、短信)都在疯狂产生着数据。地球上至今总共的数据量,在2006年个人用户才刚刚迈进TB时代,全球一共新产生了约180EB的数据;到2011年,这个数字达到了1.8ZB。而有市场研究机构预测,到2020年整个世界的数据总量将会增长44倍,达到35.2ZB!(1ZB=10亿TB)。
大数据既是数据量的一个激增(从最开始的ERP/CRM数据,逐步扩大到增加互联网数据,再到物联网的传感器等相关信息数据),同时也是数据复杂性的提升。大数据可以说是量积累到一定程度后形成的规模化质变。大数据的数据类型丰富多样,既有像原有的数据库数据等结构化信息,又有文本、视频等非结构化信息,而且数据的采集和处理速度要求也越来越快。
大数据包含了“海量数据”的含义,在内容上超越了海量数据,简而言之,大数据是“海量数据”+复杂类型的数据。大数据包括交易和交互数据集在内的所有数据集,其规模或复杂程度超出了常用技术按照合理的成本和时限捕捉、管理及处理这些数据集的能力。
大数据由三项主要技术趋势汇聚组成:
海量交易数据:在从ERP应用程序到数据仓库应用程序的在线交易处理(OLTP)与分析系统中,传统的关系数据以及非结构化和半结构化信息仍在继续增长。随着更多的数据和业务流程移向公共和私有云,这一局面变得更加复杂。内部的经营交易信息主要包括联机交易数据和联机分析数据,是结构化的、通过关系数据库进行管理和访问的静态历史数据。通过这些数据,我们能了解过去发生了什么。
海量交互数据:这一新生力量由源于Facebook、Twitter、LinkedIn及其他来源的社交媒体数据构成。它包括了呼叫详细记录(CDR)、设备和传感器信息、GPS和地理定位映射数据、通过管理文件传输(Manage File Transfer)协议传送的海量图像文件、Web文本和点击流数据、科学信息、电子邮件等等。这些数据可以告诉我们未来会发生什么。
海量数据处理:利用多种轻型数据库来接收发自客户端的数据,并将其导入到一个集中的大型分布式数据库或者分布式存储集群,然后利用分布式数据库来对存储于其内的集中的海量数据进行普通的查询和分类汇总等,以此满足大多数常见的分析需求,同时对基于前面的查询数据进行数据挖掘,能满足高级别的数据分析需求。例如,YunTable是在传统的分布式数据库和新的NoSQL技术的基础上发展而来的新一代分布式数据库。通过它能构建一个百台级别的分布式集群来管理PB级别的海量数据。
面对大数据的汹涌来袭,传统的数据处理方式应对起来显得越来越困难,我们在很多时候就像面对一个金矿,却没有有效的工具和手段,只能望“数据”兴叹。传统分析技术面对大数据的困惑主要有:
由于分析手段限制,不能充分利用所有数据;
受限于分析能力而无法获取复杂问题的答案;
因为时限要求而不得不采用某项简单的建模技术;
因为没有足够时间运算,对模型精度进行妥协。
基于数据挖掘聚类研究的现状,现有的对于大数据聚类的挖掘,采用的方法多是采用对数据的抽样,选取具有代表性的数据,实现以点代面的聚类分析。在面对大数据处理时,一般采用的是基于样本抽取概率的方法实现,但抽样方法没有考虑数据点之间或区间之间全局的相对距离以及数据分布不均匀,出现划分区间过硬的问题。虽然后来,又引入聚类、模糊概念以及云模型等对区间划分过硬问题进行了改善,也取得了很好的效果,但这些方法均没有考虑大数据数据点对知识发现任务的不同作用。因此,为使挖掘得到的聚类规则更有效,更快速,必须从充分考虑数据点的不同作用入手,对聚类分析进行更深入的研究。而云计算正是基于现实中的大数据数据点之间的处理而提出的,这为挖掘更有效聚类规则提供了强大的理论基础。
发明内容
为解决现有技术中存在的上述问题,本发明公开了一种基于分布式结构的大数据聚类方法和装置,采用MapReduce编程模型结合聚类算法实现了大数据的快速有效处理,能够不断地从数据中挖掘出有价值信息。
MapReduce是Google开发的主要用于大规模(TB级)数据文件处理的编程模型。其主要思想是通过“Map(映射)”和“Reduce(化简)”的概念来构成运算基本单元,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇总输出,即可并行处理海量数据。它的一般形式如下:
Map(k1,v1)-〉 list(k2,v2)
Reduce(k2,list(v2))-〉 list(v2)
简而言之,Map-Reduce编程模式将输入数据文件划分为M个独立的数据分片(split);然后分配给多个Worker启动M个Map函数并行地执行输出到中间文件(本地写)、并将计算结果以key/value对形式输出中间结果。中间结果key/value按照key分组,执行Reduce函数,根据从Master获得的中间文件位置信息,将Reduce命令发送给中间文件所在节点执行,计算并输出最终结果,MapReduce的输出存放在R个输出文件中,可进一步减少了传送中间文件对带宽的需求。
MapReduce是依赖于HDFS实现的。通常MapReduce会将被计算的数据分为很多小块,HDFS会将每个块复制若干份以确保系统的可靠性,同时它按照一定的规则将数据块放置在集群中的不同机器上,以便MapReduce在数据宿主机器上进行最便捷的计算。HDFS是GoogleGFS的开源版本,一个高度容错的分布式文件系统,它能够提供高吞吐量的数据访问,适合存储海量(PB级)的大文件(通常超过64M)。
本发明利用MapReduce编程模型设计一种聚类集成算法,将大数据切块存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切块数据,其key值为所属数据块Di。计算集群中的计算机对本地存储的相应切块得采用聚类算法得到基聚类结果,对同机器各聚类结果采用一致性方案进行Reduce过程(key值为机器号,value值为聚类结果)得到该机器的最终集成聚类结果,从而达到并行有效处理大数据的目的,能进一步提高的数据处理性能和效率。
为了达到上述目的,本发明提供如下技术方案:
一种基于分布式结构的大数据聚类方法,包括:
步骤S100,大数据预处理,通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
步骤S200,大数据切分和管理:将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
步骤S300,建立聚类用的超图模型,具体包括:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
超边em的权重可以用以下两种方法来确定:
(1)用每一条超边em的关联规则的支持度作为该超边的权重;
(2)用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
步骤S400,大数据映射,具体是将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
步骤S500,利用超图对每个数据块分别进行聚类处理,
对于超图H=(V,E),C为顶点V的一个类集,ci∈C是V的子集,对于任意两个类ci和cj,有ci∩cj≠φ,对于一个超边em和一个类ci,如果em∩ci≠φ,则em和ci之间存在关系,该关系表示为:
其中,|em|表示超边em中顶点数目,|ci|表示类ci中顶点数目,|em∩ci|是同时出现在em和ci中的顶点数目,将类ci和类cj合并为cij,cij=ci∪cj,对于超边em,em∩ci≠φ,如果HC(em,ci)>HC(em,cij),则超边em中有cj的顶点,HC值的变化体现了ci和cj之间相对超边em的相似度;定义类ci的质量Q(ci)为:
即类ci的质量为所有超边em∈E的带权重的HC(em,ci)值的和;
定义合并指数f为:
f(ci,cj)=Q(cij)-[Q(ci)-Q(cj)];
聚类处理的具体过程包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)重复执行步骤(1)~(3),直至不再有类被合并;
聚类处理的具体过程还可以是包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)所述新超图对应k个分割{G1,G2,…Gk},为第i个分割中所有边的权重均值,为第i个分割中所有边的权重均方差,计算如下:
其中,i=1,2,…,k,e表示超图中的超边,Gi表示超图的第i个分割,w(e)表示超边e对应的权重,表示分割Gi中超边e的顶点个数;
(5)判断是否大于第一阈值,如果大于第一阈值,则重复执行步骤(1)~(4)的聚类过程,否则,结束聚类过程。
步骤S500中,利用超图对每个数据块分别进行聚类处理,还可以采用以下方法实现:
(1)粗化处理,基于超图H=(V,E)构造最小超图,使得对该最小超图所做的任何一种划分,在初始超图上的划分投影质量都要好于在相同时间内直接对初始超图所做的划分;
在超图的粗化阶段,我们需要构造一系列连续的更小的超图。粗化的目的是构造一个最小的超图,使得对该超图所做的任何一种划分,在初始超图上的划分投影质量都要好于在相同时间内直接对初始超图所做的划分。另外,超图的粗化也会减少超边的尺寸。也就是说,经过几级粗化,大型的超边被压缩为仅仅连接几个顶点的小型超边。因为细化启发式算法是基于Kernighan-Lin算法,该算法对于小型超边非常有效,但是对于属于不同划分区域的,包含大量顶点的超边效果就很差。在下一级的粗化超图中,将一组顶点压缩形成单一的顶点可以选择不同的方法。从结点选择的角度,可以分为FC(First Choice scheme)、GFC(Greedy First Choice scheme)、HFC(Hybrid First Choice scheme)等。从结点合并的角度,可以分为EDGE(Edge scheme)、HEDGE(Hyper-Edge scheme)、MHEDGE(ModifiedHyper-Edge scheme)等。
(2)初始划分处理,对(1)中粗化处理后的超图进行二划分;
在初始划分阶段,我们需要对粗化超图进行二划分。因为此时超图包含的顶点的数目很少(一般小于100个顶点),所以可以采用很多不同的算法而不会过多地影响算法的运行时间和质量。可以采用多次随机的二分方法。我们也可以采用组合方法、谱方法和元胞自动机方法等方法进行对分。
(3)迁移优化处理,使用最小的超图的划分来得到一个更细化的超图划分;
在迁移优化阶段,我们使用最小的超图的划分来得到一个更细化的超图划分。以上的过程我们通过向下一级更细化的超图投影来实现,并且利用划分细化算法来减少划分次数从而提高划分的质量。因为下一级的细化超图拥有更高的自由度,所以细化算法会获得更高的质量。V-周期细化算法的思想是利用多级范例来进一步提高二分的质量。V-周期细化算法包括两部分,分别是粗化阶段和迁移优化阶段。粗化阶段保留了初始划分作为算法的输入。我们将这个称之为受限制的粗化计划。在受限制的粗化计划中,一组顶点进行合并形成粗化图的顶点,该组顶点只能属于二划分中的一部分。其结果是,原来的二划分被保留并通过了粗化处理,同时成为我们在迁移优化阶段将要进行细化的初始化分。在迁移优化阶段的V-周期细化而后上面提到的多级超图划分方法的迁移优化阶段是完全一样的。它在分好的区域之间移动顶点来提高分割的质量。值得注意的是,原始超图的各种粗化表示方法,允许细化来进一步的提高质量从而帮助它跳出局部最小值。
(4)最终划分结果即为聚类处理结果。
步骤S600,对步骤S500得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
对步骤S500得到的聚类结果进行再次聚类,可以采用多种聚类方法实现,如k-means聚类方法,以超图为基础的聚类方法等。
本发明利用云平台结合超图理论对大数据进行挖掘聚类处理,实现了大数据分析处理的快速、实时、准确。
本发明还提出的一种基于分布式结构的大数据聚类装置,包括:
大数据预处理装置,用于通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
大数据切分和管理装置,用于将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
建立聚类用的超图模型装置,具体用于:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
超边em的权重可以用以下两种方法来确定:
(1)用每一条超边em的关联规则的支持度作为该超边的权重;
(2)用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
大数据映射装置,用于将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
聚类处理装置,利用超图对每个数据块分别进行聚类处理,
对于超图H=(V,E),C为顶点V的一个类集,ci∈C是V的子集,对于任意两个类ci和cj,有ci∩cj≠φ,对于一个超边em和一个类ci,如果em∩ci≠φ,则em和ci之间存在关系,该关系表示为:
其中,|em|表示超边em中顶点数目,|ci|表示类ci中顶点数目,|em∩ci|是同时出现在em和ci中的顶点数目,将类ci和类cj合并为cij,cij=ci∪cj,对于超边em,em∩ci≠φ,如果HC(em,ci)>HC(em,cij),则超边em中有cj的顶点,HC值的变化体现了ci和cj之间相对超边em的相似度;定义类ci的质量Q(ci)为:
即类ci的质量为所有超边em∈E的带权重的HC(em,ci)值的和;
定义合并指数f为:
f(ci,cj)=Q(cij)-[Q(ci)-Q(cj)];
聚类处理的具体过程包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)重复执行步骤(1)~(3),直至不再有类被合并;
聚类处理的具体过程还可以是包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)所述新超图对应k个分割{G1,G2,…Gk},为第i个分割中所有边的权重均值,为第i个分割中所有边的权重均方差,计算如下:
其中,i=1,2,…,k,e表示超图中的超边,Gi表示超图的第i个分割,w(e)表示超边e对应的权重,表示分割Gi中超边e的顶点个数;
(5)判断是否大于第一阈值,如果大于第一阈值,则重复执行步骤(1)~(4)的聚类过程,否则,结束聚类过程。
最终聚类装置,对聚类处理装置得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
对聚类处理装置得到的聚类结果进行再次聚类,可以采用多种聚类方法实现,如k-means聚类方法,以超图为基础的聚类方法等。
附图说明
图1为本发明数据存储方法的流程图;
图2为本发明数据存储装置的结构图。
具体实施方式
下面将结合本发明的附图,对本发明的技术方案进行清楚、完整地描述。这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
参见图1,本发明提出的一种基于分布式结构的大数据聚类方法,包括:
步骤S100,大数据预处理,通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
数据预处理是指在主要的处理以前对数据进行的一些处理。为信息处理过程提供干净、准确、简洁的数据,提高信息处理效率和准确性,是信息处理中非常重要的环节。现实世界的数据千差万别,为了实现数据的统一处理,必须首先将数据预处理成符合要求的标准数据。
步骤S200,大数据切分和管理:将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
Hadoop作为Google的MapReduce算法开源实现,能够把应用程序分割成许多很小的工作单元,每个单元可以在任何集群节点上执行或重复执行。此外,Hadoop还提供一个分布式文件系统用来在各个计算节点上存储数据,并提供了对数据读写的高吞吐率。许多单机算法都在Hadoop上予以重新实现,为各种算法处理海量数据提供了高可用性和可扩展性。
步骤S300,建立聚类用的超图模型,具体包括:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
超边em的权重可以用以下两种方法来确定:
(1)用每一条超边em的关联规则的支持度作为该超边的权重;
(2)用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
为了便于理解本发明,下面给出了一些与超图有关的概念。
数据项与数据项集:设I={i1,i2,…,im}是m个不同项目的集合,每个ik(k=1,2,…,m)成为数据项(Item),数据项的集合I称为数据项集(Itemset),简称为项集,其元素个数称为数据项集的长度。长度为k的数据项集称为k维数据项集,简称为k-项集(k-Itemset)。
事务:事务T(Transaction)是数据项集I上的一个子集,即每个事务均有一个唯一的标示符TID与之相联,不同事务的全体构成了全体事务集D(即事务数据库)。
数据项集的支持度:设X为数据项集,B为数据库D中包含X的数量,A为数据库D中包含的所有事务的数量,则数据项集X的支持度(Support)为:项集X的支持度Support(X)描述了项集X的重要性。
关联规则:关联规则可以表示为:R:X→Y,其中且X∩Y=φ,它表示如果项集X在某一事务中出现,必然会导致项集Y也会在同一事务中出现。X称为规则的先决条件(前项),Y称为规则的结果(后项)。
关联规则的支持度:对于关联规则R:X→Y,其中且X∩Y=φ。规则R的支持度是指数据库D中同时包含项集X和项集Y的交易数与所有交易数之比。
关联规则的置信度:对于关联规则R:X→Y,其中且X∩Y=φ。规则R的置信度(Confidence)表示为:
即指数据库D中在出现项集X的交易中,项集Y也同时出现的概率有多大。
关联规则的支持度和置信度是规则兴趣度的两种衡量。置信度是对关联规则的准确度的度量,或者说表示规则的强度;支持度是对关联规则的重要性的度量,表示规则的频度。如果不考虑关联规则的支持度和可信度,那么在数据库中存在非常多的关联规则。事实上,人们一般只对那些满足一定的支持度和可信度的关联规则感兴趣。因此,为了发现有意义的关联规则,需要由用户给定两个基本阈值:最小支持度和最小置信度。
最小支持度与频繁项集:最小支持度(Minimum support)表示发现关联规则要求数据项必须满足的最小支持阈值,记为minsupp,它表示数据项集在统计意义下的最低重要性。只有满足最小支持度的数据项集才有可能在关联规则中出现,支持度大于最小支持度的数据项集称为频繁项集或强项集(Large item set);反之,称为非频繁项集或弱项集(Small item set)。
最小置信度:最小置信度(Minimum confidence)表示关联规则必须满足的最小可信度,记为minconf,它表示关联规则的最低可靠性。
强关联规则:如果Support(R)≥minsupp且Confidence(R)≥minconf,则称关联规则
R:X→Y,为强关联规则。
超图H=(V,E),其中顶点集V={v1,v2,…vn},边集E={e1,e2,…em},用aij表示顶点vi与vj直接的边数,可能取值为0,1,2……称其得到的nxn矩阵a[i,j]∈{0,1,2……},为超图的邻接矩阵。
根据超图邻接矩阵的定义是简单图邻接矩阵定义的扩展,结合邻接矩阵的定义的性质,可以得到超图邻接矩阵的性质:
(1)A(H)为对阵矩阵
(2)两图G和H同构的充分必要条件是存在置换矩阵P使得
A(H)=PTA(G)P。
步骤S400,大数据映射,具体是将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
步骤S500,利用超图对每个数据块分别进行聚类处理,
对于超图H=(V,E),C为顶点V的一个类集,ci∈C是V的子集,对于任意两个类ci和cj,有ci∩cj≠φ,对于一个超边em和一个类ci,如果em∩ci≠φ,则em和ci之间存在关系,该关系表示为:
其中,|em|表示超边em中顶点数目,|ci|表示类ci中顶点数目,|em∩ci|是同时出现在em和ci中的顶点数目,将类ci和类cj合并为cij,cij=ci∪cj,对于超边em,em∩ci≠φ,如果HC(em,ci)>HC(em,cij),则超边em中有cj的顶点,HC值的变化体现了ci和cj之间相对超边em的相似度;定义类ci的质量Q(ci)为:
即类ci的质量为所有超边em∈E的带权重的HC(em,ci)值的和;
定义合并指数f为:
f(ci,cj)=Q(cij)-[Q(ci)-Q(cj)];
聚类处理的具体过程包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)重复执行步骤(1)~(3),直至不再有类被合并;
聚类处理的具体过程还可以是包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)所述新超图对应k个分割{G1,G2,…Gk},为第i个分割中所有边的权重均值,为第i个分割中所有边的权重均方差,计算如下:
其中,i=1,2,…,k,e表示超图中的超边,Gi表示超图的第i个分割,w(e)表示超边e对应的权重,表示分割Gi中超边e的顶点个数;
(5)判断是否大于第一阈值,如果大于第一阈值,则重复执行步骤(1)~(4)的聚类过程,否则,结束聚类过程。
步骤S500中,利用超图对每个数据块分别进行聚类处理,还可以采用以下方法实现:
(1)粗化处理,基于超图H=(V,E)构造最小超图,使得对该最小超图所做的任何一种划分,在初始超图上的划分投影质量都要好于在相同时间内直接对初始超图所做的划分;
在超图的粗化阶段,我们需要构造一系列连续的更小的超图。粗化的目的是构造一个最小的超图,使得对该超图所做的任何一种划分,在初始超图上的划分投影质量都要好于在相同时间内直接对初始超图所做的划分。另外,超图的粗化也会减少超边的尺寸。也就是说,经过几级粗化,大型的超边被压缩为仅仅连接几个顶点的小型超边。因为细化启发式算法是基于Kernighan-Lin算法,该算法对于小型超边非常有效,但是对于属于不同划分区域的,包含大量顶点的超边效果就很差。在下一级的粗化超图中,将一组顶点压缩形成单一的顶点可以选择不同的方法。从结点选择的角度,可以分为FC(First Choice scheme)、GFC(Greedy First Choice scheme)、HFC(Hybrid First Choice scheme)等。从结点合并的角度,可以分为EDGE(Edge scheme)、HEDGE(Hyper-Edge scheme)、MHEDGE(ModifiedHyper-Edge scheme)等。
(2)初始划分处理,对(1)中粗化处理后的超图进行二划分;
在初始划分阶段,我们需要对粗化超图进行二划分。因为此时超图包含的顶点的数目很少(一般小于100个顶点),所以可以采用很多不同的算法而不会过多地影响算法的运行时间和质量。可以采用多次随机的二分方法。我们也可以采用组合方法、谱方法和元胞自动机方法等方法进行对分。
(3)迁移优化处理,使用最小的超图的划分来得到一个更细化的超图划分;
在迁移优化阶段,我们使用最小的超图的划分来得到一个更细化的超图划分。以上的过程我们通过向下一级更细化的超图投影来实现,并且利用划分细化算法来减少划分次数从而提高划分的质量。因为下一级的细化超图拥有更高的自由度,所以细化算法会获得更高的质量。V-周期细化算法的思想是利用多级范例来进一步提高二分的质量。V-周期细化算法包括两部分,分别是粗化阶段和迁移优化阶段。粗化阶段保留了初始划分作为算法的输入。我们将这个称之为受限制的粗化计划。在受限制的粗化计划中,一组顶点进行合并形成粗化图的顶点,该组顶点只能属于二划分中的一部分。其结果是,原来的二划分被保留并通过了粗化处理,同时成为我们在迁移优化阶段将要进行细化的初始化分。在迁移优化阶段的V-周期细化而后上面提到的多级超图划分方法的迁移优化阶段是完全一样的。它在分好的区域之间移动顶点来提高分割的质量。值得注意的是,原始超图的各种粗化表示方法,允许细化来进一步的提高质量从而帮助它跳出局部最小值。
(4)最终划分结果即为聚类处理结果。
步骤S600,对步骤S500得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
对步骤S500得到的聚类结果进行再次聚类,可以采用多种聚类方法实现,如k-means聚类方法,以超图为基础的聚类方法等。
本发明利用云平台结合超图理论对大数据进行挖掘聚类处理,实现了大数据分析处理的快速、实时、准确。
参见图2,本发明还提出的一种基于分布式结构的大数据聚类装置,包括:
大数据预处理装置,用于通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
数据预处理是指在主要的处理以前对数据进行的一些处理。为信息处理过程提供干净、准确、简洁的数据,提高信息处理效率和准确性,是信息处理中非常重要的环节。现实世界的数据千差万别,为了实现数据的统一处理,必须首先将数据预处理成符合要求的标准数据。
大数据切分和管理装置,用于将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
Hadoop作为Google的MapReduce算法开源实现,能够把应用程序分割成许多很小的工作单元,每个单元可以在任何集群节点上执行或重复执行。此外,Hadoop还提供一个分布式文件系统用来在各个计算节点上存储数据,并提供了对数据读写的高吞吐率。许多单机算法都在Hadoop上予以重新实现,为各种算法处理海量数据提供了高可用性和可扩展性。
建立聚类用的超图模型装置,具体用于:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
超边em的权重可以用以下两种方法来确定:
(1)用每一条超边em的关联规则的支持度作为该超边的权重;
(2)用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
大数据映射装置,用于将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
聚类处理装置,利用超图对每个数据块分别进行聚类处理,
对于超图H=(V,E),C为顶点V的一个类集,ci∈C是V的子集,对于任意两个类ci和cj,有ci∩cj≠φ,对于一个超边em和一个类ci,如果em∩ci≠φ,则em和ci之间存在关系,该关系表示为:
其中,|em|表示超边em中顶点数目,|ci|表示类ci中顶点数目,|em∩ci|是同时出现在em和ci中的顶点数目,将类ci和类cj合并为cij,cij=ci∪cj,对于超边em,em∩ci≠φ,如果HC(em,ci)>HC(em,cij),则超边em中有cj的顶点,HC值的变化体现了ci和cj之间相对超边em的相似度;定义类ci的质量Q(ci)为:
即类ci的质量为所有超边em∈E的带权重的HC(em,ci)值的和;
定义合并指数f为:
f(ci,cj)=Q(cij)-[Q(ci)-Q(cj)];
聚类处理的具体过程包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)重复执行步骤(1)~(3),直至不再有类被合并;
聚类处理的具体过程还可以是包括:
(1)初始化类集C,使C中每一个类对应V中每一个顶点;
(2)遍历超图中所有的类,为每个类ci找到一个类cj,使得他们的合并指数最大,即f(ci,cj)的值最大,如果f(ci,cj)>0,则合并类ci和类cj为类cij;
(3)用所有合并后的类构建新超图;
(4)所述新超图对应k个分割{G1,G2,…Gk},为第i个分割中所有边的权重均值,为第i个分割中所有边的权重均方差,计算如下:
其中,i=1,2,…,k,e表示超图中的超边,Gi表示超图的第i个分割,w(e)表示超边e对应的权重,表示分割Gi中超边e的顶点个数;
(5)判断是否大于第一阈值,如果大于第一阈值,则重复执行步骤(1)~(4)的聚类过程,否则,结束聚类过程。
最终聚类装置,对聚类处理装置得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
对聚类处理装置得到的聚类结果进行再次聚类,可以采用多种聚类方法实现,如k-means聚类方法,以超图为基础的聚类方法等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (2)
1.一种基于分布式结构的大数据聚类方法,包括:
步骤S100,大数据预处理,通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
步骤S200,大数据切分和管理:将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
步骤S300,建立聚类用的超图模型,
步骤S400,大数据映射,具体是将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
步骤S500,利用超图对每个数据块分别进行聚类处理,
步骤S600,对步骤S500得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
其中,步骤S300,建立聚类用的超图模型,具体包括:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
其中,超边em的权重为:
用每一条超边em的关联规则的支持度作为该超边的权重;
关联规则:关联规则表示为:R:X→Y,其中且X∩Y=φ,它表示如果项集X在某一事务中出现,必然会导致项集Y也会在同一事务中出现,X称为规则的先决条件,即前项,Y称为规则的结果,即后项;
关联规则的支持度:对于关联规则R:X→Y,规则R的支持度是指数据库D中同时包含项集X和项集Y的交易数与所有交易数之比;
其中,超边em的权重为:
用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
2.一种基于分布式结构的大数据聚类装置,包括:
大数据预处理装置,用于通过填写缺失值、噪声数据光滑化、识别删除离群点将现实世界的数据进行清理,并将来自不同数据源的数据进行规范化处理,将其转换为标准格式的数据;
大数据切分和管理装置,用于将大数据切块后,得到切分后的多个数据块,并将其存储到云平台的分布式文件系统HDFS中,Hadoop负责管理切分后的数据块;
建立聚类用的超图模型装置,用于建立聚类用的超图模型;
大数据映射装置,用于将切分后的数据块分别映射到超图H=(V,E),即每个数据块映射到一个超图;
聚类处理装置,利用超图对每个数据块分别进行聚类处理;
最终聚类装置,对聚类处理装置得到的每个数据块的聚类结果进行再次聚类,得到最终的聚类结果;
其中,建立聚类用的超图模型装置,具体用于:
建立带权的超图H=(V,E),其中,V是顶点的集合,E是超边的集合,每个超边都能够连接两个以上的顶点,用超图的顶点来表示用来聚类的数据项,用超边来表示其所连接的顶点所表示的数据项的关联情况,w(em)是对应于E中的每一条超边em的权重,em∈E,w(em)用来衡量由超边连接起来的多个相关数据项之间的相关程度;
其中,超边em的权重为:
用每一条超边em的关联规则的支持度作为该超边的权重;
关联规则:关联规则表示为:R:X→Y,其中且X∩Y=φ,它表示如果项集X在某一事务中出现,必然会导致项集Y也会在同一事务中出现,X称为规则的先决条件,即前项,Y称为规则的结果,即后项;
关联规则的支持度:对于关联规则R:X→Y,规则R的支持度是指数据库D中同时包含项集X和项集Y的交易数与所有交易数之比;
其中,超边em的权重为:
用每一条超边em的所有必要关联规则的置信度的平均值作为该超边的权重;必要关联规则是指特定的规则,其规则表达式的右边仅有一个数据项的集合,且该规则包括了超边ej所关联的所有数据项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510249247.1A CN104809242B (zh) | 2015-05-15 | 2015-05-15 | 一种基于分布式结构的大数据聚类方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510249247.1A CN104809242B (zh) | 2015-05-15 | 2015-05-15 | 一种基于分布式结构的大数据聚类方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104809242A CN104809242A (zh) | 2015-07-29 |
CN104809242B true CN104809242B (zh) | 2018-03-02 |
Family
ID=53694064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510249247.1A Active CN104809242B (zh) | 2015-05-15 | 2015-05-15 | 一种基于分布式结构的大数据聚类方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104809242B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809244B (zh) * | 2015-05-15 | 2018-02-09 | 成都睿峰科技有限公司 | 一种大数据环境下的数据挖掘方法和装置 |
CN104820708B (zh) * | 2015-05-15 | 2018-02-09 | 成都睿峰科技有限公司 | 一种基于云计算平台的大数据聚类方法和装置 |
CN106383738B (zh) * | 2016-09-30 | 2019-10-11 | 北京百度网讯科技有限公司 | 任务处理方法和分布式计算框架 |
CN106446255A (zh) * | 2016-10-18 | 2017-02-22 | 安徽天达网络科技有限公司 | 一种基于云服务器的数据处理方法 |
CN106874367A (zh) * | 2016-12-30 | 2017-06-20 | 江苏号百信息服务有限公司 | 一种基于舆情平台的抽样分布式聚类方法 |
CN107273207A (zh) * | 2017-05-25 | 2017-10-20 | 天津大学 | 一种基于超图划分算法的相关数据存储方法 |
CN107229600B (zh) * | 2017-05-31 | 2020-06-23 | 北京邮电大学 | 一种基于大数据的并行方差分析方法及装置 |
CN107463661B (zh) * | 2017-07-31 | 2021-04-27 | 绿湾网络科技有限公司 | 数据的导入方法及装置 |
CN107609105B (zh) * | 2017-09-12 | 2020-07-28 | 电子科技大学 | 大数据加速结构的构建方法 |
CN108268611B (zh) * | 2017-12-29 | 2021-03-26 | 天津南大通用数据技术股份有限公司 | 一种基于MapReduce的k-means文本聚类的方法及装置 |
CN109101570A (zh) * | 2018-07-17 | 2018-12-28 | 东南大学 | 一种基于图摘要的图模式挖掘方法 |
CN111444544B (zh) * | 2020-06-12 | 2020-09-11 | 支付宝(杭州)信息技术有限公司 | 针对多方的隐私数据进行聚类的方法和装置 |
CN112183001B (zh) * | 2020-10-10 | 2023-07-04 | 上海思尔芯技术股份有限公司 | 一种基于超图的集成电路的多级聚类方法 |
CN113255278B (zh) * | 2021-05-17 | 2022-07-15 | 福州大学 | 基于时序驱动的集成电路聚类方法 |
CN113344526B (zh) * | 2021-06-04 | 2023-04-07 | 浙江大学 | 服务网络环境下的参考服务流程及其构建方法和应用方法 |
CN114897457A (zh) * | 2022-03-30 | 2022-08-12 | 阿里巴巴(中国)有限公司 | 基于订单的仓库信息处理方法、设备和可读介质 |
CN114840560B (zh) * | 2022-04-14 | 2023-02-28 | 深圳市医未医疗科技有限公司 | 非结构化数据转化及存储方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809244A (zh) * | 2015-05-15 | 2015-07-29 | 成都睿峰科技有限公司 | 一种大数据环境下的数据挖掘方法和装置 |
CN104820708A (zh) * | 2015-05-15 | 2015-08-05 | 成都睿峰科技有限公司 | 一种基于云计算平台的大数据聚类方法和装置 |
-
2015
- 2015-05-15 CN CN201510249247.1A patent/CN104809242B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809244A (zh) * | 2015-05-15 | 2015-07-29 | 成都睿峰科技有限公司 | 一种大数据环境下的数据挖掘方法和装置 |
CN104820708A (zh) * | 2015-05-15 | 2015-08-05 | 成都睿峰科技有限公司 | 一种基于云计算平台的大数据聚类方法和装置 |
Non-Patent Citations (5)
Title |
---|
"HGHD:一种基于超图的高维空间数据聚类算法";沙金等;《微电子学与计算机》;20061231;第23卷(第6期);全文 * |
"一种基于超图模式的数据聚类方法";刘丽娜;《石家庄铁道职业技术学院学报》;20051231;第4卷(第4期);摘要、第3-4节 * |
"一种基于超图模式的高维空间数据聚类的方法";张蓉;《计算机工程》;20070731;第28卷(第7期);全文 * |
"基于分布式的大数据集聚类分析";贾俊芳等;《计算机工程与应用》;20081001;第44卷(第28期);摘要、第4节 * |
"基于超图聚类的用户行为模式挖掘";杨明花等;《广西师范大学学报(自然科学版)》;20061231;第24卷(第6期);第3节 * |
Also Published As
Publication number | Publication date |
---|---|
CN104809242A (zh) | 2015-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104809242B (zh) | 一种基于分布式结构的大数据聚类方法和装置 | |
CN104820708B (zh) | 一种基于云计算平台的大数据聚类方法和装置 | |
CN104809244B (zh) | 一种大数据环境下的数据挖掘方法和装置 | |
Bai et al. | An efficient algorithm for distributed density-based outlier detection on big data | |
CN109684330A (zh) | 用户画像库构建方法、装置、计算机设备及存储介质 | |
CN106547809A (zh) | 将复合关系表示在图数据库中 | |
CN104794151A (zh) | 一种基于协同标绘技术的空间知识服务系统建设方法 | |
Zhang et al. | Optimization and improvement of data mining algorithm based on efficient incremental kernel fuzzy clustering for large data | |
Desarkar et al. | Big-data analytics, machine learning algorithms and scalable/parallel/distributed algorithms | |
Wienhofen et al. | Empirical big data research: a systematic literature mapping | |
Satish et al. | Big data processing with harnessing hadoop-MapReduce for optimizing analytical workloads | |
Madbouly et al. | Clustering big data based on distributed fuzzy K-medoids: An application to geospatial informatics | |
Cai et al. | Research on multi-source POI data fusion based on ontology and clustering algorithms | |
Jeyakumar et al. | Case studies in amalgamation of deep learning and big data | |
Lokugam Hewage et al. | Scalability and Performance of LiDAR Point Cloud Data Management Systems: A State-of-the-Art Review | |
Nair et al. | Clustering with apache hadoop | |
Hai et al. | A performance comparison of big data processing platform based on parallel clustering algorithms | |
Hassan et al. | Big data clustering techniques: Recent advances and survey | |
Alhaj Ali et al. | Distributed data mining systems: techniques, approaches and algorithms | |
Venkat et al. | Clustering of huge data with fuzzy c-means and applying gravitational search algorithm for optimization | |
Vanka et al. | Big data technologies: a case study | |
Ibrahim Hayatu et al. | Big Data Clustering Techniques: Recent Advances and Survey | |
Kamaruddin et al. | Parallel evolving clustering method for big data analytics using apache spark: applications to banking and physics | |
Hanmanthu et al. | Parallel optimal grid-clustering algorithm exploration on mapreduce framework | |
Pratap | Analysis of big data technology and its challenges |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190612 Address after: 362000 Baozhou Road, Fengze District, Quanzhou City, Fujian Province, 299 (Office Building of the former Municipal Administrative Law Enforcement Bureau) Patentee after: Pinshan Electronic Commerce Co., Ltd. Address before: 610041 East Building, Ladfans Building, 1480 Tianfu Avenue North Section, Chengdu High-tech Zone, Sichuan Province, 10 stories Patentee before: Chengdu Rui Feng Science and Technology Ltd. |
|
TR01 | Transfer of patent right |