|
|
1
1
事实上,您可以在一些代码中看到这一点,我们知道标记的数据非常有价值,所以您不想丢失一些宝贵的标记示例。乍一看,它看起来像一个bug,似乎我们正在丢失一些训练示例,但我们必须仔细查看代码。
一般来说,当你在每个历元看到它时,就像你发送的代码一样(基于一个历元看到的事实)
小结论:如果您看到了这一点,请确保数据在每个历元都被洗牌,否则您的网络可能永远看不到一些训练示例。 : 训练步骤 批量大小 示例,并且您不会使用少量的培训示例执行培训循环。
它更严格
当前位置假设您只剩下一个示例,并且您没有洗牌。在每个时期,假设您的损失是该批次的平均损失,对于最后一个示例,它将相当于重复一个由一个元素组成的批次
我还要在文章中补充一点,如果您使用诸如批处理规范化之类的机制,最好在培训期间保持恒定的批处理大小,例如,如果
注: 我所说的是在一个训练周期内,而不是在整个训练周期内(多个训练周期)保持恒定的批量大小,因为即使通常是这样(在整个训练过程中保持恒定),您也可以找到一些研究工作来修改训练期间的批量大小,例如。 Don't Decay the Learning Rate, Increase the Batch Size |