Normalized Mutual Information (NMI) for Cluster Analysis

Version 1.0.0 (121 KB) by qqffssxx
A MATLAB implementation for calculating Normalized Mutual Information (NMI) to measure the similarity between two clusterings.
55 Downloads
Updated 9 Jun 2023

View License

This MATLAB function provides a straightforward method to calculate the Normalized Mutual Information (NMI) between two sets of cluster assignments. NMI is a valuable measure in clustering as it can provide an understanding of how similar two different sets of cluster assignments are, even if the number of clusters differ between the two sets.
The function takes two label arrays as input, both representing different clustering assignments for the same dataset. It returns a scalar value representing the NMI of the two sets of labels, a measure of similarity ranging between 0 (no mutual information, completely dissimilar clusterings) and 1 (perfect correlation, completely identical clusterings).
This function has been verified against Python's sklearn.metrics.normalized_mutual_info_score function for accuracy and consistency.
Whether you are performing a cluster analysis and wish to compare results under different conditions or algorithms, this function provides a quick and reliable method to quantify the level of agreement between different clustering assignments. Enjoy exploring your clustering analysis in MATLAB!

Cite As

qqffssxx (2024). Normalized Mutual Information (NMI) for Cluster Analysis (https://www.mathworks.com/matlabcentral/fileexchange/130784-normalized-mutual-information-nmi-for-cluster-analysis), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2018a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: Normalized Mutual Information

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0