我正在尝试在大约 300 万条记录的巨大数据集上评估 svm。这是一个具有 23 个特征的多类问题。目前 gridsearchcv 需要很长时间来迭代参数。有什么策略可以加快速度吗?我想 30 万条记录是一个合理的数字,我很困惑 CPU 使用率没有超过 30%,而 RAM 使用率限制为 50%。按照文档中的建议,我将 n_jobs 设置为 -1 和 pre_dispatch=1 。没有什么变化。根据我的输入,我预计总共有 24 次迭代。这是我的示例代码
from sklearn.multiclass import OneVsRestClassifier
from sklearn.grid_search import GridSearchCV
from sklearn import svm
model_to_set = OneVsRestClassifier(svm.SVC())
parameters = {
"estimator__C": [1,2,4,8],
"estimator__kernel": ["poly","rbf","linear"],
"estimator__degree":[1, 2, 3, 4],
}
model_tunning = GridSearchCV(model_to_set, param_grid=parameters,n_jobs=-1,pre_dispatch=1,
scoring='f1')
model_tunning.fit(mat[1:23], mat[0])
感谢任何帮助。