知乎:深度学习为什么会出现validation accuracy大于train accuracy的现象?
概括他们的答案:
- validation的样本数量一般远小于training的
- val的时候是用已经训练了一个epoch的model进行测试的(经过大量的训练学习到东西了)
- data augmentation把训练集变得丰富,制造数据的多样性和学习的困难来让network更robust(比如旋转,随机crop,scale),但是val和test的时候一般是不对数据进行data augmentation的
- 各种正则化,dropout在训练集上使用,却不会在验证集上使用,导致训练集的 loss 偏大