Advanced Search

数据分析与知识发现  2017 , 1 (12): 84-91 https://doi.org/10.11925/infotech.2096-3467.2017.0724

研究论文

基于局部密度的不确定数据聚类算法*

罗彦福1, 钱晓东2

1兰州交通大学自动化与电气工程学院 兰州 730070
2兰州交通大学经济管理学院 兰州 730070

Uncertain Data Clustering Algorithm Based on Local Density

Luo Yanfu1, Qian Xiaodong2

1School of Automation and Electrical Engineering, Lanzhou Jiaotong University, Lanzhou 730070, China
2School of Economics and Management, Lanzhou Jiaotong University, Lanzhou 730070, China

中图分类号:  TP393

通讯作者:  通讯作者: 钱晓东, ORCID: 0000-0001-6425-7559, E-mail: qianxd@mail.lzjtu.cn

收稿日期: 2017-07-24

修回日期:  2017-10-12

网络出版日期:  2017-12-25

版权声明:  2017 《数据分析与知识发现》编辑部 《数据分析与知识发现》编辑部

基金资助:  *本文系国家自然科学基金项目“基于复杂网络的商务大数据聚类与管理应用研究”(项目编号: 71461017)的研究成果之一

展开

摘要

目的】为解决由经典聚类算法改进而来的不确定数据聚类算法往往存在原有算法本身的缺点问题, 提出一种新的不确定数据聚类方法。【方法】改进不确定距离的度量方法, 确保两个不确定对象在以一定概率存在的前提下, 再进行二者概率差异的比较; 确定聚类中心后, 依据局部密度定义最大支持点、密度链域等概念, 据此提出一种将数据对象归入相应聚类中心所在簇的新算法。【结果】利用UCI机器学习库中的数据集验证本文聚类算法, 实验结果表明, F值较传统不确定数据聚类算法(UK-Means和FDBSCAN)在两组数据集上分别最高提升13.23%和23.44%, 算法主要在计算距离矩阵的过程中用时较多, 整体聚类时间相较于传统算法略有优势, 但不明显。【局限】本文唯一需要设定的参数的选取尚无准确的指导方法; 未采用并行计算, 使得算法时间复杂度较高。【结论】若直接以数据集的距离矩阵作为输入, 本文算法能快速确定聚类中心并完成聚类, 而且具有良好的聚类准确率; 唯一的参数t值对聚类结果影响较大。

关键词: 不确定数据 ; 截止距离 ; 局部密度 ; 密度链域

Abstract

[Objective] This paper proposes a new algorithm to cluster uncertain data, aiming to reduce the shortcomings inherited from the classic ones. [Methods] First, we modified the measurement of uncertain distance and compared the probability differences between two existing uncertain objects. Then, we defined the cluster centers and proposed a new algorithm to group the data into the related clusters based on the concepts of maximum supporting points and density chain regions. [Results] We used two data sets from the UCI machine learning library to examine the proposed algorithm. We found that the F values of the two data sets increased by 13.23% and 23.44% compared to traditional algorithm (UK-Means and FDBSCAN). It took the algorithm longer time to calculate the distance matrix. Therefore, the overall clustering time was only slightly shorter than the traditional algorithm. [Limitations] There was no appropriate method to define the parameter for the proposed algorithm, and the clustering time was complex. [Conclusions] The proposed algorithm could quickly determine the clustering centers and complete the clustering tasks. The value of t (the only parameter) poses much influence to the clustering results.

Keywords: Uncertain Data ; Cut-off Distance ; Local Density ; Density Chain Region

0

PDF (702KB) 元数据 多维度评价 相关文章 收藏文章

本文引用格式 导出 EndNote Ris Bibtex

罗彦福, 钱晓东. 基于局部密度的不确定数据聚类算法*[J]. 数据分析与知识发现, 2017, 1(12): 84-91 https://doi.org/10.11925/infotech.2096-3467.2017.0724

Luo Yanfu, Qian Xiaodong. Uncertain Data Clustering Algorithm Based on Local Density[J]. Data Analysis and Knowledge Discovery, 2017, 1(12): 84-91 https://doi.org/10.11925/infotech.2096-3467.2017.0724

1 引 言

信息技术飞速发展, 大数据在成为一种重要财富的同时也给数据挖掘领域提出了重大的挑战, 数据可用性便是其中一个重要方面。数据可用性问题及其所导致的知识和决策错误已经在全球范围内造成了许多恶劣的影响[1]。近年来有关弱可用数据中的不确定数据聚类已成为一个研究热点。

不确定数据的表现形式一般可分为属性不确定和存在不确定。当数据对象的数目确定, 但是对象的属性值不确定时, 称为属性不确定, 可用$(x_{i}^{a},\varphi (x_{i}^{a}))$表示属性不确定数据集, 其中$\varphi (x_{i}^{a})$表示第i个对象的第a个属性存在的概率。当数据对象(元组)存在不确定性时称为存在不确定, 一般可采用点概率模型度量, 可直接将数据对象的存在概率用一个在[0,1]之间的随机不确定值表示[2-4]。将每个对象的存在概率用于对象之间的相似性度量, 后续的聚类过程中只要依据不确定相异度进行即可, 如此便可确保不确定性对整个算法的时间复杂度不会有过大的影响。设数据集中的点用X表示, P表示点的不确定性, 则该模型用(X, P)表示。本文针对数据对象存在不确定的情况进行研究。

