【发布时间】:2015-11-04 02:21:31
【问题描述】:
我有一个数据集,之前已分为 3 组:训练、验证和测试。为了比较不同算法的性能,必须按照给定的方式使用这些集合。
我现在想使用验证集优化我的 SVM 的参数。但是,我找不到如何将验证集显式输入sklearn.grid_search.GridSearchCV()。下面是我之前用于在训练集上进行 K 折交叉验证的一些代码。但是,对于这个问题,我需要使用给定的验证集。我该怎么做?
from sklearn import svm, cross_validation
from sklearn.grid_search import GridSearchCV
# (some code left out to simplify things)
skf = cross_validation.StratifiedKFold(y_train, n_folds=5, shuffle = True)
clf = GridSearchCV(svm.SVC(tol=0.005, cache_size=6000,
class_weight=penalty_weights),
param_grid=tuned_parameters,
n_jobs=2,
pre_dispatch="n_jobs",
cv=skf,
scoring=scorer)
clf.fit(X_train, y_train)
【问题讨论】:
标签: python validation scikit-learn cross-validation