【发布时间】:2020-06-18 07:41:28
【问题描述】:
对于机器学习分类,我使用 10 折交叉验证:
kfold = StratifiedKFold(n_splits=10)
我拆分训练/测试数据:
X_train, X_test, Y_train, Y_test = model_selection.train_test_split(X, y, test_size=0.3 )
对于一个分类器,得到 10 倍的准确率均值:
cross_val_score(classifier, X_train, y=Y_train, scoring='accuracy', cv=kfold, n_jobs=4))
这给了我 0,62 的准确度平均值。
为了确认准确度值,我做了一个预测:
Y_pred_train = classifier.predict(X_train)
print(metrics.classification_report(Y_train, Y_pred_train))
我得到: 精确召回 f1 分数支持
0 0.92 0.96 0.94 2523
1 0.95 0.89 0.92 1923
accuracy 0.93 4446
宏观平均 0.93 0.93 0.93 4446 加权平均 0.93 0.93 0.93 4446
此准确性与上述不匹配。 怎么解释? 非常感谢。 泰奥
【问题讨论】:
标签: python python-3.x machine-learning cross-validation