目前大部分聚类算法都是针对确定数据的, 有关不确定数据的聚类研究尚不多见。已有的不确定数据聚类算法大多是在传统算法中引入不确定数据的相似性度量, 进而使之适用于不确定数据聚类。Chau等[5]将经典的 K-Means 算法扩展到不确定数据聚类算法中, 提出UK-Means 不确定数据聚类算法, 其核心思想与K-Means算法类似, 不同之处在于将原来的距离计算改为期望距离实现聚类, 但是每次聚类中心更新不可避免地会重新计算一次期望距离, 针对UK-Means的改进主要考虑怎样减少期望距离的计算[6]。Gullo等[7]扩展了传统的 K-Medoids 算法, 提出适用于不确定数据的UK-Medoids 算法, 该算法只需计算一次距离期望便可以用到后续迭代中, 从而改进了UK-Means重复计算期望距离的缺点。此外, 该算法还引入模糊距离函数FDF(Fuzzy Distance Function), 该函数可适用于离散和连续的概率密度函数。基于密度的聚类算法DBSCAN和OPTICS, 针对不确定数据相应的算法分别是FDBSCAN[8]和FOPTICS[9], 这两种算法采用反映概率密集程度的距离分布函数代替欧式距离。Jiang等[10]首先提出利用 KL 距离(即相对熵)衡量连续型和离散型不确定对象间的相似度, 提出一种基于概率分布相似性的聚类算法, 该方法定义相似度的方式不同以往聚类算法, 是近年不确定数据聚类算法中的一项重要研究成果; 潘冬名等[11]提出基于相对密度的不确定数据聚类算法, 该方法主要将不确定相异度引入基于密度的算法DBSCAN, 重新定义了相关概念并加入相对密度的度量方法。针对几何距离度量以及概率分布距离度量的缺点, 文献[12]提出一种自适应混合距离度量方法。现有不确定数据聚类算法大多是基于划分和基于密度的聚类算法改进而来, 文献[13]利用信息论提出一种基于层次聚类的不确定聚类算法。文献[14]提出一种基于快速高斯变换的不确定数据聚类算法。

上述算法中, 基于划分的方法不能发现任意形状的簇, 而且聚类结果受噪声点的影响较大; 基于密度的不确定数据聚类算法对参数选择比较敏感, 而且不能很好地对不同簇密度的数据集聚类; 文献[11]中相对密度的不确定数据聚类算法在定义不确定相异度时只考虑了数据对象存在概率的差值, 没有考虑各自概率的大小。

本文以存在不确定数据作为研究对象, 针对上述不确定数据聚类算法的缺点, 改进了不确定相异度度量方法, 以快速寻找聚类中心的算法为基础, 将改进的不确定距离应用于计算数据集的局部密度和距离, 进而计算聚类中心, 并将局部密度作为一个重要度量指标对数据对象聚类。依据局部密度的特征提出密度链和密度链域等概念, 并基于上述概念提出一种新的聚类算法。所提算法可以有效识别不同形状的簇, 整个过程只需设定一个参数, 可以很好地解决一般聚类算法人为输入多个不易确定参数的困扰。

2 相关工作

2.1 不确定相异度

设不确定数据集为$S=\{(x_{i}^{a},{{p}_{i}})\}_{i=1}^{n}$, 相应的对象标记集为${{I}_{S}}=\{1,2,\cdots ,n\}$, $n$为对象个数, 相应的属性标记集为${{A}_{S}}=\{1,2,\cdots ,N\}$, $N$为每个对象的属性个数, 即数据集的维数。令${{d}_{{{x}_{i}}{{x}_{j}}}}=dist({{x}_{i}},{{x}_{j}})$表示未加存在概率的对象之间的距离。距离度量有多种选择, 可以根据实际聚类对象的数据类型进行选择。在数据对象存在不确定的情况下, 文献[11]使用公式(1)度量两个不确定对象$({{x}_{i}},{{p}_{{{x}_{i}}}})$和$({{x}_{j}},{{p}_{{{x}_{j}}}})$之间的距离。

$d_{{{x}_{i}}{{x}_{j}}}^{p}=\frac{{{d}_{{{x}_{i}}{{x}_{j}}}}}{1-|{{p}_{{{x}_{i}}}}-{{p}_{{{x}_{j}}}}|}$ (1)

在对聚类中心的刻画上, 聚类中心同时具有两个特点: 聚类中心本身的密度大, 被密度均小于它自己的邻居数据点包围; 不同聚类中心之间的距离相对较大。因而文献[15]针对数据对象的这两个特性定义了局部密度和密度距离。本文将不确定相异度引入局部密度和密度距离的计算中。

2.2 确定聚类中心

(1) 截断距离dc

