在python中使用MLP分类器的不平衡数据集

时间:2017-06-17 22:33:09

标签: python-3.x scikit-learn neural-network

我正在处理不平衡的数据集,我尝试使用MLP分类器制作预测模型。不幸的是,算法将测试集中的所有观察分类为类“1”,因此分类报告中的f1分数和召回值为0.有人知道如何处理它吗?

model= MLPClassifier(solver='lbfgs', activation='tanh')
model.fit(X_train, y_train)
score=accuracy_score(y_test, model.predict(X_test), )
fpr, tpr, thresholds = roc_curve(y_test, model.predict_proba(X_test)[:,1])
roc=roc_auc_score(y_test, model.predict_proba(X_test)[:,1])
cr=classification_report(y_test, model.predict(X_test))

1 个答案:

答案 0 :(得分:0)

处理不平衡数据集的技术很少。可以使用完全专用的python库“imbalanced-learn”here。但是在特定情况下应该谨慎使用哪种技术。

https://svds.com/learning-imbalanced-classes/

也提供了一些有趣的例子