モデルの選択、特徴の選択、および公開のための分類パフォーマンスメトリックの選択


8

私は小さなアンバランスデータセット(70ポジティブ、30ネガティブ)を使用しており、BAC(バランス精度)とAUC(曲線の下の面積)を使用してSVMパラメーターのモデル選択をいじっています。libSVMのCパラメーターにさまざまなクラスの重みを使用して、ここでのアドバイス(不均衡データに対する決定木のトレーニング)に従って不均衡データを相殺しました。

  1. k分割交差検証エラーは、パフォーマンス測定のタイプに非常に敏感であるようです。トレーニングと検証のセットがランダムに選択されるため、それ自体にもエラーがあります。たとえば、ランダムシードを変えてBACを2回繰り返すと、異なるエラーが発生し、その後、最適パラメーターの値も異なります。繰り返しBACスコアを平均化する場合、1000回の平均では、10000回の平均とは異なる最適パラメーター値が得られます。さらに、フォールドの数を変更すると、さまざまな最適パラメーター値が得られます。

  2. 相互検証の精度指標は、楽観的になりすぎる場合があります。通常、2倍の相互検証を超えると、100%の精度が得られます。また、サンプルサイズが小さいため、エラー率は離散化されます。多くの場合、モデルを選択すると、すべてまたはほとんどのパラメーター値で同じエラー率が得られます。

  3. レポートを作成するとき、分類が「良い」または「許容できる」ことをどのように知ることができますか?現場では、一般的に受け入れられている適合度やp値のしきい値のようなものはないようです。データに繰り返し追加しているので、いつ停止するかを知りたいのですが、モデルが大幅に改善しない場合の良いNは何ですか。

上記の問題を考えると、AUCはパフォーマンスの指標としては不十分であると説明されていますが(たとえば、ここ、またはここを参照)、精度を簡単に比較することはできないようです。

これらの3つの問題のいずれかに取り組む方法に関するアドバイスはありますか?


1
特にデータが非常に少ない場合、主に実行することはできません。それだけです。p値のしきい値のような規則がないという点に関しては、おそらく感謝するべきです。
gung-モニカの回復

回答:


5

k分割交差検証エラーは、パフォーマンス測定のタイプに非常に敏感です。トレーニングセットと検証セットがランダムに選択されるため、それ自体にもエラーがあります。

などのケース数の比率であるパフォーマンス測定の多様性を発見したと思います# correct predictions# test cases

k

さらに、折りたたみの数を変更すると、最適なパラメーター値が異なります。

差異があるため、これは予想されることです。ここに追加の効果があるかもしれません:libSVMは、組み込みの相互検証を使用して調整する場合、データを一度だけ分割します。SVMの性質上、同一のトレーニングデータを使用してSVMを構築し、パラメーターをゆっくりと変化させた場合、サポートベクトル(およびその結果、精度)が急上昇することがわかります。SVMパラメーターがあまり変わらない限り、同じサポートベクターを選択してください。パラメータが十分に変更された場合にのみ、突然異なるサポートベクトルが発生します。そのため、まったく同じクロス検証分割でSVMパラメータグリッドを評価すると、異なる実行間で見られる変動性が隠される場合があります。

私見の基本的な問題は、グリッド検索を実行することです。これは、ターゲットの機能(精度または使用する他のもの)のかなりスムーズな動作に依存する最適化です。パフォーマンス測定値の変動が大きいため、この仮定に違反しています。SVMモデルの「ジャンプ」依存性もこの仮定に違反しています。

相互検証の精度指標は、楽観的になりすぎる場合があります。通常、2倍の相互検証を超えると、100%の精度が得られます。また、サンプルサイズが小さいため、エラー率は離散化されます。多くの場合、モデルを選択すると、すべてまたはほとんどのパラメーター値で同じエラー率が得られます。

これは、アプローチの一般的な問題を考えると予想されます。

ただし、通常は、分類子が機能しない極端なパラメーター値を選択することができます。SVMが適切に機能するパラメーターの範囲については、重要な情報です。

いずれの場合も、「最良」として選択したモデルのパフォーマンスの外部(二重/入れ子)検証が絶対に必要です。

私はおそらく、外側の相互検証または外側のブートストラップ外検証の実行/反復/反復の数を実行し、

  • 「最良の」モデルのハイパーパラメータ
  • 報告されたチューニングのパフォーマンス
  • 外部検証の観察されたパフォーマンス

