SVM rbfカーネル-ガンマを推定するためのヒューリスティックな方法


8

この交換で、SVMのrbfカーネルのガンマを推定するヒューリスティックな方法を読みました。誰かがもう少し詳しく説明してくれるのではないかと思いました。データセットから1000(または多数)のデータポイントのペアを選択し、各ペアの差のノルムを計算すると思います。どうやら、.1、.9の分位数と中央値の逆数は、rbfカーネルに適したガンマの良い候補です。

ありがとう


重複する質問に対するこの回答も参照してください
denis

回答:


8

まず第一に、計算コスト以外に、データセット全体を使用しない理由はありません。ラベル情報を使用しない限り、データから取得できるすべての情報を使用しない理由はありません。

距離の分位数が優れたヒューリスティックなのはなぜですか?SVM問題の解決策は、サポートベクトルにあるRBFカーネルの線形結合です。学習フェーズでは、最適化によりれ、正しい分類を維持しながらマージンが最大化されます。Σyαexpγ||バツバツ||2α

現在、選択には2つの極端なケースがあります。γ

  1. が非常に小さいことを想像してください。これは、RBFカーネルが非常に広いことを意味します。RBFカーネルがデータセットのすべてのデータポイントに対して十分に正であるほど広いと仮定します。カーネルが広すぎるため、単一の値を変更するとすべてのデータポイントの決定関数が変更されるため、これはおそらくオプティマイザに困難な作業を与えます。γα
  2. もう1つの極端な状況は、が大きい場合です。これは、RBFカーネルが非常に狭いことを意味します。そのデータポイントのを変更すると、SVMの決定関数は基本的にそのデータポイントのみで変更されます。これは、おそらくすべてのトレーニングベクトルがサポートベクトルになることを意味します。これは明らかに望ましくありません。γα

ヒューリスティックが適切な選択であることを確認するには、特定の値が、カーネルが特定の値よりも大きくなるRBFカーネルの境界を決定することを認識する必要があります(Normalのone- -quantileなど)分布)。ペアワイズ距離の変位値に従って選択することにより、データポイントの特定の割合がその境界内にあることを確認します。したがって、データのを変更すると、実際には、特定のパーセンテージのデータポイントの意思決定関数にのみ影響します。そのパーセンテージの選択方法は学習問題によって異なりますが、すべての決定関数またはγσγα1つのデータポイントのみ


多くの理にかなっているfabeeに感謝します。私のデータセットで交差検証+グリッド検索を実行するための計算コストが気になります。私は時系列も扱っているため、k分割ではなくローリングウィンドウタイプのクロス検証を行います。あなたがいくつかのスピードアップの提案を持っている場合は間違いなくそれらに開いています。または、従属(自己相関)時系列データの処理に関する提案。ありがとう。
tomas

申し訳ありませんが、頭の上からの良い提案はありません。問題は、データがもはやiidではないことです。自己相関を取り除く簡単な方法の1つは、自己回帰モデルをトレーニングし、データポイントから予測を差し引くことです。これは本質的にホワイトニングです。
fabee

1

うん!いわゆる「メジアントリック」について説明しています。

私は上記の答えの背後にある直感が本当に好きです。また、RBFの分散の逆であるとして、 を選択する問題を理解する方が簡単だと思います は、RBFが γ

γ=12σ2
φバツ=eバツバツ22σ2

これで、良いを検索する問題は、ガウス関数(スケーリング係数を引いたもの)の良い分散を探すことと本質的に同じであることは明らかです。γ

これを行うには、分散推定器を使用しますが、ようないくつかのからの平均二乗距離を介して分散を計算する代わりに、その二乗距離で分位数を計算します。バツE[バツバツ2]

上記のポスターで述べたように、変位値を使用すると、ガウス関数の1つ(または2つ、または3つ)の標準偏差内にあるデータポイントの数を制御できます。

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