サポートベクターマシンの学習パラメーターを選択する状況で、相互検証をどのように適切に適用しますか?


9

素晴らしいlibsvmパッケージは、Pythonインターフェースと、分類子の精度を最大化する学習パラメーター(コストとガンマ)を自動的に検索するファイル「easy.py」を提供します。与えられた候補の学習パラメーターセット内で、精度は交差検証によって操作可能になりますが、これは交差検証の目的を損なうように感じます。つまり、データの過剰適合を引き起こす可能性のある方法で学習パラメーター自体を選択できる限り、より適切なアプローチは、検索自体のレベルで交差検証を適用することだと思います:検索を実行しますトレーニングデータセットで、別のテストデータセット内で評価することにより、最終的に選択された学習パラメーターから得られるSVMの最終的な精度を評価します。または、ここで何か不足していますか?

回答:


10

完全なトレーニングデータでハイパーパラメーターを学習し、次に交差検証すると、楽観的にバイアスされたパフォーマンス推定が得られます。これは、各フォールドのテストデータがハイパーパラメーターの設定に既に使用されているため、ハイパー選択したパラメータは、テストセットのデータに適合するため、一部選択されています。この方法で導入される楽観的なバイアスは、予想外に大きくなる可能性があります。参照してください「モデルの選択と性能評価におけるその後の選択バイアスのオーバーフィッティングオン」Cawleyとタルボット、JMLR 11(7月):2079年から2107年、2010年。(特にセクション5.3)。最善の方法は、入れ子の交差検証です。基本的な考え方は、モデルの生成に使用されるメソッド全体を相互検証するため、モデル選択(ハイパーパラメーターの選択)をモデルフィッティング手順の一部(パラメーターが決定される)の一部として扱い、先に進むことができないということです。あまりにも間違っています。

トレーニングセットで交差検証を使用してハイパーパラメーターを決定し、別のテストセットを使用して、トレーニングセット全体でそれらのパラメーターを使用してトレーニングされたモデルのパフォーマンスを評価する場合も、十分です(十分なデータがある場合)モデルを確実にフィッティングし、互いに素なパーティションを使用してパフォーマンスを推定するため)。


素敵なリファレンス!
Andrew

2番目の段落では、特徴選択をどのように取り入れますか?i)上記のようにハイパーパラメータ最適化を実行し(最適なハイパーパラメータを取得)、ii)クロス検証の別のラウンドで特徴選択を実行して上位予測子のセットを取得します(機能選択は、パーティション化されたトレーニングデータで実行されます)ハイパーパラメータの最適化で使用されるリサンプリング方法を使用したサブトレーニングと検証セット)。iii)完全なトレーニングデータに設定された上位のハイパーパラメーターと上位の予測子を使用してモデルをトレーニングします。別のテストセットでテストします。
sma 2018年

ii)もう少し明確にするために、別のラウンドの相互検証で特徴選択を実行して上位予測子のセットを取得します(トレーニングデータは、ハイパーパラメーター最適化で使用されるリサンプリングメソッドを介してサブトレーニングと検証セットに分割されます。その後、特徴選択が実行されます。サブトレーニングデータ)。
SMA 2018年

または、最初に相互検証を介して機能選択を行い、最上位の機能セットを取得してから、(上記の相互検証のように)最上位の機能セットを使用して目的のモデルのハイパーパラメーター調整を行うことができますか?次に、既に決定された最上位の機能セットのみを使用して、完全なトレーニングデータで最適なハイパーパラメーターを使用してモデルをトレーニングし、別のテストセットでテストしますか?
sma 2018年

0

LIBSVMの場合、クロス検証はテストデータレベルで行われるため、誤用されているとは思いません。それが行うすべては、k分割交差検証とRBFカーネルの最適なパラメーターの検索です。あなたが同意しないことを知らせてください。


ハイパーパラメータの選択には、楽観的にバイアスされたパフォーマンス推定につながるため、テストデータが含まれるべきではありません。基本的にハイパーパラメータの選択は、SVMのフィッティングの不可欠な部分として扱われる必要があるため、テスト手順では、ハイパーパラメータの選択によるエラーもテストする必要があります。質問に対する回答で参照している私の論文を参照してください(オープンアクセスです)。
Dikran Marsupial 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.