相互情報量-クラスタリングの性能評価

機械学習




相互情報量-クラスタリングの性能評価

クラスタリングの性能評価として使われる相互情報量についてまとめ…
まとめる予定ですが、リンク集となっています。

Pythonのsklearnのコードもまとめています。

http://jmlr.csail.mit.edu/papers/volume11/vinh10a/vinh10a.pdf

相互情報量

Mutual information - Wikipedia

Python

第一引数にtargetクラスを、第二引数に予測クラスを渡します。

normalized_mutual_info_scoreとmi(a, b, ‘arithmetic’)とv_measure_score(a, b)は同じです。

from sklearn.metrics import mutual_info_score as mi

score = mi(label, perd)

正規化相互情報量

sklearn.metrics.normalized_mutual_info_score — scikit-learn 0.23.1 documentation
scikit-learn: machine learning in Python

https://course.ccs.neu.edu/cs6140sp15/7_locality_cluster/Assignment-6/NMI.pdf

2クラス間の正規化相互情報量

Python

第一引数にtargetクラスを、第二引数に予測クラスを渡します。

from sklearn.metrics import normalized_mutual_info_score as nmi

score = nmi(label, perd)

adjusted相互情報量

Adjusted mutual information - Wikipedia
sklearn.metrics.adjusted_mutual_info_score — scikit-learn 0.23.1 documentation
scikit-learn: machine learning in Python

Python

第一引数にtargetクラスを、第二引数に予測クラスを渡します。

from sklearn.metrics import adjusted_mutual_info_score as ami

score = ami(label, perd)

v-Measure

Andrew Rosenberg, Julia Hirschberg(2007). V-Measure: A conditional entropy-based external cluster evaluation measure

sklearn.metrics.v_measure_score — scikit-learn 0.23.1 documentation
scikit-learn: machine learning in Python

Python

第一引数にtargetクラスを、第二引数に予測クラスを渡します。

normalized_mutual_info_scoreとmi(a, b, ‘arithmetic’)とv_measure_score(a, b)は同じです。

from sklearn.metrics import v_measure_score as vm

score = vm(label, perd)

参考

情報理論 Math&Science (ちくま学芸文庫) | 甘利俊一 | 数学 | Kindleストア | Amazon
Amazonで甘利俊一の{ProductTitle}。アマゾンならポイント還元本が多数。一度購入いただいた電子書籍は、KindleおよびFire端末、スマートフォンやタブレットなど、様々な端末でもお楽しみいただけます。
シャノンの情報理論入門 価値ある情報を高速に、正確に送る (ブルーバックス) | 高岡詠子 | 科学・テクノロジー | Kindleストア | Amazon
Amazonで高岡詠子の{ProductTitle}。アマゾンならポイント還元本が多数。一度購入いただいた電子書籍は、KindleおよびFire端末、スマートフォンやタブレットなど、様々な端末でもお楽しみいただけます。
タイトルとURLをコピーしました