モデル評価

DET曲線

目次 1. DET曲線とは 2. sci-kit learnのDET曲線 3. 実験 _3.1 環境構築 _3.2 データ生成 _3.3 モデル作成 _3.4 DET曲線の計算 _3.5 DET曲線の可視化   1. DET曲線とは DET曲線とは、Detection Error Tradeoff curvesの略称で、二項分類システムのエラー率のグラフプロットであり、偽陽性率(False positive rate)と偽陰性率(False negative rate)をプロットします。DET曲線には、2種類の試行の基礎となるスコア分布が正常である場合、曲線が直線になるという特性があります。   2. sci-kit learnのDET曲線 sklearn.metrics.det_curve(y_true, y_score, pos_label=None, sample_weight=None) パラメーター y_truendarray of shape (n_samples,) ラベルが{-1、1}または{0、1}のいずれでもない場合は、pos_labelを明示的に指定する必要があります。   y_scorendarray of shape of (n_samples,) ターゲットスコアは、正のクラスの確率推定値、信頼値、またはしきい値以外の決定の尺度(一部の分類子の「decision_function」によって返される)のいずれかです。   pos_labelint or str, default=None …

DET曲線 Read More »

レコメンドのランキングの評価指標 (PR曲線とAUC, MRR, MAP, nDCG)

目次 ランキングの評価指標とは PR曲線とAUC(Precision-Recall Curve) MRR(Mean Reciprocal Rank) MAP(Mean Average Precision) nDCG(normalized Discounted Cumulative Gain) 前回の記事は協調フィルタリングのレコメンデーションエンジンについて解説しました。今回はレコメンドの評価について解説していきます。   1. ランキングの評価指標とは ユーザに提示されるのはおすすめ度の高い上位数アイテム(TopN)複数であり、ユーザの嗜好が高いと思われる順にアイテムを正しく並べ変えるタスクと捉えることができます。   2. PR曲線(Precision-Recall Curve) Recallを横軸に、Precisionを縦軸にとり、Top1、Top2,…というように閾値であるTopNの Nを変動させると、RecallとPrecisionが複数点プロットできます。精度が良いほど右上のほうに曲線は膨らんでいきます。さらに曲線と縦軸・横軸で囲まれる部分の面積がPR曲線の AUC(Area Under Curve) です。AUCはArea under the curveの略で、Area under an ROC curve(ROC曲線下の面積)をROC-AUCなどと呼びます。 各クラスのアイテム数がほぼ等しい場合は、ROC曲線を使用します。PR曲線は、不均衡データの評価の時に、よく使われます。 PR曲線のコード サンプル予測結果を作成します。 import numpy as np testy = np.array([1, 1, 0, 0, 1]) yhat = np.array([1, 1, 0, 0, 0]) probs = np.array([0.6, 0.5, 0.1, 0.1, 0.1]) PR曲線とAUCを作成します。 from sklearn.metrics import precision_recall_curve from sklearn.metrics import f1_score from sklearn.metrics import auc from matplotlib import pyplot   # predict class values lr_precision, lr_recall, _ = precision_recall_curve(testy, probs) lr_f1, lr_auc = f1_score(testy, yhat), auc(lr_recall, lr_precision)   # summarize scores print(‘predict: f1=%.3f auc=%.3f’ % (lr_f1, lr_auc)) …

レコメンドのランキングの評価指標 (PR曲線とAUC, MRR, MAP, nDCG) Read More »

物体検出における学習モデル評価方法IoU, Precision, Recall

  目次 1. IoUとは 2. PrecisionとRecall 3. 実験 _3.1 データロード _3.2 IoUの関数 _3.3 Iouの可視化 _3.4 Precisionの関数 _3.5 Precisionの可視化 _3.6 Recallの関数 _3.7 Recallの可視化   前回の記事は「画像分類・物体検出・セグメンテーションの比較」を説明しました。また、 今回の記事は物体検出における学習モデル評価方法Iouについて説明したいです。   1. IoUとは IoUとは、Intersection over Unionの英語略称で、画像認識物の体検出精度のひとつのメリットです。画像中の検出したい物体を、作成したモデルがどの程度正しく検出できるかを評価する指標です。IoU は、以下の式で定義されます。つまり、領域の共通部分の割り算します。 予測が完全に正しい場合、IoU は1です。正解領域と予測領域の重なりが大きいほど IoU の値は大きくなります。 2. PrecisionとRecall Precision を確認 予測したデータのうち,実際に当たっているものです。予測データのうち必要な所を制限です。 Recallは予測データのうち必要な所を実際に合わします。 3. 実験 環境:Google Colab データセット:車画像 モデル評価:IoU, Precision, Recall 3.1 データロード ライブラリインポート from google.colab …

物体検出における学習モデル評価方法IoU, Precision, Recall Read More »