小编M_1*_*_13的帖子

在 sklearn 中运行 10 倍交叉验证后如何运行 SVC 分类器?

我对机器学习比较陌生,希望在以下方面得到一些帮助:

我使用 10 倍交叉验证对我的数据运行了支持向量机分类器 (SVC),并计算了准确度得分(约为 89%)。我正在使用 Python 和 scikit-learn 来执行任务。这是一个代码片段:

def get_scores(features,target,classifier):
  X_train, X_test, y_train, y_test =train_test_split(features, target , 
    test_size=0.3)
    scores = cross_val_score(
    classifier,
    X_train,
    y_train,
    cv=10,
    scoring='accuracy',
    n_jobs=-1)
 return(scores)

get_scores(features_from_df,target_from_df,svm.SVC())
Run Code Online (Sandbox Code Playgroud)

现在,我如何使用我的分类器(在运行 10 倍 cv 之后)在 X_test 上对其进行测试并将预测结果与 y_test 进行比较?您可能已经注意到,我在交叉验证过程中只使用了 X_train 和 y_train。

我注意到 sklearn 有 cross_val_predict:http : //scikit-learn.org/stable/modules/generated/sklearn.model_selection.cross_val_predict.html 我应该用 cross_val_predict 替换我的 cross_val_score 吗?仅供参考:我的目标数据列是二值化的(值为 0 和 1)。

如果我的方法是错误的,请告诉我最好的处理方法。

谢谢!

python machine-learning svm cross-validation

1
推荐指数
1
解决办法
9702
查看次数

标签 统计

cross-validation ×1

machine-learning ×1

python ×1

svm ×1