aucって出せる?

はい、AUC(Area Under the Curve)は、ROC曲線(Receiver Operating Characteristic curve)の下の面積を表す指標であり、モデルの性能を評価するための一般的な方法の1つです。AUCは、二値分類器の性能を評価する際に特に有用ですが、多クラス分類器でも利用することができます。

AUCを計算するには、roc_auc_score 関数を使用します。以下は、AUCを計算して表示する方法の例です。

python
from sklearn.metrics import roc_auc_score # テストデータで予測確率を取得 y_pred_proba = nb_classifier.predict_proba(X_test) # クラス1(Positiveクラス)の確率を取得 # (多クラス分類器の場合は、各クラスの確率を取得して、目的のクラスの確率を使います) positive_class_index = 1 # Positiveクラスのインデックス(例えば、クラス160がPositiveの場合) y_pred_proba_positive = y_pred_proba[:, positive_class_index] # AUCを計算 auc = roc_auc_score(y_test, y_pred_proba_positive) print("AUC:", auc)

このコードでは、predict_proba メソッドを使ってテストデータの各サンプルについて各クラスの確率を取得し、その中から目的のクラス(Positiveクラス)の確率を選択しています。そして、roc_auc_score 関数を使ってAUCを計算しています。このようにしてAUCを計算することができます。

未分類

Posted by ぼっち