ファイナンス機械学習:交差検証によるハイパーパラメータの調整 練習問題 RondomizedSearchCV

 前記事で用いた合成データセットで、10分割CVのRandomizedSearchCVを行う。

ただし、今回は、ハイパーパラメータは対数一様分布とする。

from scipy.stats import loguniform

param_distributions = {'C':loguniform(a = 1e-2, b= 1e2),
                      'gamma':loguniform(a = 1e-2, b= 1e2)}

Rclf = RandomizedSearchCV(estimator = svm, 
                          param_distributions = param_distributions,
                          n_iter = 25, 
                          scoring='neg_log_loss', 
                          n_jobs=None, 
                          refit=True,
                          cv= cv, 
                          verbose=10)

Rclf.fit(X,y['bin'],sample_weight = None)
printHSResult(clf = Rclf, cv = cv)
RandomizedSearchCV with neg_log_loss

ノードの数は同じでも、GridSearchCVの見つけた最適パラメータとは違うパラメータを見つけている。スコアは同じneg_log_lossで、RandomizedSearchCVのスコアの方が低い。また、見つけるまでのフィッティングの回数も時間も早い。

いいなと思ったら応援しよう!