2012-03-09 5 views
2

scikitsの2つのオプションについて興味があるだけで、SVMクラスを学ぶことができます。 Scale_Cと縮小は何をするのですか?ドキュメントにはそれほど多くはありませんでした。スケールCは、トレーニングデータに対してCパラメータを適切にスケーリングすることができると思われる。python scikits learn - SVMオプション

おかげ

答えて

2

scale_C=Trueは(DEVバージョンで非推奨と0.12で除去予定)それは下にあるLIBSVM実装に渡される前に、正則化パラメータCはサンプルの数で分割させます。

shrinkingは、Joachims 1999で説明されている「縮小ヒューリスティック」を有効または無効にします。これにより、SVMトレーニングがスピードアップされます。

+0

ありがとうございました。サンプル数でCを分けると、SVMトレーニングにどのように役立ちますか? – tomas

+0

@tomas:これを 'True'に設定すると、正規化はサンプル数に依存しなくなります。 'False'に設定されているときは、サンプル数が2倍になったら2倍しなければなりません。それは常に' True'に設定することをお勧めします。私はそれが将来の行動になると信じています。 –

+2

いずれの場合でも、Cの値は、開発セットのグリッド検索を相互検証することによって選択する必要があります。どちらも本質的に他のものより優れていません。あなたは、そのCの値がScikit-learnのdevバージョンのサンプル数によってはもはやスケールされていないことを知る必要があります。もしそれが絶対値に関心があり、それが目的関数(例えば、科学誌を出版するため) – ogrisel

関連する問題