【论文详读】A tree-based incremental overlapping clustering method using the three-way decision theory


在这里插入图片描述

算法目的

提出问题

  • 现实中,一个对象可能存在多个身份,属于多个类别。比如,一个研究者会研究多个领域,在聚类时,不能单纯说其只属于某一个领域。如下图,重叠的部分就是即研究计算机也研究石油的研究者。
    在这里插入图片描述
  • 一般聚类是解决静态数据的聚类,数据集没有变过,但是现实世界中,很多数据是动态的,随着时间变化而更新,所以存在增量聚类问题,将新的数据聚类,就会更新已有的聚类信息。

解决方法

  • 重叠聚类
  • 增量聚类
  • 三支决策

思路分析

重叠聚类

重叠聚类:采用两个集合表示形式表示一个类,
在这里插入图片描述
C i ‾ \underline{C_{i}} Ci表示下边界,图中粉色部分。

C k ‾ \overline{C_{k}} Ck表示上边界,图中蓝色部分+粉色部分。

他们之间有这样一个关系:
在这里插入图片描述
C i ‾ \underline{C_{i}} Ci表示正域,POS ,即图中粉色中心域,这里面的对象肯定属于这个类别。

C k ‾ − C k ‾ \overline{C_{k}}-\underline{C_{k}} CkCk表示边界域 BND,即蓝色部分,这部分里面的对象可能属于也可能不属于这个类别(不确定)。

U − C k ‾ U-\overline{C_{k}} UCk表示负域,即图中空白区域,,与此类别无关的其他对象。
在这里插入图片描述
在这里插入图片描述
当不管是正域还是边界域和其他类别的正域或边界域有交集的,就是有重叠的部分,即存在属于多个类别的对象。用这样的形式表示重叠聚类。

增量聚类

首先根据初始数据聚类,建立搜索树,然后计算增量与初始聚类代表点的相似度来更新聚类。
在这里插入图片描述

所提算法

静态重叠聚类

计算代表点

  1. 计算样本之间的距离,得到距离矩阵。
  2. 根据阈值挑选近邻样本,近邻样本多的点作为代表点的几何中心。
  3. 删除距离矩阵中该中心点的邻近点所在行。
  4. 重复2、3步,直到选择完所有点。

例1:

初始数据在这里插入图片描述
距离矩阵
在这里插入图片描述
选出两两距离<1.5最多的点, x 9 x_{9} x9作为第一个代表点 r 1 r_{1} r1的集合中心点, c o v e r ( r 1 ) = { x 2 , x 3 , x 5 , x 6 , x 7 , x 8 , x 9 } cover(r_{1})=\{x_{2},x_{3},x_{5},x_{6},x_{7},x_{8},x_{9}\} cover(r1)={x2,x3,x5,x6,x7,x8,x9},删除 x 2 , x 3 , x 5 , x 6 , x 7 , x 8 , x 9 x_{2},x_{3},x_{5},x_{6},x_{7},x_{8},x_{9} x2,x3,x5,x6,x7,x8,x9所在的行,得到table3:
在这里插入图片描述
在比较 x 1 , x 4 , x 10 x_{1},x_{4},x_{10} x1,x4,x10中谁邻居数最多,发现是 x 1 x_{1} x1最多,则把 x 1 x_{1} x1作为 r 2 r_{2} r2的几何中心点,得到 c o v e r ( r 2 ) = { x 1 , x 2 , x 3 , x 5 , x 10 } cover(r_{2})=\{x_{1},x_{2},x_{3},x_{5},x_{10}\} cover(r2)={x1,x2,x3,x5,x10},删除邻居所在行 x 1 , x 10 x_{1},x_{10} x1,x10,只剩一个行元素 x 4 x_{4} x4,同理得到 c o v e r ( r 3 ) = { x 4 } cover(r_{3})=\{x_{4}\} cover(r3)={x4}。代表点计算完毕。

构建无向图

在这里插入图片描述
根据此公式,计算两个代表区域( c o v e r ( ) cover() cover())的相似度,设定两个阈值 α 、 β \alpha、\beta αβ S i m i l a r i t y R R ( r i , r j ) ≥ α SimilarityRR(r_{i},r_{j})\geq\alpha SimilarityRR(ri,rj)α则在这两个代表区域之间画一条强链接实线,当 β < S i m i l a r i t y R R ( r i , r j ) < α \beta<SimilarityRR(r_{i},r_{j})<\alpha β<SimilarityRR(ri,rj)<α,则两个代表区域之间画弱连接虚线。
形成无向图

聚类

搜索上述无向图,其中的由强链接构成的强连通子图就是一类,对于每个这样的子图,与其对应的对象形成一个簇的正区域。然后连接它的弱连接区域作为该类的边界域。如下图左边所示。

创建搜索树

在这里插入图片描述
在这里插入图片描述
root为所有的代表点,根据属性的重要度来创建树的层数,属性的重要度根据熵值来计算。表4是代表点的属性值范围,即代表区域里的对象在该属性的最大最小值形成。表4中认为 a 1 a_{1} a1 的重要度大于 a 2 a_{2} a2

该算法认为代表点的属性值范围有交集,就具有相似性,被归在一起。

第一层,根据属性 a 1 a_{1} a1 ,可以分成两个节点,第一个节点包括 r 1 , r 2 , r 3 r_{1},r_{2},r_{3} r1r2r3,他们都有交集。第二个节点是 r 4 , r 5 r_{4},r_{5} r4r5

第二层,根据属性 a 2 a_{2} a2,按照同样的方法划分,发现和上一层一样,直到(上一层 节点数/ 下一层节点数)>= 阈值(0-1),终止建树。(就算还有属性没有用完,但是上下两层一样的话,继续分支也没有意思了)。

聚类增量数据

  • 第一步,根据以上创建树
  • 第二步,增量数据找出其代表点,然后更新树和图。

找邻居代表点

在已经建好的树中找到邻居代表点,是聚类增量数据的关键。
分为三种情况, r w a i t r_{wait} rwait 是增量数据的代表点。
" Case 1, there only one node is similar with r w a i t r_{wait} rwait in every layer;
Case 2, there are more than one node similar with r w a i t r_{wait} rwait at least in one layer;
Case 3, there are no nodes similar with r w a i t r_{wait} rwait at least in one layer."
case1:
在这里插入图片描述
case2:
在这里插入图片描述
case3:
在这里插入图片描述

更新图G

计算 r w a i t r_{wait} rwait 与同节点里面的所有代表点是否是近邻,之间的距离 S i m i l a r i t y R R ( r i , r j ) ≥ α SimilarityRR(r_{i},r_{j})\geq\alpha SimilarityRR(ri,rj)α ,则画实线, β < S i m i l a r i t y R R ( r i , r j ) < α \beta<SimilarityRR(r_{i},r_{j})<\alpha β<SimilarityRR(ri,rj)<α画虚线。其他每个代表点之前的近邻关系都需要更新,因为有新的对象加入,会改变值。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验

表5是所用数据集,M是真实簇的数量。2000个数据样本,其中60%作为初始数据,40%作为增量数据。
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值