作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我经常面临的一个问题,但似乎在任何地方都找不到答案。我有一个包含 700 个样本的数据集。因此,我必须使用交叉验证,而不是仅使用一个验证和一个测试集来精确估计错误。
我想使用神经网络来做到这一点。但是,在使用神经网络进行 CV 并获得误差估计后,如何在整个数据集上训练神经网络?因为对于 Logistic 回归或 SVM 等其他算法来说,不存在何时停止训练的问题。但对于神经网络来说,你需要训练它直到验证分数下降。那么,对于最终模型,在整个数据集上进行训练,你如何知道何时停止?
澄清一下,我的问题不是如何使用神经网络选择超参数。我可以通过使用嵌套简历来做到这一点。我的问题是在野外应用之前如何在整个数据集上训练最终的神经网络(更具体地说何时停止)?
最佳答案
重新表述您的问题:
“训练神经网络时,常见的停止标准是“早期停止标准”,当验证损失增加(信号过度拟合)时停止训练。对于训练样本宝贵的小数据集,我们更愿意使用一些其他标准并使用 100% 的数据来训练模型。”
我认为这通常是一个难题,所以我对您没有找到简单的答案并不感到惊讶。我认为你有几个选择:
最后,您不能在这里使用神经网络。一般来说,这些模型在处理大量训练数据时效果最好。在这种有 700 个样本的情况下,您可能可以使用其他算法获得更好的性能。
关于python - 交叉验证后如何训练最终的神经网络模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46438060/
我是一名优秀的程序员,十分优秀!