Epoch到底多不多余?
有人对这个观点表示赞同:
但调参侠觉得让每个样本被定期使用就是他怀疑的点,IID抽样已经确保分布相同了,再让他们同频率被使用就是一种误导。 反对者认为:
调参侠最后总结道,这个争议有点像统计学里的“频率派 VS 贝叶斯派”,即认为数据集到底应该是确定的还是不确定的。 该怎么比较模型?调参侠还注意到,有人用Batch Loss做损失曲线。他认为这比Epoch Loss更有参考价值。 反对者觉得,你这个方式是挺好的,但Epoch依然有用。 因为即使在相同的硬件上,不同模型的算法效率不同也会带来巨大差异。
最后,有个网友以CV模型为例对这个话题做出精彩总结,列了4种损失可视化方式,并介绍了什么情况该用哪个。 Loss/Epoch告诉你一个模型要观察同一个图像多少次才能理解它。 Loss/Iteration告诉你需要多少次参数更新。当比较优化器时这很有用,可以帮助你加快训练速度或达到更高的精度。 Loss/Total Image Seen告诉你算法看到了多少图像时的损失。适合比较两种算法使用数据的效率。 如果你的算法在50万张时达到70%、100万张时达到75%,这可能比50万张时达到50%,100万张时达到80%的还要好。 另外,它还消除了Batch Size的影响。这允许在不同GPU上训练的具有不同Batch Size的模型之间进行公平的比较。 Loss/Time也很重要,因为如果一个新模型减少了100个Epoch,但每个Iteration都慢100倍,我就不会选择这个模型。
虽然Loss/Time关系到硬件的具体表现,不够精准,我不会把这个写到论文里。但在自己的机器上这是很好的评估模型的参数。 (编辑:开发网_开封站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |