当前位置:  开发笔记 > 编程语言 > 正文

Deeplearning4j:Iterations,Epochs和ScoreIterationListener

如何解决《Deeplearning4j:Iterations,Epochs和ScoreIterationListener》经验,为你挑选了1个好方法。

大家下午好.

我是Deepleaning4j库的新手,还有一些我还不清楚的东西."时代"的概念并不新鲜,因此很明显它代表了训练集的一个完整周期.我的第一个疑问与"迭代"的概念有关.什么是训练集的迭代?它是否对应于小批量训练实例或其他内容的分析?

在我的代码中,我设置了".iterations(1)"; 但是,当我运行我的代码时,我看到了很多:

... ScoreIterationListener - 在迭代XX得分是yy.yyyyyy"

所以,如果我设置".iterations(1)",为什么我继续看到XX的值大于1?"迭代"作为网络配置参数和"迭代"对ScoreIterationListener类意味着什么?

感谢大家对任何有用信息的回答或链接.

最好,毛罗.



1> 小智..:

该DeepLearning4J文档有一些很好的见解,尤其是对于一个时代和迭代之间的区别.

根据DL4J的文档:

" 一个迭代是简单的神经网络模型参数的一个更新.为了不被混淆的时代这是一个完整的遍历数据集.之前的时代已经过去,可能会发生多次迭代.时代,如果你更新迭代只代名词你每次通过整个数据集的参数一次;如果你使用迷你批次更新,它们意味着不同的东西.假设你的数据有2个小批量:A和B. .numIterations(3)执行类似AAABBB的训练,而3个时期看起来像ABABAB. "

关于您的问题以及此摘录所引用的,如果您设置.iterations(1)并且只有一个批次,则迭代将与1个纪元同义,或者一个遍历整个数据集.但是,如果使用迷你批次进行更新,则时期和迭代会略有不同 - 迭代将导致AAABBB而非生成ABABAB的时期(由上面的示例引用).

希望这个答案和文档链接回答你的问题!

PS我为迟到的回复道歉; 我最近偶然发现了这个问题!

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有