解决TensorFlow训练模型及保存数量限制的问题

每次卷积神经网络训练的结果都只保存了最后一部分,查阅了一下相关资料,发现是定义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保存节点数来保存)。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • tensorflow-gpu安装的常见问题及解决方案

    装tensorflow-gpu的时候经常遇到问题,自己装过几次,经常遇到相同或者类似的问题,所以打算记录一下,也希望对其他人有所帮助 基本信息 tensorflow-gpu pip安装(virtualenv等虚拟安装实质也是pip安装,只是建了个独立的环境,不会影响系统环境,查问题比较容易,最多重新再创建一个干净的环境再来) 安装完之后会用import tensorflow看是否安装成功,结果报错,主要有碰到下面两大类报错信息: 1.ImportError: DLL load failed: 找

  • tensorflow实现训练变量checkpoint的保存与读取

    1.保存变量 先创建(在tf.Session()之前)saver saver = tf.train.Saver(tf.global_variables(),max_to_keep=1) #max_to_keep这个保证只保存最后一次training的训练数据 然后在训练的循环里面 checkpoint_path = os.path.join(Path, 'model.ckpt') saver.save(session, checkpoint_path, global_step=step) #这里

  • 解决tensorflow模型压缩的问题_踩坑无数,总算搞定

    1.安装bazel,从github上下载linux版的.sh文件,然后安装 2.从GitHub上下载最新的TensorFlow源码 3.进入TensorFlow源码文件夹,输入命令 bazel build tensorflow/tools/graph_transforms:transform_graph 这里会遇到各种坑,比如 ERROR: /opt/tf/tensorflow-master/tensorflow/core/kernels/BUILD:3044:1: C++ compilatio

  • 解决TensorFlow程序无限制占用GPU的方法

    今天遇到一个奇怪的现象,使用tensorflow-gpu的时候,出现内存超额~~如果我训练什么大型数据也就算了,关键我就写了一个y=W*x-显示如下图所示: 程序如下: import tensorflow as tf w = tf.Variable([[1.0,2.0]]) b = tf.Variable([[2.],[3.]]) y = tf.multiply(w,b) init_op = tf.global_variables_initializer() with tf.Session()

  • 解决TensorFlow训练模型及保存数量限制的问题

    每次卷积神经网络训练的结果都只保存了最后一部分,查阅了一下相关资料,发现是定义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为你想

  • 解决tensorflow模型参数保存和加载的问题

    终于找到bug原因!记一下:还是不熟悉平台的原因造成的! Q:为什么会出现两个模型对象在同一个文件中一起运行,当直接读取他们分开运行时训练出来的模型会出错,而且总是有一个正确,一个读取错误? 而 直接在同一个文件又训练又重新加载模型预测不出错,而且更诡异的是此时用分文件里的对象加载模型不会出错? model.py,里面含有 ModelV 和 ModelP,另外还有 modelP.py 和 modelV.py 分别只含有 ModelP 和 ModeV 这两个对象,先使用 modelP.py 和 m

  • Tensorflow加载预训练模型和保存模型的实例

    使用tensorflow过程中,训练结束后我们需要用到模型文件.有时候,我们可能也需要用到别人训练好的模型,并在这个基础上再次训练.这时候我们需要掌握如何操作这些模型数据.看完本文,相信你一定会有收获! 1 Tensorflow模型文件 我们在checkpoint_dir目录下保存的文件结构如下: |--checkpoint_dir | |--checkpoint | |--MyModel.meta | |--MyModel.data-00000-of-00001 | |--MyModel.in

  • 在tensorflow中设置保存checkpoint的最大数量实例

    1.我就废话不多说了,直接上代码吧! # Set up a RunConfig to only save checkpoints once per training cycle. run_config = tf.estimator.RunConfig(save_checkpoints_secs=1e9,keep_checkpoint_max = 10) model = tf.estimator.Estimator( model_fn=deeplab_model_focal_class_imbal

  • Tensorflow训练模型越来越慢的2种解决方案

    1 解决方案 [方案一] 载入模型结构放在全局,即tensorflow会话外层. '''载入模型结构:最关键的一步''' saver = tf.train.Saver() '''建立会话''' with tf.Session() as sess: for i in range(STEPS): '''开始训练''' _, loss_1, acc, summary = sess.run([train_op_1, train_loss, train_acc, summary_op], feed_dic

  • 解决tensorflow测试模型时NotFoundError错误的问题

    错误代码如下: NotFoundError (see above for traceback): Unsuccessful TensorSliceReader constructor: Failed to find any matching files for xxx -- 经查资料分析,错误原因可能出在加载模型时的路径问题.我采用的加载模型方法: with tf.Session() as sess: print("Reading checkpoints...") ckpt = tf.

  • 解决Tensorflow 内存泄露问题

    使用tensorflow进行编程时,经常遇到操作不当,带来的内存泄露问题,这里有一个可以帮助debug问题所在方法: https://stackoverflow.com/questions/51175837/tensorflow-runs-out-of-memory-while-computing-how-to-find-memory-leaks/51183870#51183870 使用tf.Graph.finalize()把运算图变成只读的,从而对图的修改都会报错,从而找到内存泄露的定点. 目

  • tensorflow将图片保存为tfrecord和tfrecord的读取方式

    tensorflow官方提供了3种方法来读取数据: 预加载数据(preloaded data):在TensorFlow图中定义常量或变量来保存所有的数据,适用于数据量不太大的情况.填充数据(feeding):通过Python产生数据,然后再把数据填充到后端. 从文件读取数据(reading from file):从文件中直接读取,然后通过队列管理器从文件中读取数据. 本文主要介绍第三种方法,通过tfrecord文件来保存和读取数据,对于前两种读取数据的方式也会进行一个简单的介绍. 项目下载git

  • 解决tensorflow读取本地MNITS_data失败的原因

    MNITS_data 下载保存在本地,一定不要解压!不要解压!不要解压!因为input_data读取的是压缩包 >>>import tensorflow as tf >>>from tensorflow.examples.tutorials.mnist import input_data >>>input_data.read_data_stes("/home/wd/MNIST_data",one_hot=True) WARNING:

  • TensorFLow用Saver保存和恢复变量

    本文为大家分享了TensorFLow用Saver保存和恢复变量的具体代码,供大家参考,具体内容如下 建立文件tensor_save.py, 保存变量v1,v2的tensor到checkpoint files中,名称分别设置为v3,v4. import tensorflow as tf # Create some variables. v1 = tf.Variable(3, name="v1") v2 = tf.Variable(4, name="v2") # Cre

随机推荐