在模型训练时,我们可以观察到两个明显的指标就是train losstest loss,我们可以通过两者差异分析模型所遇到的问题,一般存在以下的情况:

  • train loss 不断下降,test loss 不断下降,说明网络仍在学习;
  • train loss 不断下降,test loss 趋于不变,说明网络过拟合;
  • train loss 趋于不变,test loss 不断下降,说明用于模型训练的数据集有问题;
  • train loss 趋于不变,test loss 趋于不变,说明网络学习遇到瓶颈,需要减少学习率或者批量数目
  • train loss 不断上升,test loss 不断上升,说明模型结构设计有问题,无法正确处理当前任务,或者训练的超参数设置有问题,或者数据集有问题

一般来说,最好的结果就是train loss和test loss下降到一个比较小的值就不再下降,且train loss和test loss相差不是很大,这个时候说明网络在当前数据集上训练到了一个好的状态,不过主要是看模型在测试集上的测试结果。