深度学习tensorflow中已经有epoch参数了,为什么还要在train()中定义steps参数?

  • https://www.zhihu.com/question/300646749/answer/1354001318
  • epoch是全体训练数据过几遍,steps是模型会计算几次loss(排除一些快速训练的tricks,即模型参数会梯度更新几次)。
  • 当我们训练模型时,epoch变成了一个间接的关注对象,我们关系模型能更新多少次,这些才知道循环多少次,计算多少次loss。其实最主要的一点是训练步数与模型的参数会有相关关系,比如如果要采用自适应学习率,那每步都是有一个不同的学习率的。

https://stackoverflow.com/questions/38340311/what-is-the-difference-between-steps-and-epochs-in-tensorflow
An epoch consists of one full cycle through the training data. This is usually many steps. As an example, if you have 2,000 images and use a batch size of 10 an epoch consists of 2,000 images / (10 images / step) = 200 steps.
原文地址:https://www.cnblogs.com/yibeimingyue/p/15124587.html