扩展LDBSCAN 算法在图上的应用
来源:互联网 发布:金兰软件怎么样 编辑:程序博客网 时间:2024/05/22 09:05
一 、 背景和正确性分析
SCAN 和 LDBSCAN :
SCAN 是基于密度的聚类算法。一个社交网络能被看成是一个图,在这个图上面一个社交
个体能被看成是一个节点, 个体之间的关系则可以被视作一条边。 这种有现实关系映射到图
的思想可以有许多的应用和扩展。 聚类算法就是一种用于发现社交网络中节点间关系的基本
方法。
在社交网络的聚类中,首先要考察的是节点间的连通性,再由连通性的定义找到连通分
量,因为在社交网络中关注的不是节点和节点之间的距离,因此节点间的是否连通不看是
否存在一条边,而是着眼于节点和节点的相似度,只有相似度高的节点才是连通的,相似
度高的点彼此相连就形成了连通分量,从而就形成了一个聚类。相似度不够高的点,也就
是不被其他节点可达的,不在连通分量里面,不属于一个聚类。
但是在真实世界中的多维数据集经常会出现十分偏斜、离散的(相对于高斯密度分布而
言)的分布,这种分布的全局性很难被 SCAN 聚类算法所揭露,因为 SCAN 聚类算法使
用一种全局的特征分析量。
而 LDBSCAN 聚类本来是基于距离的聚类算法,它有一个优点就是不像 SCAN 聚类一样
使用固定的相似度作为参数,它使用MinPts 作为一个参数,去考量某个节点的 MinPts
个最靠近它的节点。也就是说 LDBSCAN 的聚类是有某个点附近的点的分布决定的,由此
聚出来的类可以有相对离散也可以有相对稠密的。由于这种特性,我们可以把这个本来是
基于距离的一种聚类方法推广到图上面。我们知道,社交网络的聚类很重要的一个概念就
是相似度,所以为了把 LDBSCAN 推广到社交图上面,我们需要引进相似度。那么以相似
度作为距离,这就相当于用相似度进行聚类了。
为了验证 LDBSCAN 的正确性,我们可以用 SCAN 的聚类效果和 LDBSCAN 的效果进行
比较。
由于 SCAN 使用的是全局的特征分析量,所以我们需要经过反复调试 LDBSCAN 的 pct
等 参 数 , 尤 其 是 p c t , 这 直 接 影 响 local outlier factor (LOF).
LOF的主要影响因子就是 pct ,通过调节 pct 的值,
直到 LDBSCAN 聚出来的类的子集和 SCAN 聚出来的最主要那个类(所谓主要就是最大)
足够相似为止。
按照论文上面的参考值设置 SCAN 的参数为 , 得出最大的聚类有 184543个点,聚类记作
C1。将 LDBSCAN 的参数 pct 设置为 0.11,lofub 设置为 1,得出最大的聚类有 186091 个点,聚类记作C2 。
C1和C2 相比,相同的点有 170317 个。然后再将 pct 稍作变化,精确到 0.001,结果发现就算是变化 0.001 的单位, LDBSCAN 聚出来的类都会产生很大的变化,这种变化体现在C1和C2 的共同节点变少。这也说明了,在 LDBSCAN 在 pct 变化的时候,节点之间的连通性会发生变化,导致聚类结果发生变化。这体现了基于密度聚类算法的特性,因为如果用距离去聚类的话,缓慢改变
SCAN 和 LDBSCAN :
SCAN 是基于密度的聚类算法。一个社交网络能被看成是一个图,在这个图上面一个社交
个体能被看成是一个节点, 个体之间的关系则可以被视作一条边。 这种有现实关系映射到图
的思想可以有许多的应用和扩展。 聚类算法就是一种用于发现社交网络中节点间关系的基本
方法。
在社交网络的聚类中,首先要考察的是节点间的连通性,再由连通性的定义找到连通分
量,因为在社交网络中关注的不是节点和节点之间的距离,因此节点间的是否连通不看是
否存在一条边,而是着眼于节点和节点的相似度,只有相似度高的节点才是连通的,相似
度高的点彼此相连就形成了连通分量,从而就形成了一个聚类。相似度不够高的点,也就
是不被其他节点可达的,不在连通分量里面,不属于一个聚类。
但是在真实世界中的多维数据集经常会出现十分偏斜、离散的(相对于高斯密度分布而
言)的分布,这种分布的全局性很难被 SCAN 聚类算法所揭露,因为 SCAN 聚类算法使
用一种全局的特征分析量。
而 LDBSCAN 聚类本来是基于距离的聚类算法,它有一个优点就是不像 SCAN 聚类一样
使用固定的相似度作为参数,它使用MinPts 作为一个参数,去考量某个节点的 MinPts
个最靠近它的节点。也就是说 LDBSCAN 的聚类是有某个点附近的点的分布决定的,由此
聚出来的类可以有相对离散也可以有相对稠密的。由于这种特性,我们可以把这个本来是
基于距离的一种聚类方法推广到图上面。我们知道,社交网络的聚类很重要的一个概念就
是相似度,所以为了把 LDBSCAN 推广到社交图上面,我们需要引进相似度。那么以相似
度作为距离,这就相当于用相似度进行聚类了。
为了验证 LDBSCAN 的正确性,我们可以用 SCAN 的聚类效果和 LDBSCAN 的效果进行
比较。
由于 SCAN 使用的是全局的特征分析量,所以我们需要经过反复调试 LDBSCAN 的 pct
等 参 数 , 尤 其 是 p c t , 这 直 接 影 响 local outlier factor (LOF).
LOF的主要影响因子就是 pct ,通过调节 pct 的值,
直到 LDBSCAN 聚出来的类的子集和 SCAN 聚出来的最主要那个类(所谓主要就是最大)
足够相似为止。
按照论文上面的参考值设置 SCAN 的参数为 , 得出最大的聚类有 184543个点,聚类记作
C1。将 LDBSCAN 的参数 pct 设置为 0.11,lofub 设置为 1,得出最大的聚类有 186091 个点,聚类记作C2 。
C1和C2 相比,相同的点有 170317 个。然后再将 pct 稍作变化,精确到 0.001,结果发现就算是变化 0.001 的单位, LDBSCAN 聚出来的类都会产生很大的变化,这种变化体现在C1和C2 的共同节点变少。这也说明了,在 LDBSCAN 在 pct 变化的时候,节点之间的连通性会发生变化,导致聚类结果发生变化。这体现了基于密度聚类算法的特性,因为如果用距离去聚类的话,缓慢改变
参数导致的结果变化也是很缓慢的。
略去....CSDN的编辑器太恶心....
三 、 实验测试结果
0 0
- 扩展LDBSCAN 算法在图上的应用
- Unity 在MVC上的应用(扩展篇:JQuery AJAX)
- 分治算法在树的路径问题上的应用
- A*算法在八数码问题上的应用
- Zlib压缩算法在java上的应用
- PCA算法及其在人脸识别上的应用
- 快慢指针在算法题上的应用
- 位图算法在用户验证上的应用
- 干货 | 【深度学习】 在 【推荐算法】 上的应用研究进展
- 深度学习在推荐算法上的应用进展
- 在原有项目上新增加扩展应用的一些吐槽
- 扩展的欧几里得算法的应用
- 再探扩展欧几里得算法的应用
- KMP算法的初级扩展应用
- MC34063在扩展后的降压应用
- MC34063在扩展后的降压应用
- 图算法在连连看上的应用
- 基于DSP的FFT算法在无功补偿控制器上的应用
- 【Linux Socket 编程入门】04 - socket编程最常使用的函数及数据结构
- Path in Matrix
- 这才是2017年规划---贫穷来自于懒惰
- 153. Find Minimum in Rotated Sorted Array
- 总结一下学习vb串口通信的初期果实
- 扩展LDBSCAN 算法在图上的应用
- wamp+win10: php连接Mysql, delete update insert 详细操作步骤
- Leetcode 332. Reconstruct Itinerary
- Eularian Path
- 火星人的真实故事,读后感言
- 计算机图形学-初入门(小作品)
- 【LeetCode】 075. Sort Colors
- 还要和师兄混
- mmw mimo系统预编码