希望获得确切的逆预测结果吗? -sklearn预测完全错误

时间:2019-10-31 07:53:25

标签: python pandas scikit-learn neural-network confusion-matrix

我的模型正在预测完全错误的结果。对于两类分类问题,存在很多假阳性和假阴性。事实上,如果我能得到相反的结果,我会得到很好的结果。因此,我有一个简单的代码段,如下所示:

clf = neural_network.MLPClassifier(solver='lbfgs', alpha=1e-5
                                   , hidden_layer_sizes=(5, 2)
                                   , random_state=1, max_iter=5000)
clf.fit(X_train, y_train)
print('TRAIN')
print(classification_report(y_train, clf.predict(X_train)))
print(confusion_matrix(y_train, clf.predict(X_train)))
print('\nTEST')
print(classification_report(y_test, clf.predict(X_test)))
print(confusion_matrix(y_test, clf.predict(X_test)))

混乱矩阵就像

[[2 7]
 [8 2]]

因此,我可以使用类似

的输出
[[8 2]
 [2 7]]

如何在不直接操作结果的情况下实现这一目标? 预先感谢。

1 个答案:

答案 0 :(得分:1)

如果您有原始数据框:

X,y

您做到了:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)

然后,该代码是正确的。这意味着不要更改输出中的任何内容。您可以这样做,再进行一次训练/测试拆分,看看结果如何变化。 您只是有一个错误的分类器,但不要手动对其进行调整,这就是废话。