依据不确定距离矩阵对距离排序, 由于数据对象的个数为$n$, 则共有$m=n(n-1)/2$个距离值参与排序, 设得到的排序序列为${{d}_{1}}\le {{d}_{2}}\le \cdots \le {{d}_{m}}$, 择取${{d}_{c}}={{d}_{f(mt)}}$, 其中$f(mt)$表示对$mt$进行四舍五入后得到的整数。$t$为经验值, 其范围在1%-2%之间[15]

(2) 不确定局部密度

在得到距离矩阵和截断距离后, 定义局部密度如公式(2)[15]所示。

${{\rho }_{i}}=\sum\limits_{j\in {{I}_{S}}\backslash \{i\}}{\chi (d_{ij}^{p}-{{d}_{c}})}$ (2)

其中, 函数χ如公式(3)所示。

$\chi =\left\{ \begin{align} & 1\ \ x0 \\ & 0\ \ x\ge 0 \\ \end{align} \right.$ (3)

参数${{d}_{c}}0$, 表示截断距离(Cutoff Distance), 需要人为指定。上述公式的含义是: 数据集中与${{x}_{i}}$之间的距离小于${{d}_{c}}$的数据点的个数。

(3) 不确定密度距离

设$\{{{q}_{i}}\}_{i=1}^{n}$表示$\{{{\rho }_{i}}\}_{i=1}^{n}$降序排列的下标, 即有${{\rho }_{{{q}_{1}}}}\ge {{\rho }_{{{q}_{2}}}}\ge \cdots \ge {{\rho }_{{{q}_{n}}}}$, 则密度距离定义如公式(4)[15]所示。

${{\delta }_{{{q}_{i}}}}=\left\{ \begin{align} & \underset{j1}{\mathop{\min }}\,\{d_{{{q}_{i}}{{q}_{j}}}^{p}\}\ \ \ \ i\ge 2 \\ & \underset{j\ge 2}{\mathop{\max }}\,\{{{\delta }_{{{q}_{i}}}}\}\ \ \ \ \ i=1 \\ \end{align} \right.$ (4)

当某个点${{x}_{i}}$有最大局部密度, 则${{\delta }_{i}}$表示整个数据集中距离${{x}_{i}}$的最远点与${{x}_{i}}$之间的距离; 否则${{\delta }_{i}}$表示在所有局部密度大于${{x}_{i}}$的数据中, 与${{x}_{i}}$距离最小的数据点与${{x}_{i}}$之间的距离。若某个点的局部密度和距离取值都比较大时, 则可选取该点作为聚类中心。

(4) 聚类中心的确定

当数据集规模较大时, 仅取局部密度和距离都较大的对象以确定聚类中心并不容易, 所以需要对${{\rho }_{i}}$和${{\delta }_{i}}$做相应处理, 令${{\gamma }_{i}}={{({{\rho }_{i}}{{\delta }_{i}})}^{2}},i\in {{I}_{S}}$, $\gamma $值越大的点就越可能是聚类中心, 对$\gamma $进行降序排列, 聚类中心过渡到非聚类中心时会有一个明显的“跳跃”, 可用数值检测的方法判定, 然后截取“跳跃”之前的数据点作为聚类中心。

3 聚类算法

3.1 不确定相异度的改进

公式(1)表示两个对象之间的不确定相异度, 当两个对象的概率差值为0时, 它们之间的不确定相异度就等价于传统确定数据之间的距离, 但其尚存在一些缺陷。当两个对象的存在概率都较低时, 用公式(1)计算得到的距离与确定数据之间的距离相近。如当两个对象${{x}_{1}}$和${{x}_{2}}$的存在概率均为0.1, 由公式(1)得到的不确定相异度$d_{{{x}_{1}}{{x}_{2}}}^{p}={{d}_{{{x}_{1}}{{x}_{2}}}}$, 实际在这种情况下, ${{x}_{1}}$和${{x}_{2}}$的不确定相异度会相当大, 原公式只考虑到对象之间存在概率的差异, 而没有考虑各自概率的大小。因此本文对公式(1)进行改进, 如公式(5)所示。

$d_{{{x}_{i}}{{x}_{j}}}^{p}=\frac{{{d}_{{{x}_{i}}{{x}_{j}}}}}{{{p}_{{{x}_{i}}}}{{p}_{{{x}_{j}}}}(1-|{{p}_{{{x}_{i}}}}-{{p}_{{{x}_{j}}}}|)}$ (5)

改进后的公式(5)兼顾了两个数据对象之间的存在概率差异与大小, 确保了两个不确定对象在以一定概率存在的前提下再进行彼此存在概率差异的比较, 可以更准确反映不确定对象之间的不确定相异度。

3.2 聚类算法相关定义

确定聚类中心之后, 将整个数据集视为一维数据,

保持数据对象个数不变, 每个对象的局部密度作为对象属性。聚类算法基于以下基本思想: 将局部密度看作是每个数据对象的影响力, 那么从某一对象出发, 寻找其影响力范围内拥有最大影响力的对象, 继续寻找该影响力最大对象影响范围内的最大影响力对象, 以此类推可以最终找到搜索范围内影响力最大的对象(聚类中心), 在找到聚类中心之后停止本次搜索过程, 将整个过程中覆盖的点归于当前聚类中心所在的簇内。基于上述思想, 本文定义以下内容:

定义1: 对于任意数据对象, 若其${{d}_{c}}$邻域半径中不含其他数据点, 即局部密度为“1”, 称之为完全离群点。

完全离群点可以在聚类中心确定之后直接从数据集中剔除, 以免影响后续聚类过程。

定义2: 数据对象的${{d}_{c}}$邻域内拥有最大局部密度的点。若一个点$a$的局部密度为5, 其${{d}_{c}}$邻域半径内5个点$\{b,c,d,e,f\}$的局部密度为$\{2,3,4,6,5\}$, 则$e$为$a$的最大支持点。

定义3: 数据对象本身就是其${{d}_{c}}$邻域内局部密度最大的点, 即数据对象是其自身的最大支持点。若一个点$a$的局部密度为7, 其${{d}_{c}}$邻域半径内其他7个点$\{b,c,d,e,f,g,h\}$的局部密度为$\{2,3,4,5,5,3,6\}$, 则$a$为一个密度峰值点。

聚类中心(Cluster Centers)是部分密度峰值点, 还有一部分密度峰值点虽然拥有其邻域内的最大局部密度, 但不是聚类中心。

定义4: 密度峰值点的${{d}_{c}}$邻域中, 局部密度仅次于该密度峰值的点称为次密度峰值点。在定义3的例子中, $h$为$a$的次密度峰值点。

当找到非聚类中心的密度峰值点时, 可标记该峰值点, 并使之不再作为密度峰值参与后续比较, 并以次密度峰值点代替其继续搜索过程, 将此过程称之为峰值替换。在定义3的例子中, 若$a$是非聚类中心峰值点, 则用次密度峰值点$h$代替当前最大支持点进行搜索, 直至找到聚类中心。非聚类中心峰值点中有可能出现非完全离群点。

定义5: 设$\{{{q}_{{{n}_{i}}}}\}_{{{n}_{i}}=1}^{{{N}_{I}}}$表示$\{{{\rho }_{{{n}_{i}}}}\}_{{{n}_{i}}=1}^{{{N}_{I}}}$除完全离群点之外的点的升序排列下标, 即有如下关系, ${{\rho }_{{{q}_{1}}}}\ge {{\rho }_{{{q}_{2}}}}\ge \cdots \ge {{\rho }_{{{q}_{{{N}_{I}}}}}}$。以${{x}_{q1}}$为起点, 寻找${{x}_{q1}}$的最大支持点${{x}_{q1\_\max \_s}}$, 再寻找${{x}_{q1\_\max \_s}}$的最大支持点, 照此往下寻找, 直到找到一个密度峰值点, 该过程中的初始点以及最大支持点形成的链式结构称为密度链, 如图1所示。

图1   密度链和密度链域

   

图1中$C$为聚类中心, $S{{1}_{1}}$为首次搜索的起始点, $S{{1}_{2}}$、$S{{1}_{3}}$、$S{{1}_{4}}$为从$S{{1}_{1}}$到聚类中心所经过的所有最大支持点, 则$\{S{{1}_{1}},S{{1}_{2}},S{{1}_{3}},S{{1}_{4}},C\}$为第一条密度链; $S{{2}_{1}}$为第二次搜索起点, $\{S{{2}_{1}},S{{2}_{2}},S{{2}_{3}},S{{2}_{4}},C\}$为第二条密度链。

定义6: 密度链中每个节点的${{d}_{c}}$邻域半径所覆盖的区域称为密度链域。在图1中有两条密度链, 两个密度链域, 即实线圆和虚线圆所覆盖的区域, 两个密度链域内的点同属于聚类中心$C$所在的簇内。

定义7: 经过峰值替换后, 仍然无法构成包含聚类中心的密度链, 将此过程中所覆盖的数据对象称为非完全离群点。非完全离群点也有自己所属的密度链域, 在一般数据点聚类完成后, 可以比较非完全离群点所在密度链域内的密度峰值点和已有的聚类中心之间的距离, 选择距离该密度峰值点最近的聚类中心所在的簇将非完全离群点归入其中。

3.3 算法描述

确定聚类中心后, 根据2.2节的相关定义对数据点进行聚类。确定聚类中心的算法描述如下。

导入数据集, 计算距离矩阵;

设定$t$值, 计算截止距离${{d}_{c}}$;

依据${{d}_{c}}$计算数据集中每个点的局部密度${{\rho }_{i}}$, 并存储构成每个局部密度的数据对象;

依据${{\rho }_{i}}$和距离矩阵计算距离${{\delta }_{i}}$;

利用公式${{\gamma }_{i}}={{({{\rho }_{i}}{{\delta }_{i}})}^{2}}$对${{\gamma }_{i}}$降序排序确定聚类中心。

确定聚类中心是算法的基础, 在该基础上, 将数据点归簇的算法流程如下。

确定完全离群点并从数据集中剔除。
Round1
①找到最小局部密度点;
②查找最小局部密度点dc邻域中的最大支持点;
③寻找密度峰值点, 数据点归簇:
Repeat
找到最大支持点的最大支持点;
Until: 找到密度峰值点;
if(密度峰值点是聚类中心)
将上述过程密度链域中的数据对象归于该聚类中心所在的簇(Cluster)。
else(最大峰值点不是聚类中心)
非聚类中心峰值点不参与后续比较搜索, 并以次密度峰值点代替该峰值点作为最大支持点继续搜索,重复步骤②;
if(最终可以找到聚类中心)
将该非聚类中心峰值点归入当前簇;
else
搜索过程中密度链域内的对象为非完全离群点;
Round2
从未被归簇的数据点中选取最小局部密度点, 重复Round1;
if(找到的聚类中心与先前聚类中心相同)
密度链域内的数据对象归于先前聚类中心所在簇;
else
将此过程中密度链域内的数据点归于当前聚类中心所在的新簇;
重复Round2直到所有数据点被分配完毕。

确定聚类中心后, 在数据点被分配到各个聚类中心所在簇前, 先从数据集中移除完全离群点。第一轮搜索以局部密度最小的点开始, 寻找其最大支持点, 然后一直搜索, 直到得到一个不再变化的密度链, 密度链的终点满足其本身在它的所有支持点中拥有最大的局部密度, 这样终点可能出现以下两种情况:

(1) 如果该点是聚类中心, 则停止本轮搜索, 并将在此过程中密度链域内所有数据点归入当前聚类中心所在簇。

(2) 如果该点不是聚类中心, 则选取该点以${{d}_{c}}$为邻域半径所覆盖的点中除去该点之外的数据点中拥有最大局部密度的点开始, 继续上述搜索过程。标记被除去的最大支持点, 若经过密度替换可以找到聚类中心, 则将被标记的最大支持点归入该聚类中心所在簇, 若经过密度替换无法找到聚类中心, 则被标记的最大支持点为非完全离群点。

从未被归入任何簇的数据点中找到拥有最小局部密度的数据点, 并从该点展开搜索, 重复第一轮的操作过程, 会有如下情况:

(1) 密度链终点与之前密度链终点重合, 即同一聚类中心, 则将此类情况下的密度链域内的数据对象归入该聚类中心所在簇。

(2) 密度链终点与之前密度链终点不重合, 将密度链域内的点归为一个新簇。

重复Round2搜索结果, 直到全部点都被包含。

在上述过程中, 如果数据集的簇间距离较小, 那么在搜索过程中可能会出现部分数据点同时归属于多个簇的现象, 针对这样的情况, 考虑不同簇的密度可能不同, 属于同一簇的点, 其局部密度与该簇中点的平均局部密度更为接近, 所以只需计算当前重合点的局部密度与每个重合簇的簇内平均局部密度之比, 将当前重合点纳入比值较大的簇。

3.4 算法复杂度分析

(1) 时间复杂度

算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级, 在很大程度上能很好反映出算法的优劣。本文算法时间复杂度主要由确定聚类中心和聚类两部分构成。

①确定聚类中心的时间复杂度: 距离矩阵计算时间复杂度为$O({{n}^{2}})$; 计算局部密度与距离时间复杂度均为$O(n)$, 此外, 对${{\rho }_{i}}$和${{\delta }_{i}}$作相应处理以确定聚类中心的时间复杂度均为$O(n)$, 因此, 在聚类中心确定过程中时间复杂度为$O({{n}^{2}})$。

②聚类过程的时间复杂度: 聚类的时间复杂度为$O(r\sum\nolimits_{m\_s=1}^{{{N}_{S}}}{{{\rho }_{m\_s}}})$, 其中$r$为算法迭代的次数, 且有$k\le r<<n$, $k$为聚类中心的个数, ${{N}_{S}}$为最大支持点的个数, 其值远小于$n$, ${{\rho }_{m\_s}}$为任意最大支持点的局部密度, 其值也远小于$n$。

综上所述, 算法时间复杂度为$O({{n}^{2}})$。

(2) 空间复杂度

算法主要的内存开销在距离矩阵计算以及聚类中心确定计算上, 采用每次只计算单个数据点的局部密度和距离的方法可以有效降低内存开销, 其空间复杂度为$O(n)$, 所以算法的空间复杂度为$O(n)$。

4 实证分析

实证部分使用的计算机配置为: CPU为主频2.60GHz 的Intel® Core(TM)i7-6700HQ, 内存8GB, 操作系统为Windows10, 程序用Java语言编写。

准确率(Precision)和召回率(Recall)可作为聚类质量的评估指标。准确率与召回率虽然没有必然的关系, 但在大规模数据集合中, 这两个指标却是相互制约的, 单独使用上述两个指标中的任何一个都不能真实反映聚类结果的好坏, F-Measure综合考虑了准确率和召回率, 可以更好地评估聚类结果的好坏, 所以本文采用F-Measure作为聚类结果的评价标准, 计算公式为$F=2PR/(P+R)$, 其中$P$为准确率, $R$为召回率, F值越大则聚类效果越好。在${{d}_{c}}$值的计算过程中, 当数据规模较大时, 为了减少计算时间, 本文随机选取若干点计算被选点与其余点的距离, 求取最大值${{d}_{m}}$, 令${{d}_{c}}={{d}_{f(mt)}}$, 其中$0<t<0.5$, $t$即本算法唯一需要设定的参数。

对于小规模数据集, 实验采用UCI数据集Iris(①http://archive.ics.uci.edu/ml/datasets/Iris.), 给数据集的每条记录随机添加$(0,1)$区间的存在概率, 使得数据集转换成不确定数据集, 先将数据做预处理, 具体是将每个属性值映射到$(0,1)$区间, 这样可以避免不同属性之间数量级的差别对距离度量产生较大的影响。Iris数据集总共有150个数据点, 每个数据对象有4个属性, 分为3类, 每类50个数据; 在聚类过程中设定$t=0.09$, 得到Iris数据集的聚类中心如图2所示。

图2   Iris数据集聚类中心

   

数据标号为28、92、148的数据对象被选为聚类中心, 按照本文提出的聚类算法, 最终聚类结果如表1所示, 簇内点的个数中, P表示点的正确分类数目, N表示误分点的数目。

表1   Iris数据集聚类结果

   

簇号聚类中心(标号)簇内点的个数离群点个数
128P: 50; N: 02
292P: 50; N: 3
3148P: 28; N: 17

新窗口打开

对于Iris数据集, 簇1中数据对象归属准确率为1, 召回率为1, 所以得到其F值为1; 簇2数据对象归属准确率为0.9434, 召回率为1, F值为0.9709; 簇3的归属准确率为0.6222, 召回率为0.56, F值为0.5895, 整体算法的F值为0.9854。聚类时间为25ms, 其中确定聚类中心用时17.21ms。

为了验证本文算法处理较大规模数据的有效性, 采用UCI机器学习库中的Connect-4数据集(①http://archive.ics.uci.edu/ml/datasets/Connect-4.), 对象个数为67 557个, 对象的属性个数为42个, 可分为3类。聚类时设定t=0.286。所得聚类中心如图3所示, 最终聚类结果如表2所示, 得到的3个簇准确率分别为1、0.9975和0.9582, 召回率分别为0.6927、1和1, 最终的F值为0.9086。聚类用时37.92s, 其中确定聚类中心用时23.27s。

图3   Connect-4数据集聚类中心

   

表2   Connect-4数据集聚类结果

   

簇号聚类中心(标号)簇内点的个数离群点个数
1687P: 4467; N: 00
2829P: 16635; N: 42
329878P: 44473; N: 1940

新窗口打开

对比本文算法与其他不确定数据聚类算法的聚类质量与聚类时间, 表3是分别用基于划分的不确定聚类算法UK-Means、基于密度的不确定数据聚类算法FDBSCAN与本文算法在Iris和Connect-4上的F值与运行时间对比结果。

表3   不同算法实验结果对比

   

算法F值运行时间(s)
IrisConnect-4IrisConnect-4
UK-Means0.88650.80170.026141.2505
FDBSCAN0.79830.74300.044247.3241
本文算法0.98540.90850.025037.9223

新窗口打开

实验结果表明, 对Iris和Connect-4这两组数据集的聚类划分中, 本文算法的F值明显高于UK-Means和FDBSCAN; 在运行时间方面, 本文算法相较于UK-Means和FDBSCAN依然具有优势。此外, 通过观察所提算法各主要环节执行时间发现, 算法在距离矩阵计算时花费较多时间, 大约占整个聚类算法时间的$3/5$左右, 其主要原因是文献[15]的算法以距离矩阵作为输入, 但是本文直接以数据集作为输入, 这使得本文算法需要先计算距离矩阵, 这一过程的时间复杂度为$O({{n}^{2}})$, 这是本算法最为耗时的一个过程, 因而其在运行时间上未有明显优势。待确定聚类中心之后, 本文算法可以很快完成聚类。

5 结 语

本文以不确定数据作为研究对象, 基于快速寻找聚类中心的方法设计一种新的不确定数据聚类算法。该算法以局部密度作为数据点归入对应聚类中心所在簇的主要依据, 可以发现任意形状的簇, 而且整个聚类过程只需设定一个参数(用于确定截止距离dc的参数t)即可完成。利用UCI机器学习库中的真实数据集对本文算法进行测试, 聚类结果良好, 不足之处在于t值确定比较困难; 算法在对非完全离群点的确定上尚存一些不足, 所以在t值的确定以及非完全离群点的定义有待后续研究。当今社会数据量增长迅速, 单一计算机无法应对大规模数据聚类, 因而实现本文算法的并行化是今后的一个研究方向。

作者贡献声明:

罗彦福: 提出算法思路以及详细流程, 查找、清洗数据, 编写算法代码, 负责实验, 起草论文;

钱晓东: 优化研究思路, 分析实验结果;

罗彦福, 钱晓东: 论文最终版本修订。

利益冲突声明

所有作者声明不存在利益冲突关系。

支撑数据

支撑数据由作者自存储, E-mail: luoyanfu@qq.com。

[1] 罗彦福. iris_pre.csv. 经过预处理的Iris数据集.

[2] 罗彦福. connect-4_pre.csv. 经过预处理的Connect-4数据集.

[3] 罗彦福. iris_2.csv. Iris数据集聚类中心.

[4] 罗彦福. CentersOfConnect4.csv. Connect-4数据集聚类中心.

[5] 罗彦福. iris_result.txt. Iris数据集聚类结果.

[6] 罗彦福. FinalResultOfConnect4.xlsx. Connect-4数据集聚类结果.


参考文献

[1] 李建中, 王宏志, 高宏.

大数据可用性的研究进展

[J]. 软件学报, 2016, 27(7): 1605-1625.

https://doi.org/10.13328/j.cnki.jos.005038      URL      [本文引用: 1]      摘要

信息技术的迅速发展,催生了大数据时代的到来.大数据已经成为信息社会的重要财富,为人们更深入地感知、认识和控制物理世界提供了前所未有的丰富信息.然而随着数据规模的扩大,劣质数据也随之而来,导致大数据质量低劣,极大地降低了大数据的可用性,严重困扰着信息社会.近年来,数据可用性问题引起了学术界和工业界的共同关注,展开了深入的研究,取得了一系列研究成果.介绍了数据可用性的基本概念,讨论数据可用性的挑战与研究问题,综述了数据可用性方面的研究成果,探索了大数据可用性的未来研究方向.

(Li Jianzhong, Wang Hongzhi, Gao Hong.

State-of-the-Art of Research on Big Data Usability

[J]. Journal of Software, 2016, 27(7): 1605-1625.)

https://doi.org/10.13328/j.cnki.jos.005038      URL      [本文引用: 1]      摘要

信息技术的迅速发展,催生了大数据时代的到来.大数据已经成为信息社会的重要财富,为人们更深入地感知、认识和控制物理世界提供了前所未有的丰富信息.然而随着数据规模的扩大,劣质数据也随之而来,导致大数据质量低劣,极大地降低了大数据的可用性,严重困扰着信息社会.近年来,数据可用性问题引起了学术界和工业界的共同关注,展开了深入的研究,取得了一系列研究成果.介绍了数据可用性的基本概念,讨论数据可用性的挑战与研究问题,综述了数据可用性方面的研究成果,探索了大数据可用性的未来研究方向.
[2] Anagnostopoulos A, Dasgupta A, Kumar R.

Approximation Algorithms for Co-Clustering

[C]// Proceedings of the 27th ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems. ACM, 2008:201-210.

[本文引用: 1]     

[3] Kanagal B, Deshpande A. Online Filtering,

Smoothing and Probabilistic Modeling of Streaming Data

[C]// Proceedings of the 24th International Conference on Data Engineering. IEEE, 2008:1160-1169.

[4] C, Letchner J, Balazinksa M, et al.

Event Queries on Correlated Probabilistic Streams

[C]// Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data. ACM, 2008:715-728.

[本文引用: 1]     

[5] Chau M, Cheng R, Kao B, et al.

Uncertain Data Mining: An Example in Clustering Location Data [A]// Advances in Knowledge Discovery and Data Mining

[M]. Springer Berlin Heidelberg, 2006: 199-204.

[本文引用: 1]     

[6] 刘位龙.

面向不确定性数据的聚类算法研究

[D]. 济南: 山东师范大学, 2011.

[本文引用: 1]     

(Liu Weilong.

Research on Clustering Algorithm for Uncertainty Data

[D]. Ji’nan: Shandong Normal University, 2011.)

[本文引用: 1]     

[7] Gullo F, Ponti G, Tagarelli A.

Clustering Uncertain Data via K-Medoids [A]// Scalable Uncertainty Management

[M]. Springer Berlin Heidelberg, 2008: 229-242.

[本文引用: 1]     

[8] Xu H J, Li G H.

Density-based Probabilistic Clustering of Uncertain Data

[C]//Proceeedings of the 2008 International Conference on Computer Science and Software Engineering. 2008: 474-477.

[本文引用: 1]     

[9] Kriegel H P, Pfeifle M.

Hierarchical Density-Based Clustering of Uncertain Data

[C]//Proceedings of the 5th IEEE Conference on Data Mining. 2005:689-692.

[本文引用: 1]     

[10] Jiang B, Pei J, Tao Y, et al.

Clustering Uncertain Data Based on Probability Distribution Similarity

[J]. IEEE Transactions on Knowledge and Data Engineering, 2013, 25(4): 751-763.

https://doi.org/10.1109/TKDE.2011.221      URL      Magsci      [本文引用: 1]      摘要

Clustering on uncertain data, one of the essential tasks in mining uncertain data, posts significant challenges on both modeling similarity between uncertain objects and developing efficient computational methods. The previous methods extend traditional partitioning clustering methods like $(k)$-means and density-based clustering methods like DBSCAN to uncertain data, thus rely on geometric distances between objects. Such methods cannot handle uncertain objects that are geometrically indistinguishable, such as products with the same mean but very different variances in customer ratings. Surprisingly, probability distributions, which are essential characteristics of uncertain objects, have not been considered in measuring similarity between uncertain objects. In this paper, we systematically model uncertain objects in both continuous and discrete domains, where an uncertain object is modeled as a continuous and discrete random variable, respectively. We use the well-known Kullback-Leibler divergence to measure similarity between uncertain objects in both the continuous and discrete cases, and integrate it into partitioning and density-based clustering methods to cluster uncertain objects. Nevertheless, a nai ve implementation is very costly. Particularly, computing exact KL divergence in the continuous case is very costly or even infeasible. To tackle the problem, we estimate KL divergence in the continuous case by kernel density estimation and employ the fast Gauss transform technique to further speed up the computation. Our extensive experiment results verify the effectiveness, efficiency, and scalability of our approaches.
[11] 潘冬明, 黄德才.

基于相对密度的不确定数据聚类算法

[J]. 计算机科学, 2015, 42(11A): 72-74.

[本文引用: 1]     

(Pan Dongming, Huang Decai.

Relative Density-based Clustering Algorithm over Uncertain Data

[J]. Computer Science, 2015, 42(11A): 72-74.)

[本文引用: 1]     

[12] Liu H, Zhang X, Zhang X, et al.

Self-adapted Mixture Distance Measure for Clustering Uncertain Data

[J]. Knowledge-Based Systems, 2017, 126: 33-47.

https://doi.org/10.1016/j.knosys.2017.04.002      URL      摘要

Distance measure plays an important role in clustering uncertain data. However, existing distance measures for clustering uncertain data suffer from some issues. Geometric distance measure can not identify the difference between uncertain objects with different distributions heavily overlapping in locations. Probability distribution distance measure can not distinguish the difference between different pairs of completely separated uncertain objects. In this paper, we propose a self-adapted mixture distance measure for clustering uncertain data which considers the geometric distance and the probability distribution distance simultaneously, thus overcoming the issues in previous distance measures. The proposed distance measure consists of three parts: (1) The induced kernel distance: it can be used to measure the geometric distance between uncertain objects. (2) The Jensen hannon divergence: it can be used to measure the probability distribution distance between uncertain objects. (3) The self-adapted weight parameter: it can be used to adjust the importance degree of the induced kernel distance and the Jensen hannon divergence according to the location overlapping information of the dataset. The proposed distance measure is symmetric, finite and parameter adaptive. Furthermore, we integrate the self-adapted mixture distance measure into the partition-based and density-based algorithms for clustering uncertain data. Extensive experimental results on synthetic datasets, real benchmark datasets and real world uncertain datasets show that our proposed distance measure outperforms the existing distance measures for clustering uncertain data.
[13] Gullo F, Ponti G, Tagarelli A, et al.

An Information-Theoretic Approach to Hierarchical Clustering of Uncertain Data

[J]. Information Sciences, 2017,402:199-215.

https://doi.org/10.1016/j.ins.2017.03.030      URL      摘要

Uncertain data clustering has become central in mining data whose observed representation is naturally affected by imprecision, staling, or randomness that is implicit when storing this data from real-word sources. Most existing methods for uncertain data clustering follow a partitional or a density-based clustering approach, whereas little research has been devoted to the hierarchical clustering paradigm. In this work, we push forward research in hierarchical clustering of uncertain data by introducing a well-founded solution to the problem via an information-theoretic approach, following the initial idea described in our earlier work[26]. We propose a prototype-based agglomerative hierarchical clustering method, dubbed U-AHC , which employs a new uncertain linkage criterion for cluster merging. This criterion enables the comparison of (sets of) uncertain objects based on information-theoretic as well as expected-distance measures. To assess our proposal, we have conducted a comparative evaluation with state-of-the-art algorithms for clustering uncertain objects, on both benchmark and real datasets. We also compare with two basic definitions of agglomerative hierarchical clustering that are treated as baseline methods in terms of accuracy and efficiency of the clustering results, respectively. Main experimental findings reveal that U-AHC generally outperforms competing methods in accuracy and, from an efficiency viewpoint, is comparable to the fastest baseline version of agglomerative hierarchical clustering.
[14] 迟荣华, 程媛, 朱素霞, .

基于快速高斯变换的不确定数据聚类算法

[J]. 通信学报, 2017, 38(3): 101-111.

(Chi Ronghua, Cheng Yuan, Zhu Suxia, et al.

Uncertain Data Analysis Algorithm Based on Fast Gaussian Transform

[J]. Journal of Communications, 2017, 38(3): 101-111)

[15] Rodriguez A, Laio A. Machine Learning.

Clustering by Fast Search and Find of Density Peaks

[J]. Science, 2014, 344(6191): 1492-1496.

[本文引用: 3]     

版权所有 © 2015 《数据分析与知识发现》编辑部
地址:北京市海淀区中关村北四环西路33号 邮编:100190
电话/传真:(010)82626611-6626,82624938
E-mail:jishu@mail.las.ac.cn

/