scikit-learnでConfusion Matrixを見やすく表示する
アドベントカレンダー11日目です。
今日はscikit-learnでConfusion Matrixを表示したいと思います。
adventar.org
Confusion Matrixの書き方
基本的な書き方は以下に乗っているコードをほぼそのまま動かすだけです。
https://scikit-learn.org/stable/auto_examples/model_selection/plot_confusion_matrix.html
少しだけ応用
今回は見やすさを上げるためにいくつか試そうと思います。
まず、デフォルトでは図のサイズが小さいので、figsizeを設定します。
plt.figure(figsize=(10,10))
色を変えたい場合には、cmapを変更します。
cmap=plt.cm.Reds
色の一覧はここを参照してください。
color example code: colormaps_reference.py — Matplotlib 2.0.2 documentation
たまに以下のように一部が見えにくい色になることがあります。
そういうときは、threshの値を調整するか、colorの色を設定するといいです。
背景が白いときに文字が白くなったり、逆が起こらないようにthreshの値を設定しましょう。
thresh = cm.max() / 2. for i, j in itertools.product(range(cm.shape[0]), range(cm.shape[1])): plt.text(j, i, format(cm[i, j], fmt), horizontalalignment="center", color="white" if cm[i, j] > thresh else "black")
今回のソースコードはこちらです。
Colaboratoryだとなぜか十字が入っていますが気にしないでください。