第一篇
承接上文
在搭载好环境之后,满心欢喜准备搭载模型的绘图(损失曲线、验证精度)功能,我就先使用10个epoch跑一下,结果。
它卡在199/200了!之前从没遇到过这个情况。
先看控制台报错,说是导入CUDNN的DLL文件不成功,得,又得复制粘贴了。
接着跑,还是不成功。
网上很多报错都是pytorch版本得dataloader,不太能够适配。我就开始自身琢磨,我发现训练过程是没问题得,那么问题是出在我的valmodel,最后一步savemodel根本没走过去(QAQ深度学习不会打断点啊!)。
那我的数据集成功导入了,为什么没有接着往下走呢?原因如下:
大佬带来的启发
我一开始设置的history_fit中的steps_per_epoch大于validation_steps,导致训练完模型之后喂给模型的数据太多了导致OOM,内存溢出。
接下来就是把validation_steps调小即可。
如果你的steps_per_epoch为200,那么validation_steps就应该是100或者更小(不建议)。最后就成功啦!
关于history_fit中的steps_per_epoch大于validation_steps,想深入学习的可以点开下面两个链接。
steps_per_epoch和epoch如何设置
源码分析 steps_per_epoch 参数
以上。