最後の2つの違いは、過剰適合の指標です(たとえば、分散を「スキミング」したため)。

レポートを作成するとき、分類が「良い」または「許容できる」ことをどのように知ることができますか?現場では、一般的に受け入れられている適合度やp値のしきい値のようなものはないようです。データに繰り返し追加しているので、いつ停止するかを知りたいのですが、モデルが大幅に改善しない場合の良いNは何ですか。

(何を追加しますか?ケースまたはバリエーション/機能?)

まず、反復モデリングを行う場合、フィッティング手順のために、楽観的なバイアスの影響を受けるため、パフォーマンスを真剣に受け取らないことを報告する必要があります。より良い代替案は、最終モデルの検証を行うことです。ただし、そのテストデータは、モデル化のためにトレーニングまたは決定プロセスに入ったすべてのデータから独立している必要があります(そのようなデータが残っていない可能性があります)。


素晴らしい答えをありがとう。私が理解していることから、あなたの戦略には、複数の外側の折りたたみ/反復から来る値の範囲からハイパーパラメータの分布を構築することが含まれます。(1)この場合、楽観的な精度またはAUCは大丈夫ですか?そうでなければ、繰り返されたCVからのスコアの分布が「片側」になるため、悲観的な測定基準は「最良のモデル」を見つける方が良いと思います。(2)また、CVのより多くの反復を平均しても必ずしも役立つとは限らないというのは、SVMモデルの不安定性のためにエラーが確率論的に分散されないためです。
bravetang8 2013年

最後の質問を明確にするために、実験で繰り返しケースを追加しています。最初のモデルを使用して「有益な」ポイントを選択し、そこから元のモデルを再構築および改良できます。基本的に知りたいのは、(外部検証からの)推定誤差が最小限に偏るように追加する必要があるケースの数です。「許容できる」ケース/機能比があることを期待していました。
bravetang8 2013年

@ bravetang8:(1)あなたは正しい:楽観的に偏った測定は良い考えではありません:最適化はすべてが完璧であると思われる異なるモデルを区別できないためです。多くのアプリケーションでは、過度に楽観的なものよりも控えめにパフォーマンスを見積もる方がよいため、外部最適化には適していません。しかし、内部最適化で内部推定が過度に楽観的であるかどうか、またはこれがここでは問題ではないかどうかを知るのは良いことです。
cbeleitesが2013

@ bravetang8:2)CVの反復を平均化すると、モデルの不安定性に起因する分散の部分のみが減少しますが、有限ケースセットに起因する部分は減少しません。したがって、「十分な」反復の後、モデルの不安定性タイプの分散は、総分散のわずかな原因に過ぎず、それ以上の反復に進むことは役に立ちません。
cbeleitesが2013

@cbeleitesさん、こんにちはcbeleitesさん、Harrel教授がすでにここで重要なメモを書いていますが、この投稿を確認する時間があるかどうか疑問に思っていました。ありがとう。stats.stackexchange.com/questions/86917/...
lennon310

3

BIRよりも単純なのは、対数または2次(Brier)スコアリングルールです。これらは適切なスコアであり、正しく分類された比率とは異なり、最適化時に偽のモデルを生成しません。


そのため、OPはSVMの確率出力に切り替える必要があります。IIRCは、少なくともlibSVMでは、ロジスティックを当てはめることで計算されます。これが元のSVMとどれほど密接に関連しているかはわかりません。
cbeleitesが2013

1

ご指摘のとおり、予測精度とAUCは特定の側面で制限されています。私はベイジアン情報報酬(BIR)を試してみます。これは、分類子がどの程度うまく行っているか、あるいはどれほど悪いか、およびパラメーター(検証の折りたたみの数など)を微調整するときにどのように変化するかについて、より敏感な評価を与えるはずです。

BIRの直感は次のとおりです。賭け手には、最終的な勝者と敗者(0と1)を特定するだけでなく、より重要なことに、適切なオッズを特定することで報酬が与えられます。さらに、それは一歩先を行き、すべての予測を以前の確率と比較します。

WinLose

ここに画像の説明を入力してください

ppp=0.6p=0.6(inf,1]

BIRはバイナリ分類に限定されず、多項分類問題に対しても一般化されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.