cdlib.algorithms.spectral¶
- cdlib.algorithms.spectral(g_original: object, kmax: int = 2, projection_on_smaller_class: bool = True, scaler: Callable | None = None) NodeClustering¶
SCD实现了一种用于社区发现的谱聚类算法。 它基于Fielder向量(从与归一化拉普拉斯矩阵的第二特征值相关的特征向量获得),利用Kmeans聚类提取社区。 SCD是一种受基于模块度的聚类技术启发的层次图聚类算法。 该算法是凝聚性的,基于由采样节点对概率引起的簇之间的简单距离。
支持的图表类型
无向
有向
加权
二分图
是的
否
否
否
- Parameters:
g_original – 一个 networkx/igraph 对象
kmax – 所需社区的最大数量(必填)。默认值为2。
projection_on_smaller_class – 一个布尔值,如果为True,则在节点的最小类中投影二分网络。(默认值为True)
scaler – 用于缩放字段向量的函数,以应用KMeans
- Returns:
节点聚类对象
- Example:
>>> from cdlib import algorithms >>> import networkx as nx >>> G = nx.karate_club_graph() >>> coms = algorithms.spectral(G, kmax=2)
- References:
Higham, Desmond J., Gabriela Kalna, 和 Milla Kibble. “谱聚类及其在生物信息学中的应用.” 计算与应用数学杂志 204.1 (2007): 25-37.
注意
实现由Gianmarco Pepi <g.pepi2@unipi.it>, Monia Bennici <m.bennici4@studenti.unipi.it>, Khashayar Abtin <k.abtin@studenti.unipi.it> 和 Kamran Mehravar <k.mehravar@studenti.unipi.it> 提供(意大利比萨大学计算机科学系)