CN104615722B - 基于密度搜索与快速划分的混合数据聚类方法 - Google Patents
基于密度搜索与快速划分的混合数据聚类方法 Download PDFInfo
- Publication number
- CN104615722B CN104615722B CN201510063814.4A CN201510063814A CN104615722B CN 104615722 B CN104615722 B CN 104615722B CN 201510063814 A CN201510063814 A CN 201510063814A CN 104615722 B CN104615722 B CN 104615722B
- Authority
- CN
- China
- Prior art keywords
- data
- mixed
- distance
- mixed data
- attribute
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004458 analytical method Methods 0.000 claims abstract description 5
- 239000002245 particle Substances 0.000 claims description 53
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000005457 optimization Methods 0.000 claims description 6
- 238000000611 regression analysis Methods 0.000 claims description 6
- 238000012886 linear function Methods 0.000 claims description 4
- 238000012417 linear regression Methods 0.000 claims description 3
- 238000005192 partition Methods 0.000 claims 2
- 230000011218 segmentation Effects 0.000 claims 1
- 241001269238 Data Species 0.000 abstract 1
- 238000000205 computational method Methods 0.000 abstract 1
- 239000012141 concentrate Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000000638 solvent extraction Methods 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 235000010469 Glycine max Nutrition 0.000 description 2
- 244000068988 Glycine max Species 0.000 description 2
- 230000001154 acute effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 241001508802 Diaporthe Species 0.000 description 1
- 244000140747 Iris setosa Species 0.000 description 1
- 235000000827 Iris setosa Nutrition 0.000 description 1
- 241001136653 Iris virginica Species 0.000 description 1
- 241000233614 Phytophthora Species 0.000 description 1
- 241001361634 Rhizoctonia Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 239000003610 charcoal Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于密度搜索与快速划分的混合数据聚类方法,其特征在于,包括如下步骤:确定混合属性数据集中混合数据的占优类型;根据混合数据的占优类型计算混合数据集中任意两个混合数据之间的距离;根据任任意两个混合数据之间的距离,基于密度搜索算法在预设的聚类半径取值范围内对聚类半径进行优化,并以最优的聚类半径对应的对应聚类结果作为最终聚类结果。本发明对混合数据进行占优分析方法确定混合数据的专有类型,针对不同的混合数据采用不同距离计算方法,能有效发挥属性占优的数据维度信息在整体数据信息的重要性并准确计算数据的距离;且采用基于密度搜索与快速划分的数据聚类算法,快速快、准确率高。
Description
技术领域
本发明涉及数据聚类技术领域,具体涉及一种基于密度搜索与快速划分的混合数据聚类方法。
背景技术
随着通信技术和硬件设备的不断发展,数据挖掘技术在实时监控***、气象卫星遥感、网络通信量监测等方面有着巨大应用前景,针对数据快速连续到达、持续增长的特点,传统聚类算法无法适用于数据对象,数据对聚类算法提出了如下新的要求:1.对自然簇个数无须假设;2.能够发现任意形状的簇;3.具有处理离群点的能力。而且面对现实中的大部分数据都是混合属性数据,其中既包含了数值属性数据和分类属性数据,如何有效的从这种混合属性的数据中挖掘出具有价值的信息已显得尤为重要。
近年来数据聚类研究工作广泛展开,但现有的数据聚类算法大部分局限于处理只具有数值属性的数据,另外有少量算法局限于处理只有分类属性的数据,针对混合属性数据的算法较少。Aggarwal等人提出了进化数据聚类框架CluStream,该算法首次采用了两阶段处理框架:在线的微聚类和离线的宏聚类。在线阶段算法提出了微簇结构,不断对到达的数据点进行维护,生成概要信息。离线阶段算法负责相应的用户请求,根据概要数据生成最终聚类结果。但是CluStream算法也存在一些缺点:首先该算法不能处理任意形状的簇;其次对于噪声的适应性较差;最后需要人为指定聚类微簇的数量,严重影响了原始数据聚类的形状分布。曹峰等人提出了Den-Stream算法,该算法沿用了CluStream的两阶段处理框架,并将微簇分为潜在核心微簇和孤立点微簇结构,能够支持任意形状的聚类。但是由于Den-Stream算法采用全局一致的绝对密度作为参数,所以使得聚类结果对参数的选择非常敏感。针对Den-Stream算法问题,Muhammed Z R等人提出了HECES算法,采用椭球型聚类集群,能够处理变密度数据。张建朋等人提出了StrDenAP算法,该算法在StrAP算法的基础上,借鉴了CluStream的两阶段框架,采用近邻传播算法,能够取得较好的聚类效果。
鉴于现实中大部分数据都是混合属性数据这一问题,研究学者也提出了一些直接处理混合属性数据的算法。杨春宇等人提出了HCluSteam算法,该算法在CluStream的基础上,对混合属性的分类属性部分,提出了微聚类的直方图表示方式,并利用泊松过程对样本到达的时间进行建模。该算法存在的问题是是不能够处理任意形状的簇。在HCluStrea的基础上提出的MCStream算法,使用两阶段框架,在在线微聚类中使用面向维度的距离来度量对象之间的距离,宏聚类中使用改进的M-DBSCAN密度聚类算法进行最终聚类。该算法能够处理任意形状的簇,但存在的问题是面向维度的距离的参数是用户给出,且需要的参数较多。
发明内容
针对现有聚类在处理混合属性数据中出现的几个问题:(1)无法直接有效处理混合数据类型数据距离计算方法;(2)无法确定距离计算方法是否合理,没有相应的评价方法;(3)传统基于密度的数据计算复杂度高,准确率不稳定。本发明提供了一种基于密度搜索与快速划分的混合数据聚类方法。
一种基于密度搜索与快速划分的混合数据聚类方法,包括如下步骤:
S1:确定混合属性数据集中混合数据的占优类型,具体基于如下原则确认:
若则认为混合属性数据集中的混合数据为数值占优型数据;
若则认为混合属性数据集中的混合数据为分类占优型数据;
否则(即或),则认为混合属性数据集中的混合数据为均衡型混合属性数据。
S2:根据混合数据的占优类型计算混合数据集中任意两个混合数据之间的距离。
当混合属性数据集D中的混合数据为数值占优型数据时,通过如下方法计算任意两个混合数据之间的距离:
(a1)计算任意两个混合数据Xi,Xj中数值属性部分的距离d(Xi,Xj)n为:
采用二元化的方法计算任意两个混合数据Xi,Xj中的分类属性部分在每一维上距离,如混合数据Xi,Xj在第p维上的距离为:
则混合数据Xi,Xj中分类属性部分的距离d(Xi,Xj)c为:
(a2)利用数值属性部分的距离和分类属性部分的距离计算混合数据Xi,Xj的距离d(Xi,Xj):
d(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c。
当混合属性数据集D中的混合数据为分类占优型数据时,通过如下方法计算任意两个混合数据之间的距离:
(b1)对任意一个混合型数据的数值属性部分的每一维均进行标准化处理得到各数值属性的标准值,其中混合型数据Xi的第p个数值属性的标准值为:
其中,为混合数据Xi的第p个数值属性的取值,为所有混合数据中该维的最大值,为所有混合数据中该维的最小值,为混合数据i中该维取值;
则数值属性部分的距离为:
任意两个对象Xi,Xj的分类属性部分每一维的距离则采用二元化的方法,即Xi,Xj的第p维之间的距离为:
则分类属性部分的距离为:
(b2)利用所述的数值属性部分的距离和分类属性部分的距离计算D(Xi,Xj):
D(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c。
大部分聚类算法是将距离度量独立看待每个属性,在计算距离时,处理每个属性比较同一个属性的取值关系,实际上对于一个样本集(混合属性数据集),每个属性是有关联的,这种关联体现了样本集所蕴含的内在类属结构。因此,作为优选,当混合属性数据集D中的混合数据为均衡型混合属性数据时,通过如下公式计算任意两个混合数据之间的距离:
其中,dp(Xi,Xj)表示混合型数据Xi和Xj在第p维上的距离,根据如下公式计算:
dpq(Xi,Xj)表示Xi和Xj在第p维上相对于第q维的距离(实际上为条件概率),根据如下公式计算:
其中,为混合数据Xi在第P维上的取值,为混合数据Xj在P维上的取值,以混合数据在第p维上的取值为时第q维上所有可能取值的组成的集合作为全集,Z是该全集的子集,Zc为Z的补集,表示当混合数据X1在p维上的取值是时,在q维上的取值属于z的概率,表示当混合数据X1在p维上的取值是时,在q维上的取值属于Zc的概率。
由于和的取值都在[0,1]范围内,因此进一步修正的计算为:
使dpq(Xi,Xj)的取值在[0,1]范围内。
通过修正把属性p的两个值Xi和Xj之间的距离表示为这两个值和另一个属性q的属性值集的共现概率。当出现多个分类属性时,属性值和相对于这些属性的距离可以用相同的方法累加计算得到。当出现数值属性时,通过离散化数值属性,属性值和相对于数值属性的距离可以用类似的方法计算得到。
本发明中根据混合数据的占优类型,分别采用不同的方法计算任意两个混合数据之间的距离,降低非占优属性对数据对象整体相似性的影响,而均衡型混合属性数据需要综合考虑每一维属性的重要性。
S3:根据任意两个混合数据之间的距离,基于密度搜索算法在预设的聚类半径取值范围内对聚类半径进行优化,并以最优的聚类半径对应聚类结果作为最终聚类结果,具体包括如下步骤:
S3-1:设定粒子群算法的粒子数、最大迭代次数,并根据预设的聚类半径对粒子群进行初始化以对各个粒子赋予速度和位置;
S3-2:在当前密度半径下计算各个混合数据的密度,并根据所有混合数据的密度以及任意两个混合数据的距离确定该数据混合数据的距离;
本发明中根据下公式计算第i个混合数据的密度ρi:
其中,dc为当前密度半径。
本发明中根据如下公式计算第i个混合数据的距离δi:
其中,ρi为第i个混合数据的密度,ρj第j个混合数据的密度。
S3-3:对所有混合数据的密度和距离进行拟合得到当前密度半径下的聚类中心集;
求得所有数据的密度δ和距离ρ的分布,并用线性函数δ=f(ρ)拟合关系。
作为优选,本发明中利用线性拟合得到δ和ρ的函数关系δ=f(ρ),根据回归分析中逆函数y=b0+b1/x来拟合此函数关系,令则y=y0+b1×x′,则可以利用线性回归模型得到拟合δ=f(ρ)曲线;
利用F分布和t分布计算得到δ=f(ρ)的奇异混合数据个数及奇异混合数据集合,其中奇异混合数据集合即是聚类的簇中心集,奇异混合数据个数是聚类的簇个数。
采用回归分析的F分布和t分布计算拟合函数的各残差分布特征,并求得个奇异混合数据集合(c1,c2,…,ck),此奇异混合数据集合即聚类中心,其中k是聚类簇的总数,k的取值取决于混合属性数据集。
S3-4:根据聚类中心,基于距离对所述的混合属性数据集进行快速划分得到若干个簇,簇的个数与聚类中心集中聚类中心的个数相同;
S3-5:根据如下公式计算当前快速划分结果的适应度Fitness:
其中,k为聚类中心的总数,nk表示第k个簇中混合数据的总数,i为混合数据的标号,cl为第l个聚类中心,d(xi,cl)表示混合数据xi到聚类中心cl的距离;
S3-6:针对任意一个粒子,以该粒子的当前的适应度为该粒子的最优个体极值,当前的位置为最优位置,并根据各个粒子的个体极值确定全局最优极值和全局最优位置,更新迭代次数iter=iter+1;
S3-7:当迭代次数iter<=Maxiter时根据如下公式更新各个粒子位置和速度,然后转向步骤S3-3;否则转向步骤S3-8,其中Maxiter为最大迭代次数,第m个离子的粒子位置和速度根据如下公式更新:
vm(t+1)=w*vm(t)+α1*β1*(pbestd-dcm(t))+α2*β2*gbestd-dcm(t)),
dcm(t+1)=dcm(t)+vm(t+1),
其中,vm(t)表示第m个粒子在t代(即第t次迭代)的飞行速度,vm(t+1)表示第m个粒子在t+1代的速度,w是惯性权重,α1和α2是常量系数,pbestd是第m个粒子第t次进化迭代的得到的最优位置,gbestd是第t次进化迭代得到的全局最优位置,β1和β2是[0,1]的随机数,dcm(t)表示第m个粒子在第t代的位置,dcm(t+1)表示粒子在t+1代的位置;
S3-8:输出全局极值和全局极值位置,以此时的输出的全局极值作为当前最优密度半径,并以最优密度半径对应聚类结果作为最终聚类结果。
本发明针对混合数据包含多种数据类型,设计一种新的数据距离度量方法满足数值型数据和分类型数据的数据计算,最后实现基于密度搜索与快速划分的数据聚类方法PSO-PD_HDC(基于密度搜索与快速划分的数据聚类方法)完成数据高效聚类,且将混合数据聚类转化为对最优密度半径的优化问题,在寻优过程中自动完成聚类,大大提高了聚类的速度和准确。
本发明方法设计分类占优分析方法确定混合属性数据的特征,设定三种混合属性数据距离计算方法,能有效发挥属性占优的数据维度信息在整体数据信息的重要性并准确计算数据的距离;采用基于密度搜索与快速划分的数据聚类算法,具有快速准确将数据聚类的特点。混合型数据在实际应用中广泛存在,对其聚类是进行进一步数据分析和知识挖掘的关键,因此具有研究和应用价值。
附图说明
图1为基于密度搜索与快速划分的数据聚类算法流程图;
图2为确定混合属性数据集D中混合数据的占优类型的流程图。
具体实施方式
下面将结合附图和具体实施例对本发明进行详细说明。
实施例1
本实施例以市场营销的“catalog marketing”(目录市场)研究对象,需要进行聚类的混合数据为客户信息,即以所有客户信息组成的集合作为待聚类的数据集,首先按照客户的各种信息进行分析,每一条客户信息包年龄、收入、上网时长等数值属性信息,以及性别、星座、消费品种等分类属性信息,采用本实施例的一种基于密度搜索与快速划分的混合数据聚类方法对所有客户信息进行聚类,然后根据聚类结果对不同类别的用户展开特定产品推荐、定期发布同类人员购买物品等市场营销策略。
本实施例的基于密度搜索与快速划分的混合型数据聚类方法,如图1所示,包括:
S1:确定混合属性数据集D(即数据集D)中混合数据的占优类型;
本实施例中如图2所示,根据m与d的比值和n与d的比值,其中,d为混合数据的属性维度(本实施中为客户信息的维度),m为混合数据中数值属性的维度,n为分类属性的维度。
本实施例中按照如下方法确定混合数据的占优类型:
若则认为混合属性数据集D中的混合数据为数值占优型数据;
若则认为混合属性数据集D中的混合数据为分类占优型数据;
否则(即或),则认为混合属性数据集D中的混合数据为均衡型混合属性数据。
S2:根据混合数据的占优类型计算混合数据集中任意两个混合数据之间的距离;
(a)针对数值占优型数据,通过如下步骤计算任意两个混合数据之间的距离:
(a1)计算任意两个混合数据Xi,Xj中数值属性部分的距离d(Xi,Xj)n为:
采用二元化的方法计算任意两个混合数据Xi,Xj中的分类属性部分在每一维上距离,如混合数据Xi,Xj在第p维上的距离为:
则混合数据Xi,Xj中分类属性部分的距离d(Xi,Xj)c为:
(a2)利用数值属性部分的距离和分类属性部分的距离计算混合数据Xi,Xj的距离d(Xi,Xj):
d(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c。
(b)针对分类占优型数据,通过如下步骤计算任意两个混合数据之间的距离:
(b1)对任意一个混合型数据的数值属性部分的每一维均进行标准化处理得到各数值属性的标准值,其中混合型数据Xi的第p个数值属性的标准值为:
其中,为混合数据Xi的第p个数值属性的取值,为所有混合数据中该维的最大值,为所有混合数据中该维的最小值,为混合数据i中该维取值;
则数值属性部分的距离为:
任意两个对象Xi,Xj的分类属性部分每一维的距离则采用二元化的方法,即Xi,Xj的第p维之间的距离为:
则分类属性部分的距离为:
(b2)利用所述的数值属性部分的距离和分类属性部分的距离计算D(Xi,Xj):
D(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c。
(c)针对均衡型混合属性数据,计算任意两个混合数据的距离:
其中,dp(Xi,Xj)表示混合型数据Xi和Xj在第p维上的距离,根据如下公式计算:
dpq(Xi,Xj)表示Xi和Xj在第p维上相对于第q维的距离(实际上为条件概率),根据如下公式计算:
其中,为混合数据Xi在第P维上的取值,为混合数据Xj在P维上的取值,那么可求得混合数据在第p维上的取值为时第q维上所有可能取值的混合数据组成的集合,z是该集合的子集。
计算方法举例:假设混合属性数据集D中包含五个数据(即混合数据),即D={X1,X2,X3,X4,X5},每个数据的维度d=2:
当在混合属性数据集D各个混合数据在第p维(第1维)和第q维(第2维)上取值如表1所示,即其中的取值是A1,在5个数据中只有混合数据X1的第p维取值是A1,那么当p维取值为A1时所有混合数据在第q维上所有可能的取值集合是{B1},z是{B1}的子集,即z可能是或者是{B1}。表示当混合数据X1在p维上的取值是A1时候,在q维上的取值属于z的概率。
同理可以计算表示混合数据X2在p维上的取值是A2时,在q维上的取值属于z的补集zc的概率,即选取合适的z使得两个概率之和最大,并将最大概率之和作为X1和X2在p维上相对于q维的距离dpq(Xi,Xj)。
当在混合属性数据集D各个混合数据在第p维(第1维)和第q维(第2维)上取值如表2所示,即其中的取值是A1,在5个数据中除了X1的p维取值是A1,还有X4的p维取值也是A1,那么当p维取值为A1时所有数据在q维上所有可能的取值集合是{B1,B4},z是{B1,B4}的子集,即z可能是或者{B1}或者{B4}或者{B1,B4},表示当混合数据X1在p维上的取值是A1时,在q维上的取值属于z的概率,且当时,当Z={B1}时,当Z={B4}时,当Z={B1,B4}时,
同理可以计算表示混合数据X2在p维上的取值是A2时,在q维上的取值是z的补集zc的概率,即选取合适的z使得两个概率之和最大,并将最大概率之和作为X1和X2在p维上相对于q维的距离dpq(Xi,Xj)。
表1
混合数据 | 第p维取值 | 第q维取值 |
X1 | A1 | B1 |
X2 | A2 | B2 |
X3 | A3 | B3 |
X4 | A4 | B4 |
X5 | A5 | B5 |
表2
混合数据 | 第p维取值 | 第q维取值 |
X1 | A1 | B1 |
X2 | A2 | B2 |
X3 | A3 | B3 |
X4 | A1 | B4 |
X5 | A5 | B5 |
S3:基于粒子群优化计算优化聚类半径dc,利用基于占有分析的混合属性数据距离计算方法,获得所有混合数据的密度ρ和距离δ值的函数关系,利用线性函数拟合ρ和δ函数关系,通过F分布和t分布计算最优聚类中心集(c1,c2,…,ck),并通过快速划分完成数据集聚类。
S3-1:在预设的取值范围内,基于粒子群法确定最优密度半径dc;
S3-11:确定聚类半径dc的取值范围[dc_low,dc_high]、设定粒子速度上下限,并初始化粒子群P,具体包括设定粒子数、最大迭代次数Maxiter和初始飞行速度。
利用随机函数rand()在范围[dc_low,dc_high]内随机生成A(本实施例中A=10)个粒子,并初始化当前进化代数iter=0。
假设混合属性数据集D包含S个混合数据,即D={X1,X2,…Xi…,Xs},那么聚类半径dc的取值范围dc,low=S*1%,dc,high=S*20%。
本实施例中设定最大迭代次数Maxiter=5。
S3-12:根据当前的各个粒子dc值,利用基于密度搜索的聚类中心确定方法求得相应的聚类中心集(c1,c2,…,ck),具体包括如下步骤:
(a)在当前密度半径dc下计算各个混合数据(即对象)的密度ρ值,并根据所有混合数据的密度ρ值以及任意两个混合数据的距离确定该数据混合数据的距离δ。
本实施例中根据如下公式计算第i个混合数据的密度ρi:
其中,dc为当前密度半径。
根据如下公式计算第i个混合数据的距离δi:
其中,ρi为第i个混合数据的密度,ρj第j个混合数据的密度。
(b)对所有混合数据的密度ρ和距离δ进行拟合得到一个聚类中心集(通常包括多个中心,具体个数根据取决于混合属性数据集D);
求得所有数据的密度δ和距离ρ的分布,并用线性函数δ=f(ρ)拟合关系。
作为优选,本发明中利用线性拟合得到δ和ρ的函数关系δ=f(ρ),根据回归分析中逆函数y=b0+b1/x来拟合此函数关系,令则y=y0+b1×x′,则可以利用线性回归模型得到拟合δ=f(ρ)曲线;
利用F分布和t分布计算得到δ=f(ρ)的奇异混合数据个数及奇异混合数据集合,其中奇异混合数据集合即是聚类的簇中心集,奇异混合数据个数是聚类的簇个数。
采用回归分析的F分布和t分布计算拟合函数的各残差分布特征,并求得个奇异混合数据集合(c1,c2,…,ck),此奇异混合数据集合即聚类中心,其中k是聚类簇的总数,k的取值取决于混合属性数据集。
(c)根据聚类中心,基于距离对混合属性数据集D中的所有数据进行划分,(本实施例中采用距离最近原则),将所有混合属性数据集D中的混合数据做聚类划分。
(d)根据簇内距离之和作为适应度函数Fitness,求得每个粒子的对应适应度函数值:
其中,k为聚类中心的总数,nk表示第k个簇中混合数据的总数,i为混合数据的标号,cl为第l个聚类中心,d(xi,cl)表示混合数据xi到聚类中心cl的距离;
(e)以该粒子的当前的适应度值为该粒子的最优个体极值pbestf,当前的位置为最优位置pbestd,并根据各个粒子的个体极值确定全局最优极值gbestf和全局最优位置gbestd,更新进化代数(即迭代次数)iter=iter+1。
(f)当进化代数iter<=Maxiter,更新各个粒子位置和速度(即位置信息和速度信息),然后转向步骤(b);否则转向步骤(g),
其中,第m个离子的粒子位置和速度根据如下公式更新,
vm(t+1)=w*vm(t)+α1*β1*(pbestd-dcm(t))+α2*β2*gbestd-dcm(t)),
dcm(t+1)=dcm(t)+vm(t+1),
其中,vm(t)表示第m个粒子在t代(即第t次迭代)的飞行速度,vm(t+1)表示第m个粒子在t+1代的飞行速度(即速度),w是惯性权重(本实施例中w=0.9),α1和α2是常量系数(本实施例中α1=α2=2),pbestd是第m个粒子第t次进化迭代的得到的最优位置,gbestd是第t次进化迭代得到的全局最优位置,β1和β2是[0,1]的随机数,dcm(t)表示第m个粒子在第t代的位置(指在t代的dc值),dcm(t+1)表示粒子在t+1代的位置(这里是指在t+1代的dc值)。
(g)输出全局极值gbestf和全局极值位置gbestd,以此时的输出的全局极值gbestd作为当前最优的dc,并以最优的dc对应聚类结果作为最终聚类结果。
实施例2
本实施例的聚类方法基于如下实验平台完成:该实验平台包括PC机,操作***为Windows 7,集成开发环境为Microsoft Visual C++2010。硬件条件为:CPU为Intel CoreI52.6GHz,内存为4GB。
为了验证新算法PSO-PD_HDC(即基于密度搜索和快速划分的混合属性数据聚类算法)的性能,使用五个真实的数据集,这五个数据集均来自UCI及其学习库(MachineLearning Repository),具体信息如表3所示。
表3
分别利用本实施例的聚类方法(PSO‐PD_HDC聚类)、IWKM算法、SBAC算法、K‐prototypes算法和KL‐FCM‐GM算法对以上各个数据集进行聚类。
其中,试验中参数除特殊说明外,粒子群算法PSO中学习因子设定为α1=α2=1.8,惯性权重w=0.9,粒子数A=10,最大迭代次数iter=5。
本实施例中以由Huang和Ng提出的聚类准确率作为聚类效果的评价标准,定义聚类准确率r的定义如下:
其中ai表示最终被正确分类的样本数目,k表示聚类数,n表示混合属性数据集中的样本个数(即混合数据的个数)。聚类准确率越高,聚类方法的聚类效果越好。当r的值为1时,此时算法在数据集上的聚类结果是完全正确的。
Iris数据集包含150个数据对象(即混合数据),每个数据对象由4个数值属性描述(即Iris数据集中的数据为数值占优型数据)。Iris数据集有三个类属性:Iris-Setosa,Iris-Versicolour和Iris-Virginica。在所有的数据集中,类属性不参与聚类过程,只用来评估算法的聚类结果。
采用PSO-PD_HDC算法、IWKM算法、SBAC算法、K-prototypes算法和KL-FCM-GM算法对Iris数据集进行聚类得到的聚类结果的准确率如表4所示。
表4
算法 | 聚类准确率(r) |
K-prototypes | 0.819 |
SBAC | 0.426 |
KL-FCM-GM | 0.335(α=1.1) |
IWKM | 0.822 |
PSO-PD_HDC | 0.900 |
从表4中可以看出,算法PSO-PD_HDC、K-prototypes、SBAC、IWKM的聚类准确率分别为0.90、0.819、0.426和0.822;而KL-FCM-GM在模糊系数为1.1时聚类准确率最高为0.335。表3中的聚类结果表明,PSO-PD_HDC算法的聚类准确率比K-prototypes、SBAC、KL-FCM-GM和IWKM算法分别高出了8.1%、47.4%、56.5%和7.8%。因此PSO_PD_HDC算法的性能更好。
Soybean数据集是分类属性数据集,由47个数据对象构成,每个数据对象由35个分类属性描述(即Soybean数据集中的数据为分类占优型数据)。Soybean数据集有四个类属性值:Diaporthe Stem Canker、Charcoal Rot、Rhizoctonia Root Rot和Phytophthora Rot。
采用PSO-PD_HDC算法、IWKM算法、SBAC算法、K-prototypes算法和KL-FCM-GM算法对Soybean数据集进行聚类得到的聚类结果的准确率如表5所示。
表5
算法 | 聚类准确率(r) |
K-prototypes | 0.856 |
SBAC | 0.617 |
KL-FCM-GM | 0.903(α=1.8) |
IWKM | 0.908 |
PSO-PD_HDC | 0.957 |
从表5中可以看出,算法PSO-PD_HDC、K-prototypes、SBAC、IWKM的聚类准确率分别为0.957、0.856、0.617和0.908;而KL-FCM-GM在模糊系数为1.8时聚类准确率最高为0.903。表5中的聚类结果表明,PSO-PD_HDC的聚类准确率比K-prototypes、SBAC、KL-FCM-GM和IWKM算法分别高出了10.3%、34%、5.4%和3.9%。因此PSO-PD_HDC算法的性能更好。
Zoo数据集包含101个数据对象,每个数据对象由一个数值属性和15个分类属性描述。Zoo数据集有7个类属性值。
PSO-PD_HDC算法、WFK-prototypes算法、EKP算法、SBAC算法、K-prototypes算法和KL-FCM-GM算法的聚类准确率在表6中列出。
表6
算法 | 聚类准确率(r) |
K-prototypes | 0.806 |
SBAC | 0.426 |
KL-FCM-GM | 0.864(α=1.3) |
EKP | 0.629 |
WFK-prototypes | 0.908(α=2.1) |
PSO-PD_HDC | 0.891 |
从表6中可以看出,算法PSO-PD_HDC、K-prototypes、SBAC、EKP的聚类准确率分别为0.891、0.806、0.426和0.629;而KL-FCM-GM在模糊系数为1.3时聚类准确率最高为0.864。WFK-prototypes在模糊系数为2.1时聚类准确率最高为0.908。表5中的聚类结果表明,PSO-PD_HDC算法的聚类准确率比K-prototypes、SBAC、KL-FCM-GM和EKP算法分别高出了8.5%、46.5%、2.7%和26.2%,比WFK-prototypes算法低了1.7%。因此PSO-PD_HDC算法的性能相对较好。
Acute Inflammatins数据集包含120个数据对象,每个数据对象由1个数值属性和6个分类属性描述。Acute数据集有2个类属性值。
PSO-PD_HDC算法、WFK-prototypes算法、EKP算法、SBAC算法、K-prototypes算法和KL-FCM-GM算法的聚类准确率在表7中列出。
表7
算法 | 聚类准确率(r) |
K-prototypes | 0.610 |
SBAC | 0.508 |
KL-FCM-GM | 0.682(α=1.1) |
EKP | 0.508 |
WFK-prototypes | 0.710(α=1.1) |
PSO-PD_HDC | 0.917 |
从表7中可以看出,算法PSO-PD_HDC、K-prototypes、SBAC、EKP的聚类准确率分别为0.917、0.610、0.508和0.508;而KL-FCM-GM在模糊系数为1.1时聚类准确率最高为0.682。WFK-prototypes在模糊系数为1.1时聚类准确率最高为0.710。表7中的聚类结果表明,PSO-PD_HDC算法的聚类准确率比K-prototypes、SBAC、KL-FCM-GM、EKP和WFK-prototypes算法分别高出了30.7%、40.9%、23.5%、40.9%和20.7%。因此PSO-PD_HDC算法的性能更好。
Statlog Heart数据集包含270个数据对象,每个数据对象由5个数值属性和9个分类属性描述。Statlog Heart有2个类属性值(即Statlog Heart数据集中的数据为均衡型混合属性数据)。
PSO-PD_HDC算法、WFK-prototypes算法、EKP算法、SBAC算法、K-prototypes算法和KL-FCM-GM算法的聚类准确率在表8中列出。
表8
算法 | 聚类准确率(r) |
K-prototypes | 0.577 |
SBAC | 0.752 |
KL-FCM-GM | 0.758(α=1.7) |
EKP | 0.545 |
WFK-prototypes | 0.835(α=1.3) |
PSO-PD_HDC | 0.848 |
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于密度搜索与快速划分的混合数据聚类方法,用于对客户信息进行聚类,然后根据聚类结果对不同类别的用户展开特定产品推荐,其特征在于,包括如下步骤:
S1:确定混合属性数据集D中混合数据的占优类型,混合数据为客户信息:
若则认为混合属性数据集D中的混合数据为数值占优型数据;
若则认为混合属性数据集D中的混合数据为分类占优型数据;
否则,则认为混合属性数据集D中的混合数据为均衡型混合属性数据;
其中,d为混合数据的维度,m为混合数据中数值属性的维度,n为分类属性的维度;
S2:根据混合数据的占优类型计算混合属性数据集D中任意两个混合数据之间的距离:
(a)针对数值占优型数据,通过如下步骤计算任意两个混合数据之间的距离:
(a1)计算任意两个混合数据Xi,Xj中数值属性部分的距离d(Xi,Xj)n为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>n</mi>
</msub>
<mo>=</mo>
<msqrt>
<mrow>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>m</mi>
</msubsup>
<msup>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
<mo>,</mo>
</mrow>
采用二元化的方法计算任意两个混合数据Xi,Xj中的分类属性部分在每一维上距离,如混合数据Xi,Xj在第p维上的距离为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>,</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mi>c</mi>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>=</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>&NotEqual;</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
</mrow>
则混合数据Xi,Xj中分类属性部分的距离d(Xi,Xj)c为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>c</mi>
</msub>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</msubsup>
<mi>d</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>,</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
(a2)利用数值属性部分的距离和分类属性部分的距离计算混合数据Xi,Xj的距离d(Xi,Xj):
d(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c;
(b)针对分类占优型数据,通过如下步骤计算任意两个混合数据之间的距离:
(b1)对任意一个混合数据的数值属性部分的每一维均进行标准化处理得到各数值属性的标准值,其中混合数据Xi的第p个数值属性的标准值为:
<mrow>
<mi>V</mi>
<msub>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mi>n</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>X</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
<mi>p</mi>
</msubsup>
</mrow>
<mrow>
<msubsup>
<mi>X</mi>
<mi>max</mi>
<mi>p</mi>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>X</mi>
<mrow>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
</mrow>
<mi>p</mi>
</msubsup>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
其中,为混合数据Xi的第p个数值属性的取值,为所有混合数据中该维的最大值,为所有混合数据中该维的最小值,为混合数据i中该维取值;
则数值属性部分的距离为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>n</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>m</mi>
</munderover>
<mrow>
<mo>(</mo>
<mi>V</mi>
<msub>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mi>n</mi>
</msub>
<mo>-</mo>
<mi>V</mi>
<msub>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mi>n</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
任意两个对象Xi,Xj的分类属性部分每一维的距离则采用二元化的方法,即Xi,Xj的第p维之间的距离为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>,</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mi>c</mi>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>=</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>&NotEqual;</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>,</mo>
</mrow>
则分类属性部分的距离为:
<mrow>
<mi>d</mi>
<msub>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>c</mi>
</msub>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</msubsup>
<mi>d</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>,</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
(b2)利用所述的数值属性部分的距离和分类属性部分的距离计算D(Xi,Xj):
D(Xi,Xj)=d(Xi,Xj)n+d(Xi,Xj)c;
(c)针对均衡型混合属性数据,计算任意两个混合数据的距离:
<mrow>
<mi>D</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>d</mi>
</msubsup>
<msup>
<mi>d</mi>
<mi>p</mi>
</msup>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
其中,dp(Xi,Xj)表示混合数据Xi和Xj在第p维上的距离,根据如下公式计算:
<mrow>
<msup>
<mi>d</mi>
<mi>p</mi>
</msup>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>q</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mi>p</mi>
<mo>&NotEqual;</mo>
<mi>q</mi>
</mrow>
<mi>d</mi>
</msubsup>
<msup>
<mi>d</mi>
<mrow>
<mi>p</mi>
<mi>q</mi>
</mrow>
</msup>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>d</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</mfrac>
<mo>,</mo>
</mrow>
dpq(Xi,Xj)表示Xi和Xj在第p维上相对于第q维的距离,根据如下公式计算:
<mrow>
<msup>
<mi>d</mi>
<mrow>
<mi>p</mi>
<mi>q</mi>
</mrow>
</msup>
<mrow>
<mo>(</mo>
<msub>
<mi>X</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>X</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>m</mi>
<mi>a</mi>
<mi>x</mi>
<mo>{</mo>
<mi>P</mi>
<mrow>
<mo>(</mo>
<mi>Z</mi>
<mo>|</mo>
<msubsup>
<mi>X</mi>
<mi>i</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mi>P</mi>
<mrow>
<mo>(</mo>
<msup>
<mi>Z</mi>
<mi>c</mi>
</msup>
<mo>|</mo>
<msubsup>
<mi>X</mi>
<mi>j</mi>
<mi>p</mi>
</msubsup>
<mo>)</mo>
</mrow>
<mo>}</mo>
<mo>,</mo>
</mrow>
其中,为混合数据Xi在第P维上的取值,为混合数据Xj在P维上的取值,那么可求得混合数据在第p维上的取值为时第q维上所有可能取值的混合数据组成的集合,z是该集合的子集;
S3:基于粒子群优化计算优化聚类半径dc,利用基于占有分析的混合属性数据距离计算方法,获得所有混合数据的密度ρ和距离δ值的函数关系,利用线性函数拟合ρ和δ函数关系,通过F分布和t分布计算最优聚类中心集(c1,c2,…,ck),并通过快速划分完成数据集聚类:
S3-1:确定聚类半径dc的取值范围[dc_low,dc_high]、设定粒子速度上下限,并初始化粒子群P,具体包括设定粒子数、最大迭代次数Maxiter和初始飞行速度;
S3-2:根据当前的各个粒子dc值,利用基于密度搜索的聚类中心确定方法求得相应的聚类中心集(c1,c2,…,ck),具体包括如下步骤:
(a)在当前密度半径dc下计算各个混合数据的密度ρ值,并根据所有混合数据的密度ρ值以及任意两个混合数据的距离确定该数据集混合数据的距离δ;
(b)对所有混合数据的密度ρ和距离δ进行拟合得到一个聚类中心集;
(c)根据聚类中心,基于距离对混合属性数据集D中的所有混合数据进行划分,将所有混合属性数据集D中的混合数据做聚类划分;
(d)根据簇内距离之和作为适应度函数Fitness,求得每个粒子的对应适应度函数值:
<mrow>
<mi>F</mi>
<mi>i</mi>
<mi>t</mi>
<mi>n</mi>
<mi>e</mi>
<mi>s</mi>
<mi>s</mi>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>l</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>k</mi>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>n</mi>
<mi>k</mi>
</msub>
</munderover>
<mi>d</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>c</mi>
<mi>l</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
其中,k为聚类中心的总数,nk表示第k个簇中混合数据的总数,i为混合数据的标号,cl为第l个聚类中心,d(xi,cl)表示混合数据xi到聚类中心cl的距离;
(e)以该粒子的当前的适应度值为该粒子的最优个体极值pbestf,当前的位置为最优位置pbestd,并根据各个粒子的个体极值确定全局最优极值gbestf和全局最优位置gbestd,更新进化代数iter=iter+1;
(f)当进化代数iter<=Maxiter,更新各个粒子位置和速度,然后转向步骤(b);否则转向步骤(g);
其中,第m个离子的粒子位置和速度根据如下公式更新,
vm(t+1)=w*vm(t)+α1*β1*(pbestd-dcm(t))+α2*β2*gbestd-dcm(t)),
dcm(t+1)=dcm(t)+vm(t+1),
其中,vm(t)表示第m个粒子在t代的飞行速度,vm(t+1)表示第m个粒子在t+1代的飞行速度,w是惯性权重,为0.9,α1和α2是常量系数,α1=α2=2,pbestd是第m个粒子第t次进化迭代的得到的最优位置,gbestd是第t次进化迭代得到的全局最优位置,β1和β2是[0,1]的随机数,dcm(t)表示第m个粒子在第t代的位置,dcm(t+1)表示粒子在t+1代的位置;
(g)输出全局极值gbestf和全局极值位置gbestd,以此时的输出的全局极值gbestd作为当前最优的dc,并以最优的dc对应聚类结果作为最终聚类结果。
2.如权利要求1所述的基于密度搜索与快速划分的混合数据聚类方法,其特征在于,步骤(a)中,根据如下公式计算第i个混合数据的密度ρi:
<mrow>
<msub>
<mi>&rho;</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mi>j</mi>
<mo>&NotEqual;</mo>
<mi>i</mi>
</mrow>
<mi>s</mi>
</msubsup>
<mi>g</mi>
<mrow>
<mo>(</mo>
<mi>d</mi>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>x</mi>
<mi>j</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>-</mo>
<msub>
<mi>d</mi>
<mi>c</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
其中,dc为当前密度半径;
根据如下公式计算第i个混合数据的距离δi:
<mrow>
<msub>
<mi>&delta;</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<msub>
<mi>min</mi>
<mrow>
<mi>j</mi>
<mo>:</mo>
<msub>
<mi>&rho;</mi>
<mi>j</mi>
</msub>
<mo>></mo>
<msub>
<mi>&rho;</mi>
<mi>i</mi>
</msub>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>d</mi>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<msub>
<mi>x</mi>
<mi>j</mi>
</msub>
</mrow>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
其中,ρi为第i个混合数据的密度,ρj第j个混合数据的密度。
3.如权利要求1所述的基于密度搜索与快速划分的混合数据聚类方法,其特征在于,步骤(b)中,利用线性拟合得到δ和ρ的函数关系δ=f(ρ),根据回归分析中逆函数y=b0+b1/x来拟合此函数关系,令则y=b0+b1×x′,则利用线性回归模型得到拟合δ=f(ρ)曲线;
利用F分布和t分布计算得到δ=f(ρ)的奇异混合数据个数及奇异混合数据集合,其中奇异混合数据集合即是聚类的簇中心集,奇异混合数据个数是聚类的簇个数;
采用回归分析的F分布和t分布计算拟合函数的各残差分布特征,并求得个奇异混合数据集合(c1,c2,...,ck),此奇异混合数据集合即聚类中心,其中k是聚类簇的总数,k的取值取决于混合属性数据集D。
4.如权利要求1所述的基于密度搜索与快速划分的混合数据聚类方法,其特征在于,步骤3-1中,利用随机函数rand()在范围[dc_low,dc_high]内随机生成10个粒子,并初始化当前进化代数iter=0;
假设混合属性数据集D包含S个混合数据,D={X1,X2,...Xi...,Xs},那么聚类半径dc的取值范围dc,low=S*1%,dc,high=S*20%;
设定最大迭代次数Maxiter=5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510063814.4A CN104615722B (zh) | 2015-02-06 | 2015-02-06 | 基于密度搜索与快速划分的混合数据聚类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510063814.4A CN104615722B (zh) | 2015-02-06 | 2015-02-06 | 基于密度搜索与快速划分的混合数据聚类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104615722A CN104615722A (zh) | 2015-05-13 |
CN104615722B true CN104615722B (zh) | 2018-04-27 |
Family
ID=53150164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510063814.4A Active CN104615722B (zh) | 2015-02-06 | 2015-02-06 | 基于密度搜索与快速划分的混合数据聚类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104615722B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170169447A1 (en) * | 2015-12-09 | 2017-06-15 | Oracle International Corporation | System and method for segmenting customers with mixed attribute types using a targeted clustering approach |
CN107515892A (zh) * | 2017-07-07 | 2017-12-26 | 国网浙江省电力公司 | 一种基于大数据挖掘的电网低电压成因诊断方法 |
CN109492094A (zh) * | 2018-10-15 | 2019-03-19 | 上海电力学院 | 一种基于密度的混合多维属性数据处理方法 |
CN111209347B (zh) * | 2018-11-02 | 2024-04-16 | 北京京东振世信息技术有限公司 | 一种混合属性数据聚类的方法和装置 |
CN111489440B (zh) * | 2020-04-16 | 2023-08-29 | 无锡荣恩科技有限公司 | 对非标零件的三维扫描建模方法 |
CN114648711B (zh) * | 2022-04-11 | 2023-03-10 | 成都信息工程大学 | 一种基于聚类的云微粒子图像虚假目标滤除方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254020A (zh) * | 2011-07-22 | 2011-11-23 | 西安电子科技大学 | 基于特征权重的全局k-均值聚类方法 |
CN102523167A (zh) * | 2011-12-23 | 2012-06-27 | 中山大学 | 一种未知应用层协议报文格式的最佳分段方法 |
CN103020122A (zh) * | 2012-11-16 | 2013-04-03 | 哈尔滨工程大学 | 一种基于半监督聚类的迁移学习方法 |
CN103049651A (zh) * | 2012-12-13 | 2013-04-17 | 航天科工深圳(集团)有限公司 | 一种用于电力负荷聚类的方法及装置 |
KR20130076348A (ko) * | 2011-12-28 | 2013-07-08 | 고려대학교 산학협력단 | Foaf 데이터 관리 방법 및 장치 |
-
2015
- 2015-02-06 CN CN201510063814.4A patent/CN104615722B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254020A (zh) * | 2011-07-22 | 2011-11-23 | 西安电子科技大学 | 基于特征权重的全局k-均值聚类方法 |
CN102523167A (zh) * | 2011-12-23 | 2012-06-27 | 中山大学 | 一种未知应用层协议报文格式的最佳分段方法 |
KR20130076348A (ko) * | 2011-12-28 | 2013-07-08 | 고려대학교 산학협력단 | Foaf 데이터 관리 방법 및 장치 |
CN103020122A (zh) * | 2012-11-16 | 2013-04-03 | 哈尔滨工程大学 | 一种基于半监督聚类的迁移学习方法 |
CN103049651A (zh) * | 2012-12-13 | 2013-04-17 | 航天科工深圳(集团)有限公司 | 一种用于电力负荷聚类的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104615722A (zh) | 2015-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104615722B (zh) | 基于密度搜索与快速划分的混合数据聚类方法 | |
Su et al. | Facilitating score and causal inference trees for large observational studies | |
KR20210028724A (ko) | 기계 학습 모델을 이용한 편향 데이터 제거 | |
De Carvalho et al. | Partitional clustering algorithms for symbolic interval data based on single adaptive distances | |
CN114048331A (zh) | 一种基于改进型kgat模型的知识图谱推荐方法及*** | |
Guo et al. | Gene regulatory network inference using PLS-based methods | |
Song et al. | A hybrid evolutionary computation approach with its application for optimizing text document clustering | |
CN108763590B (zh) | 一种基于双变加权核fcm算法的数据聚类方法 | |
CN107545471B (zh) | 一种基于高斯混合的大数据智能推荐方法 | |
CN111222847B (zh) | 基于深度学习与非监督聚类的开源社区开发者推荐方法 | |
Wang et al. | Discovering multiple co-clusterings with matrix factorization | |
Ma | An Efficient Optimization Method for Extreme Learning Machine Using Artificial Bee Colony. | |
Li et al. | A novel rough fuzzy clustering algorithm with a new similarity measurement | |
Azimlu et al. | House price prediction using clustering and genetic programming along with conducting a comparative study | |
Bureva et al. | Generalized net model of cluster analysis using CLIQUE: clustering in quest | |
Yanto et al. | A performance of modified fuzzy C-means (FCM) and chicken swarm optimization (CSO) | |
Li et al. | Compositional clustering: Applications to multi-label object recognition and speaker identification | |
Wang et al. | ProbNet: Bayesian deep neural network for point cloud analysis | |
Khan et al. | An analysis of particle swarm optimization with data clustering-technique for optimization in data mining | |
Speer et al. | Spectral clustering gene ontology terms to group genes by function | |
Fan et al. | Non-parametric power-law data clustering | |
Zhang et al. | A Weighted KNN Algorithm Based on Entropy Method | |
Akdemir et al. | Ensemble learning with trees and rules: Supervised, semi-supervised, unsupervised | |
Hang et al. | Density peak clustering based on improved dung beetle optimization and mahalanobis metric | |
Yang et al. | Cluster ensemble based on particle swarm optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |