用LSTM做时间序列预测时发现训练刚开始时loss(MSE)下降很快,accuracy(调整R方)上升也很快,但到后面loss总体上下降变慢,并且时有波动,accuracy甚至会经常出现负值,然后又回弹至正值。经查阅资料和反复调试,发现是batch size太小的问题,原来的batch size是2,现在改成4
batch size为2时loss的变化如下
batch size 为4时loss的变化如下,虽然也有波动,比如在910epoch左右loss冲到了0.06,但总体上比batch size稳定
再来看accuracy
batch size为2时accuracy变化如下,蓝色训练集,红色测试集
batch size为4时accuracy变化如下,确实更稳定了
参考资料:https://www.zhihu.com/question/30263116/answer/130163865