🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连
🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️

0-9

情况一:磁盘空间不足,导致训练过程中正在生成的模型保存失败,从而resume训练时,加载报错


这个截图 是这个博主的分析,比较详细,就不再赘述了,本博文主要进一步记录遇到这种报错,可以采取的解决方法示例

1-0

Resume 训练 代码分析

在 Resume 训练时,通常需要修改的 命令 参数如下:

1-1

Resume 训练示例如下,节选自这篇博文 基于无监督退化表示学习的 Blind SR | 环境搭建 | 训练简记【更新补充】|【CVPR2021】

  • 举这个示例,是因为,可以看到 这个代码的 Resume 训练,log 是可以接着按照你 start_epoch 的设置进行记录

1-2

训练过程,每隔固定次数,进行模型保存

这种训练,模型保存策略的优点:

  • 可以解决我们训练中断(断电、磁盘空间不足)的问题,resume 训练即可
  • 代码逻辑中要有 resume 训练的判断
  • 有很多训练任务,学习率是随着epoch动态调整的,这里学习率变化也需要有对应的逻辑

这种训练,模型保存策略的缺点:

  • 主要的一个缺点,模型如果比较大,频繁保存,会对磁盘空间消耗较大

  • 但是,如果模型是 GAN 网络模型,在一些特别任务的训练中,缺乏 定量 评价指标,需要多次保存不同 epoch 的中间生成模型,手动使用 测试集 进行效果评测

  • 举个例子:在风格迁移任务训练中,GAN 模型每次保存有 1.2 G 大小,训练代码中 缺乏 定量的评测指标,此时,我只能选择 每隔 N 次训练,保存一次模型;在一次训练任务中,我可能保存了 100 次,导致磁盘空间占用较大,这种情况,在工作中,要和同事说明、协商好磁盘空间的使用

情况二:模型在Copy、传输的时候数据丢失,复制不完整


这种情况通过检查模型大小,或者 md5sum 命令对比两个文件 可以用来 判断 两个文件是否是同一份


# md5sum  查看普通文件

md5sum Definitions.h 

9176014a7908ef9fe33b5f19fb0d2d10  Definitions.h

# md5sum  查看 so 库

md5sum  libopencv_core.so

523656f3490a0f732f66f2b8f2aabafc  libopencv_core.so


精选专栏


计算机视觉领域 八大专栏、不少干货、有兴趣可了解一下

9-9

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