いつ交差検証を使用しないのですか?


10

サイトを読んだとき、ほとんどの回答は、相互検証が機械学習アルゴリズムで実行されるべきであることを示唆しています。しかし、「機械学習について」という本を読んでいるときに、相互検証を使用しない方がよい演習があることがわかりました。私は本当に混乱しています。データ全体のトレーニングアルゴリズムが交差検証よりも優れているのはいつですか?実際のデータセットで発生しますか?

ましょうはk個の仮説クラスです。あなたが与えられていると仮定メートル例を訓練し、あなたがクラス学びたいIID Hを= kは、私は= 1 H Iを。2つの代替アプローチを検討してください。H1,...,HkmH=i=1kHi

  1. ERMルールを使用してmの例でを学ぶHm

  2. サイズのトレーニングセットにm個の例を分割及び大きさの検証セットα Mいくつかについて、α 0 1 。次に、検証を使用してモデル選択のアプローチを適用します。すなわち、Fiは各クラスの訓練RST H I1 - α のmに対するERMルール使用トレーニング例をH Iを、およびlet H 1... Hの kは(1α)mαmα(0,1)Hi(1α)mHih^1,,h^k結果の仮説である。第二は、FIの有限クラスに対してERMルールを適用{ H 1... Hの K }にαのm個の検証例。h^1,,h^kαm

最初の方法が2番目の方法よりも優れているシナリオ、およびその逆のシナリオについて説明します。

quastionのイメージ


1
それは興味深い演習ですが、ラベルに同意しません。ここでは相互検証が完全に機能していると思います。接線として、画像を添付するのではなく、演習をタイプアウトして引用することが実際に好ましいでしょう。視覚障害のあるユーザーは画像にアクセスできません。
Matthew Drury 2017

相互検証を使用することの1つの考えられる欠点は、過剰適合である可能性があります(1つの相互検証を省略する場合のように)。基本的に、相互検証手法を使用することにより、検証データセット(テストデータセットではない)でモデルのパラメーターを調整しています。しかし、場合によっては、この調整が少なすぎて、分類器がテストセットでテストされるときにオーバーフィットが発生する可能性があります。
Upendra Pratap Singh 2017

1
ここで「パリティ」とはどういう意味ですか?
シャドウトーカー2017

私はそれが加算モジュロ2を意味だと思う@shadowtalker
SMA.D

(繰り返し)相互検証とブートストラップを区別しますか?
usεr11852

回答:


11

お持ち帰りメッセージ:

  • 演習で、データドリブンモデルの最適化/チューニング/選択を行わない方がよい場合もあります(分野によって異なります:多くの場合またはほとんど常に)。

  • さまざまな検証オプションの中で相互検証が最良の選択ではない状況もありますが、これらの考慮事項は、ここでの演習のコンテキストには関係ありません。

  • また、モデルを検証(検証、テスト)しないことは、決して良い選択ではありません

残念ながら、引用するテキストは、アプローチ1と2の間で2つの点を変更しています。

  • アプローチ2は、相互検証データ駆動型モデルの選択/調整/最適化を実行します
  • アプローチ1は、相互検証もデータ駆動型モデルの選択/調整/最適化も使用しません。
  • アプローチ3データ駆動型モデルの選択/調整/最適化なしの相互検証は、ここで説明するコンテキストでは完全に実現可能です(IMHOが洞察につながる可能性があります)
  • アプローチ4、交差検証はありませんが、データ駆動型モデルの選択/調整/最適化も可能ですが、構築はより複雑です。

私見、相互検証、およびデータ駆動型最適化は、モデリング戦略の設定における2つのまったく異なる(そしてほとんど独立した)決定です。唯一の接続は、あなたの最適化のための機能のターゲットとしてクロスバリデーション推定値を使用することができるということです。しかし、すぐに使用できる他のターゲット関数が存在し、相互検証推定の他の用途があります(重要なことに、モデルの検証、別名検証またはテストにそれらを使用できます)

残念ながら、機械学習の用語は現在IMHOであり、ここでは誤った接続/原因/依存関係を示唆しています。

  • アプローチ3(最適化ではなくモデルのパフォーマンスを測定するための相互検証)を調べると、「決定」相互検証対データセット全体のトレーニングが、このコンテキストでは誤った二分法であることがわかります。相互検証を使用する場合分類子のパフォーマンスを測定するために、クロス検証の性能指数は、データセット全体でトレーニングされたモデルの推定値として使用されます。つまり、アプローチ3にはアプローチ1が含まれます。

  • 次に、2番目の決定、つまりデータ駆動型モデルの最適化かどうかを見てみましょう。これが私見の重要なポイントです。そして、はい、実際の状況で、データ駆動型モデルの最適化を行わない方が良い場合があります。データ駆動型モデルの最適化にはコストがかかります。このように考えることができます。データセットの情報は、だけでなく、pモデルのパラメータ/係数ですが、最適化によって行われるのは、ハイパーパラメータと呼ばれる追加のパラメータを推定することです。モデルフィッティングおよび最適化/チューニングプロセスをモデルパラメーターの検索として説明する場合、このハイパーパラメーター最適化は、非常に大きな検索スペースが考慮されることを意味します。つまり、アプローチ1(および3)では、これらのハイパーパラメーターを指定することにより、検索スペースを制限します。実際のデータセットは、その制限された検索スペース内に収まるのに十分な大きさ(十分な情報を含む)である可能性がありますが、アプローチ2(および4)のより大きな検索スペースですべてのパラメーターを十分に固定するのに十分な大きさではありません。

実際、私の分野では、データ駆動型の最適化を考えるには小さすぎるデータセットを扱わなければならないことがよくあります。だから私は代わりに何をしますか:私はデータとデータ生成プロセスについての私のドメイン知識を使用して、どのモデルがデータとアプリケーションの物理的性質とよく一致するかを決定します。これらの中で、モデルの複雑さを制限する必要があります。


いい答え。どういうわけか、あなたがこのスレッドに貢献してくれることを望みました。明白な1
usεr11852

有益で役立つ回答をありがとうございます。私があなたの答えから学んだことは、検証のためではなくモデルの選択のために小さなデータセットがある場合、アプローチ2を選択する可能性があるということです。私は正しいですか?小さなデータセットにモデル選択を使用すると、どういうわけか適合が不十分になりますか?
SMA.D 2017

もう1つの質問は、演習では、仮説クラスのサイズがアプローチ1と2の両方で同じであることです。その場合、アプローチ2の場合、探索空間はどのように大きくなりますか?
SMA.D 2017

まあ、1ではなく2の選択肢がある場合は、2の検索スペースが大きくなります。2の検索スペースが大きくない場合、アプローチ2で選択するものは何もありません。アプローチ2が何を意味するかについての私の答えと解釈は、「検証を使用したモデル選択」という用語によってトリガーされます。ここで問題となっている前の「相互検証が失敗したとき」の演習のコンテキストがまだある場合、この本は、上記のアプローチ3と呼んだもの、つまりモデルの選択が含まれていないことを意味する場合があります。しかし、その場合、「モデルの選択」という言葉は実際には存在しないはずです。私は、これは...どのように可能性を判断することはできません
SXと不幸cbeleites

...この本がモデルの選択について何を言っているのか、またそれらのERMルールが何なのか(私の語彙では、ERMはエンタープライズリスク管理に拡張されます...)がわかりません。ただし、私の答えは、モデリングアルゴリズムに関係なく保持されます。
cbeleitesはSXに不満2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.