Machine learning 增量(在线)反向传播停止标准

Machine learning 增量(在线)反向传播停止标准,machine-learning,neural-network,backpropagation,Machine Learning,Neural Network,Backpropagation,在反向传播人工神经网络的在线实现中,您将如何确定停止标准 我一直在做的方法(我确信这是不正确的)是平均每个输出节点的误差,然后平均每个历元的误差 这是一种错误的方法吗?是否有一种标准的停止在线实现的方法?你应该总是考虑一个与你的训练集分离的验证集上的错误(例如,均方根误差)。如果你训练的时间太长,你的神经网络就会开始过度适应。这意味着,训练集上的错误将变得最小,甚至为0,但常规数据上的错误将变得更严重 要最终得到产生最佳泛化性能的模型参数,您应该在验证集上的错误达到新的最小值时复制并保存模型参数

在反向传播人工神经网络的在线实现中,您将如何确定停止标准

我一直在做的方法(我确信这是不正确的)是平均每个输出节点的误差,然后平均每个历元的误差


这是一种错误的方法吗?是否有一种标准的停止在线实现的方法?

你应该总是考虑一个与你的训练集分离的验证集上的错误(例如,均方根误差)。如果你训练的时间太长,你的神经网络就会开始过度适应。这意味着,训练集上的错误将变得最小,甚至为0,但常规数据上的错误将变得更严重

要最终得到产生最佳泛化性能的模型参数,您应该在验证集上的错误达到新的最小值时复制并保存模型参数。如果性能有问题,则只能每N步执行一次此检查

在在线学习设置中,您将使用单个训练样本或少量训练样本的小批量进行训练。你可以考虑所有样本/迷你批次的连续训练,将你的总数据覆盖为一个训练时期。 有几种可能定义所谓的提前停止标准。例如,在每个完整的历元之后,您可以在验证集上考虑到迄今为止最好的RMS错误。一旦M时代没有新的最佳状态,您就会停止。根据问题的复杂性,您必须选择足够高的M。你也可以从一个很小的M开始,每当你得到一个新的最优值,你就把M设置为达到它所需要的历元数。这取决于快速收敛还是尽可能彻底更为重要


您总是会遇到验证和/或训练错误会暂时变大的情况,因为学习算法是爬山的。这意味着它会遍历错误表面上的区域,这些区域会导致糟糕的性能,但必须进行传递才能达到新的、更好的优化。如果在两个后续步骤之间验证或训练错误恶化时立即停止,您将过早地陷入次优解决方案

看起来还可以。当验证集上的错误最小时停止学习(即验证集开始增长)。@Stan抱歉,我指的是输出节点错误的平均值。