每次卷积神经网络训练的结果都只保存了最后一部分,查阅了一下相关资料,发现是定义saver时采用的默认值,这里进行如下设置:
saver = tf.train.Saver( max_to_keep = 100 , keep_checkpoint_every_n_hours = 1 )
补充:解决TensorFlow只能保存5个模型的问题
在训练模型的代码中找到这句代码:tf.train.Saver(),
改成:
tf.train.Saver(max_to_keep = m) # m为你想保存的模型数量
Saver类中的可选参数
tf.train.Saver(max_to_keep = m, keep_checkpoint_every_n_hours = n)
max_to_keep保存离当前训练最近的模型数量,默认值为5。如果想全部保存,并且电脑内存够用,设成多大都可以。
keep_checkpoint_every_n_hours每隔n个小时保存一次模型,默认值为10,000(一般情况下应该不会训练这么长时间,所以相当于是不会按照时间来保存,按照设置的epoch保存节点数来保存)。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持呐喊教程。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。