cdlib.evaluation.variation_of_information¶
-
variation_of_information
(first_partition: object, second_partition: object) → cdlib.evaluation.comparison.MatchingResult¶ Variation of Information among two nodes partitions.
$$ H(p)+H(q)-2MI(p, q) $$
where MI is the mutual information, H the partition entropy and p,q are the algorithms sets
Parameters: - first_partition – NodeClustering object
- second_partition – NodeClustering object
Returns: MatchingResult object
Example: >>> from cdlib import evaluation, algorithms >>> g = nx.karate_club_graph() >>> louvain_communities = algorithms.louvain(g) >>> leiden_communities = algorithms.leiden(g) >>> evaluation.variation_of_information(louvain_communities,leiden_communities)
Reference: - Meila, M. (2007). Comparing clusterings - an information based distance. Journal of Multivariate Analysis, 98, 873-895. doi:10.1016/j.jmva.2006.11.013