tensorflow:实现断点续训【转载】

原文链接:https://blog.csdn.net/qq_25987491/article/details/80529435


saver = tf.train.Saver() #用于保存神经网络结构,构造方法可以传参数,参数可以是dict和list。不传参数时默认保存所有变量  
    with tf.Session() as sess:  
        tf.initialize_all_variables().run() #初始化所有变量  
        ckpt = tf.train.get_checkpoint_state(MODEL_SAVE_PATH) #获取checkpoints对象  
        if ckpt and ckpt.model_checkpoint_path:##判断ckpt是否为空,若不为空,才进行模型的加载,否则从头开始训练  
            saver.restore(sess,ckpt.model_checkpoint_path)#恢复保存的神经网络结构,实现断点续训  
        for i in range(TRAINING_STEPS):  
            xs, ys = mnist.train.next_batch(BATCH_SIZE) #产生这一轮的训练数据  
            _, loss_value, step = sess.run([train_op, loss, global_step], feed_dict={x: xs, y_: ys})  
            if i % 1000 == 0:  
                print("After %d training step(s), loss on training batch is %g." % (step, loss_value))  
                saver.save(sess, os.path.join(MODEL_SAVE_PATH, MODEL_NAME), global_step=global_step)#保存神经网络结构
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值