libsvm (e1071) のグリッドサーチで2点ほど。
実行環境は windows です。 グリッドサーチの分割方法グリッドサーチの際、常に分割は同じなのか。 例えば、 cross=3 と指定して、複数回実行したら、 常に同じデータが同じグループになって実行されるのか。 毎回ランダムなデータがランダムにグループ分けされて実行されるのか。 ソースを見てみたところ、 R で書かれたソース(tune.R)では、特にランダマイズされていなかったが、 C で書かれたソース(Rsvm.c)では、ランダマイズされていた。 windows で実行する場合は、 多分 R ファイルを実行するのではなく dll を呼んでいると思うので、 ということであれば、毎回ランダムなのだろうなぁと思う。 想像でしかないのだが。 グリッドサーチの結果の正答率SVM のチューニングのしかた(2) - ほくそ笑む http://d.hatena.ne.jp/hoxo_m/20110325/p1 で、以下のようにある。 グリッドサーチの結果としてベストパラメータを出力しています。上記のプログラムを実行すると、結果は下記のように出ました。 gamma=0.1, cost=1 のときに、cross=3 であれば、 3回の svm が実行されていると思うのだが、 accuracy は一体何の数字なのか。 割とあっさり 100% が出たりするが、 3回実行してそう簡単に 100% が出るとは考えづらいので、 加算平均ではないような気がする。 てことは、3回の中の最高正答率なのかなという気もするが、 100% のときは dispersion (分散)も 0 と出るので、 やっぱり加算平均かもしれない。 なわけで、ソースを見てみた。 結果、3 回実行の中での平均値を選択していた。 それはそれでなんかびっくり。 3 回実行を更に複数回す設定 (nrepeat) をしている場合は、 nrepeat 回の中での最小エラー率が選択されるので、 やっぱりエラー率は 3 個得られて、 そこから平均を出すぽい。 あっさり 100% が出ても、 平均を取った結果の 100% なら、 ある程度の余裕を持って識別境界が決定されていて、 オーバーフィッティングの心配はないと思っていいのかな。
by xiaoxia
| 2015-05-20 19:35
| プログラム言語
|
カテゴリ
以前の記事
2022年 12月 2021年 05月 2019年 12月 2018年 12月 2018年 05月 2018年 03月 2017年 03月 2017年 02月 2016年 08月 2016年 04月 more... 最新の記事
最新のトラックバック
ライフログ
今読んでる
その他のジャンル
記事ランキング
ブログジャンル
|
ファン申請 |
||