cdlib.evaluation.adjusted_mutual_information¶
- cdlib.evaluation.adjusted_mutual_information(first_partition: object, second_partition: object) MatchingResult¶
两个聚类之间的调整互信息。
调整互信息(AMI)是对互信息(MI)分数进行调整以考虑偶然性。它解释了这样一个事实,即对于具有更多簇的两个聚类,MI通常更高,无论是否实际上共享了更多信息。对于两个聚类 \(U\) 和 \(V\),AMI 给出如下:
AMI(U, V) = [MI(U, V) - E(MI(U, V))] / [max(H(U), H(V)) - E(MI(U, V))]
该指标与标签的绝对值无关:类别或聚类标签值的排列不会以任何方式改变得分值。
此外,该指标是对称的:交换
label_true与label_pred将返回相同的分数值。这在真实的基础事实未知时,用于衡量同一数据集上两种独立标签分配策略的一致性非常有用。请注意,此函数比其他指标(如调整兰德指数)慢一个数量级。
- Parameters:
first_partition – NodeClustering 对象
second_partition – NodeClustering 对象
- Returns:
匹配结果对象
- Example:
>>> from cdlib import evaluation, algorithms >>> import networkx as nx >>> g = nx.karate_club_graph() >>> louvain_communities = algorithms.louvain(g) >>> leiden_communities = algorithms.leiden(g) >>> evaluation.adjusted_mutual_information(louvain_communities,leiden_communities)
- Reference:
Vinh, N. X., Epps, J., & Bailey, J. (2010). 信息理论度量用于聚类比较:变体、属性、归一化和机会校正。 机器学习研究杂志, 11(10月), 2837-2854.