ファイナンス機械学習:交差検証によるハイパーパラメータの調整 練習問題 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)
ノードの数は同じでも、GridSearchCVの見つけた最適パラメータとは違うパラメータを見つけている。スコアは同じneg_log_lossで、RandomizedSearchCVのスコアの方が低い。また、見つけるまでのフィッティングの回数も時間も早い。