【发布时间】:2020-09-15 20:14:40
【问题描述】:
我编写了一个简单的 Python 脚本,它使用 sklearn.neural_network.MLPClassifier 和 sklearn.model_selection.GridSearchCV 对二进制分类数据进行预测,每个点都标记为 0 或 1。在训练数据中,大约 90% 的标记为 1 和10% 的标签为 0。在测试数据中,大约 35% 的标签为 1,65% 的标签为 0。这个比例是已知的,尽管标签是未知的。
我的模型目前过度拟合。我对训练数据的交叉验证分数是 85-90%,但我在测试集上运行代码时的分数低于 40%。
我想到的一种解决方法是,我可以尝试设置 GridSearchCV 来拆分数据,以便每个训练/验证集的标签比例与测试数据大致相同。然而,这似乎不是这个库的一个选项,而且我的 google-fu 没有返回任何关于其他 sci-kit 学习程序的结果。
是否有任何其他库我可以使用,或者我可以输入我没有设法找到的参数?谢谢。
【问题讨论】:
标签: python scikit-learn cross-validation