tensorflow中模型训练保存与断点续训

  • 图保存与加载
    • 图保存
          with tf.Session() as sess:
              tf.train.write_graph(sess.graph_def,'./tfmodel','test_pb.pb',as_text=False)
      
    • 图加载
          with tf.Session() as sess:
              with tf.gfile.FastGFile('./tfmodel/test_pb.pb','rb') as f:
                  graph_def=tf.GraphDef()
                  graph_def.ParseFromString(f.read())
                  sess.graph.as_default()
                  tf.import_graph_def(graph_def,name='tf.graph')
      
    • 建立图
          tf.Graph()
      
    • 获得默认图
          tf.get_default_graph()
      
    • 重置默认图
       tf.reset_default_graph()
      
  • 模型保存和加载
    • 模型保存
          # 模型保存
          saver = tf.train.Saver()
          saver.save(sess, os.path.join(ckep_dir,
                                        'mnist_h256_model_{:06d}.ckpt'.format(epoch + 1)))  # 模型存储
      
    • 模型恢复
          # 模型恢复
          ckpt = tf.train.get_checkpoint_state(ckep_dir)
      
          if ckpt and ckpt.model_checkpoint_path:
              # 从已保存的模型中读取参数
              saver.restore(sess, ckpt.model_checkpoint_path)
      
    • 断点续训
         # 检查日志存放目录
         ckpt_dir = "CIFAR10_log/"
         if not os.path.exists(ckpt_dir):
             os.makedirs(ckpt_dir)
      
         # 生成saver
         saver = tf.train.Saver()
      
         # 如果有检查点文件,读取最新的检查点文件,恢复变量值
         ckpt = tf.train.latest_checkpoint(ckpt_dir)
         if ckpt != None:
             saver.restore(sess, ckpt)  # 加载所有的参数
         else:
             print("Training from scratch")
      
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

锋年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值