【发布时间】:2021-08-29 03:31:43
【问题描述】:
我目前正在调整我的 SVM 分类器的超参数。 我当前的实现使用带有 brier_score_loss 评分指标的 SKlearn gridsearchCV。
通过阅读文档,brier_score_loss 将概率作为输入,并为 SKlearn SVC 实现概率 = True 在内部进行 5 折交叉验证。
是否需要对gridsearch进行交叉验证,还是内部5折交叉验证就足够了?
例如,下面我有两种实现,一种使用 5-fold gridsearchCV,另一种仅使用 1 fold。
params = {
"C": np.logspace(-3, 17, 21),
"gamma": np.logspace(-20, 1, 21)
}
grid_search_5_fold = GridSearchCV(estimator = SVC(probability = True),
param_grid = params,
scoring = 'neg_brier_score',
n_jobs = -1,
verbose = 2)
grid_search_1_fold = GridSearchCV(estimator = SVC(probability = True),
param_grid = params,
scoring = 'neg_brier_score',
n_jobs = -1,
verbose = 2,
cv = 1)
grid_search_5_fold.fit(x_train, y_train)
grid_search_1_fold.fit(x_train, y_train)
【问题讨论】:
标签: python machine-learning scikit-learn svm hyperparameters