我已经为OCR实施了NN。我的计划获得了相当多的成功认可,但最近(两个月前)它的表现下降了约23%。在分析数据后,我注意到图像中出现了一些新的不规则性(附加扭曲,噪声)。换句话说,我的nn需要学习一些新数据,但也需要确保它不会忘记旧数据。为了实现它,我训练NN混合了新旧数据,我尝试的非常棘手的功能是防止权重变化很大(最初我限制的变化不超过3%,但后来接受了15%)。还有什么可以做的,以帮助NN不要忘记"旧数据?
答案 0 :(得分:1)
这是一个目前正在积极研究的一个很好的问题。
听起来好像你的原始实现已从其原始数据集中过度学习,使其无法有效地推广新数据。有许多技术可以防止这种情况发生:
我个人会在尝试限制神经元在每次迭代中学习的方法之前尝试这些技巧。如果使用Sigmoid或Tanh激活,则.5(sigmoid)或0(tanh)附近的值将具有较大的导数并且将快速变化,这是这些激活的优点之一。要达到类似但不那么突兀的效果:玩你的学习常数。我不确定你的网的大小,或你的样本数量,但尝试学习常数〜.01