自動プロットを使用して混同行列を作成する方法


自動プロットの混同行列の作成方法

Pythonを使用して自動プロットを行うためには、いくつかのライブラリが利用可能です。その中でも、scikit-learnとmatplotlibを使用する方法が一般的です。以下に、具体的な手順を示します。

まず、必要なライブラリをインポートします。

import numpy as np
import matplotlib.pyplot as plt
from sklearn.metrics import confusion_matrix

次に、モデルの予測結果と真のクラスラベルを用意します。これらは、NumPyの配列やリストとして表現されることが一般的です。

y_true = [0, 1, 0, 1, 1, 0, 0, 1, 1, 0]  # 真のクラスラベル
y_pred = [0, 1, 1, 1, 1, 0, 0, 0, 1, 0]  # モデルの予測結果

次に、混同行列を作成します。scikit-learnのconfusion_matrix関数を使用します。

cm = confusion_matrix(y_true, y_pred)

混同行列が作成されると、以下のような行列が得られます。

array([[3, 2],
       [1, 4]])

この行列は、真のクラスラベルが0の場合の予測結果が3つ、予測結果が1の場合が2つであることを示しています。また、真のクラスラベルが1の場合の予測結果が1つ、予測結果が1の場合が4つであることも示しています。

最後に、混同行列を可視化するために、matplotlibを使用します。

labels = ['Class 0', 'Class 1']
fig, ax = plt.subplots()
im = ax.imshow(cm, interpolation='nearest', cmap=plt.cm.Blues)
ax.figure.colorbar(im, ax=ax)
ax.set(xticks=np.arange(cm.shape[1]),
       yticks=np.arange(cm.shape[0]),
       xticklabels=labels, yticklabels=labels,
       title='Confusion Matrix',
       ylabel='True label',
       xlabel='Predicted label')
plt.show()

このコードを実行すると、混同行列がカラーマップを使って可視化されます。

以上が、Pythonを使用して自動プロットを行い、混同行列を作成する手順の一例です。この方法を使って、機械学習モデルの性能を評価し、結果を解析することができます。