01 機械学習: 評価指標

01 クロスバリデーション

データをトレーニング セットとテスト セットに分割し、トレーニング セットを使用してモデルを構築し、テスト セットを使用してモデルを評価して変更を提案することは、クロス検証と呼ばれます。

02 分類問題 - 混同行列

例としてのバイナリ分類の混同行列
ここに画像の説明を挿入

正確さ

予測はすべてのデータよりも正確です。
ここに画像の説明を挿入

再現率

予測ペアのポジティブ サンプルの数は、上位サンプルのポジティブ サンプルの数よりも多くなっています。
ここに画像の説明を挿入
意義:ポジティブな例をできるだけ見つける

正確さ

予測されたペアの陽性サンプルの数と、予測されたすべての陽性サンプルの数の比率
ここに画像の説明を挿入
意味: 予測が陽性である場合の精度。

F値

ここに画像の説明を挿入

まとめQ&A

Q: モデルの正解率は 90% ですが、このモデルのパフォーマンスは必ずしも優れているのでしょうか?

  • 不確実
  • 特定の病気の確率が 10% であると仮定すると、すべてのサンプルが病気にかかっていないと予測され、モデルの精度は 90% に達する可能性があります。でもこのモデルはダメ
  • このとき、再現率と正解率を考慮する必要があります。陽性例は病気であると仮定します。A=0 であるため、そのようなモデルの再現率と適合率は 0 に等しくなります。
  • したがって、正解率だけではモデルのパフォーマンスを判断するのに十分ではありません。特に遭遇したデータの不均衡いつ。

Q: 再現率と適合率の関係は?

  • 病気の人を特定するときは、できるだけ病気の人を見つけるようにしてください。現時点では、再現率をできるだけ高くしたいと考えています。
  • 100% のリコール率を達成するための 1 つの方法は、すべてのケースを病気であると予測することです。放っておくよりは誤殺したほうがいいのですが、この機種は性能がいいと思いますか?
  • そのため、命中率も考慮して、できるだけ誤射を少なくする必要があります。
  • 適合率と再現率は相反する指標ではなく、強調する点が異なります。

Q: 正解率を優先し、再現率を考慮するのはどのようなシナリオですか?

  • シナリオ:真の正例を見つけて加点し、非正例を正例と判断して減点する。

ROC曲線

FPR と TPR の 2 つの量の間の相対的な変化。
TPR真陽性率:再現率、1に近いほど良好
FPR偽陽性率:C/(C+D)、

ROC では、いくつかの特別なポイントの意味

ここに画像の説明を挿入
モデルが z1 に近いほど良い。
ROC 曲線は、モデルの TPR と FPR です。判定閾値曲線の変化。

AUC

通常、ROC 曲線の下の右下隅の領域を使用して評価します.領域の値の範囲が 0-1
ここに画像の説明を挿入
ではなく 0.5-1 である理由は? 二項分類問題の場合、正解率が 0 のモデルがは 1 の正解率です。モデル。

下の図は、面積 AUC (Area under couver) が 1、つまり点 z1 であることを示しています。
ここに画像の説明を挿入

scikit-learn コード

索引 scikit 学習
精度 sklearn.metricsからprecision_scoreをインポート
想起 sklearn.metricsインポートrecall_scoreから
F1 sklearn.metrics インポート f1_score から
混同行列 sklearn.metricsインポートから混乱_マトリックス
ROC sklearn.metricsインポートroc_curveから
AUC sklearn.metrics インポート auc から

03 回帰問題

回帰問題では、誤差をできるだけ小さくする必要があります。ただし、エラーを直接追加することはできません。正負の誤差があるから、通常は誤差の絶対値または二乗を取ります。

平均絶対誤差

ここに画像の説明を挿入
値の範囲: 0 ~正の無限大

平均二乗誤差

ここに画像の説明を挿入
値の範囲: 0 ~正の無限大

R2

ここに画像の説明を挿入
TSS は、すべてが平均を予測するモデルの mse です (1/m はオプションです)。R2 が意味することは、モデルが少なくとも単純なモデル (すべての予測が平均であるモデル) よりも優れている必要があるということです。
R2 値の範囲 (負の無限大 ~ 1)

いくつかの特別なポイントを以下に説明します

  • R2=0、モデルのパフォーマンス (RSS) は、平均のみを予測するモデル (TSS) と同等です
  • R2=1 の場合、モデルは完全に予測します。1に近いほど良い
  • R2<0、あなたのモデルは非常に貧弱で、平均を予測するモデルほど良くありません。
  • R2=負の無限大。モデルが振動しており、収束していない可能性があります。

scikit-learn コード

索引 scikit 学習
MSE,RMSE sklearn.metrics インポート mean_squared_error から
sklearn.metrics インポート mean_absolute_error から
R2 sklearn.metrics インポート r2_score から

おすすめ

転載: blog.csdn.net/qq_42911863/article/details/125681991