当前位置:   article > 正文

SCAN:一种基于密度的社团发现算法_xu, x., yuruk, n., feng, z., and schweiger, t. a.

xu, x., yuruk, n., feng, z., and schweiger, t. a. (2007). scan: a structural

Update: spark版本的实现在这里
说明:该实现参照了SCAN作者的另一篇论文 :

Zhao, W., Martha, V., & Xu, X. (2013, March). PSCAN: a parallel Structural clustering algorithm for big networks in MapReduce. In Advanced Information Networking and Applications (AINA), 2013 IEEE 27th International Conference on (pp. 862-869). IEEE

可以实现在亿级别节点的图的聚类。


实现代码在这里下载。

Paper: 《SCAN: A Structural Clustering Algorithm for Networks》
Auther: Xiaowei Xu, Nurcan Yuruk, Zhidan Feng, Thomas A. J. Schweiger
Conference: SIGKDD 2007

一:SCAN算法简介

SCAN算法是由机器学习里的基于密度的聚类算法DBSCAN改进而来的一种非重叠社团发现算法,具有线性时间复杂度。其一大亮点在于能发现社团中桥节点(hub)和离群点(outlier)。

主要思想在于,在考虑两点之间的关系的时候,不仅考虑它们的直接链接,而是利用它们的邻居节点来作为聚类的标准。也就是说,节点根据它们共享邻居方式而聚类。
这里写图片描述

由图可知,节点0、5共享了4个节点,节点9、13只共享了2个节点,显然它们在聚类是应采取不同的聚类方式。

二、主要概念介绍

1. 节点相似度

节点相似度定义为两个节点共同邻居的数目两个节点邻居数目的几何平均数的比值(这里的邻居均包含节点自身)。

σ(v,w)=|Γ(v)Γ(w)||Γ(v)||Γ(w)|

其中 Γ(x) 表示节点 x 及其相邻节点所组成的集合。

2. ϵ - 邻居

节点的 ϵ - 邻居定义为与其相似度不小于 ϵ 的节点所组成的集合。

Nϵ={wΓ(v)|σ(v,w)ϵ}

3. 核节点

核节点是指 ϵ 邻居的数目大于 μ 的节点。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/394919
推荐阅读
相关标签
  

闽ICP备14008679号