- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
TL;DR:为什么我们不能使用tf.saver.Save(graph=graph_obj)
之类的东西来定义一个saver对象?
标题基本上说明了一切......据我所知,为了将保护程序对象链接到您的图表,您需要像这样定义它
with tf.Graph().as_default() as g_def:
x_input_fun = tf.placeholder(dtype=tf.float32, name='input')
y_output_fun = tf.placeholder(dtype=tf.float32, name='output')
w_weights_fun = tf.get_variable('weight_set', dtype=tf.float32, shape=(5,5))
output = tf.matmul(x_input_fun, w_weights_fun, name='pred')
loss = tf.subtract(output, y_output_fun, name='loss')
self.opti = tf.train.AdamOptimizer(loss, name='opti')
g_def.add_to_collection(tf.GraphKeys.TRAIN_OP, self.opti)
# Now the saver is linked to this graph when we do saver.save(...)
saver = tf.train.Saver()
如果你想将它链接到默认图表,你只需要说tf.train.Saver()
(当然如果你有可训练/可保存的变量)。
但是为什么我们不能这样做:tf.train.Saver(graph=g_def)
?
这对我来说感觉更自然。当我们从检查点恢复模型时,类似的情况(对我来说)成立......即使我们执行以下代码
with tf.Session(graph=tf.Graph()) as sess:
saver = tf.train.import_meta_graph('some_meta_file.meta')
saver.restore(sess, './some_meta_file')
然后tf.default_graph()
仍然从导入的元文件中获得了节点。我可以想到它如何工作的原因...但现在为什么呢?
编辑:
我在检查导入图的节点时犯的一个错误如下。我运行了这段代码
with tf.Session(graph=tf.Graph()) as sess:
saver = tf.train.import_meta_graph('some_meta_file.meta')
saver.restore(sess, './some_meta_file')
print(sess.graph == tf.get_default_graph())
因为我想确保默认图表不包含我刚刚导入到 session 图表中的节点。然而,这个 tf.get_default_graph() 当然是..相对的..因此在这个 session 中默认图实际上是导入的图。
因此,这也使得保护程序对象的工作更加合乎逻辑。由于该对象将始终保存/获取 tf.get_default_graph() 的内容。
最佳答案
为了保存或恢复任何内容,tf.train.Saver
需要一个 session ,并且 session 绑定(bind)到特定的图形实例(如您的示例中所示)。这意味着如果没有 session ,保护程序实际上毫无意义。我想这是不在保护程序中进行显式图形绑定(bind)的主要动机。
我认为您可能感兴趣的是 tf.train.Saver
中的 defer_build
属性:
defer_build
: IfTrue
, defer adding the save and restore ops to thebuild()
call. In that casebuild()
should be called before finalizing the graph or using the saver.
通过这种方式,您可以创建一个不绑定(bind)到任何图形的 tf.train.Saver
,并稍后针对特定的 tf.Graph 调用
实例。build()
关于python - 在预定义的图形对象上使用 tf.train.Saver 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48169666/
TensorFlow 提供了 3 种不同的数据存储格式 tf.train.Feature .它们是: tf.train.BytesList tf.train.FloatList tf.train.In
在我的设置中,我运行了一个脚本 火车一个模型并开始生成检查点。另一个脚本监视新的检查点和 评估 他们。脚本并行运行,因此评估只是训练之后的一步。 支持这种情况的正确 Tracks 配置是什么? 最佳答
什么是合理的设置?我可以在同一次执行中多次调用 Task.init() 吗? 最佳答案 免责声明:我是 allegro.ai Trains 团队的一员 一种解决方案是从 trains.automati
我想开始我的方式 ClearML (以前称为火车)。 我在documentation上看到的我需要在 ClearML 平台本身或使用 AWS 等的远程机器上运行服务器。 我真的很想绕过这个限制并在我的
我正在尝试使用 weka 的 MultilayerPerceptron 执行以下操作: 使用一小部分训练实例来训练一部分历元输入, 在剩余的周期中使用整组实例进行训练。 但是,当我在代码中执行以下操作
这个问题与对象检测有关,基本上是检测任何“已知”对象。例如,假设我有以下对象。 表格 瓶子。 相机 汽车 我将从所有这些单独的对象中拍摄 4 张照片。左边一个,右边一个,上下两个。我本来以为用这4张照
我已经编写了一段代码来训练Guassian过程回归模型来预测年龄。我已经编写了以下代码,并且运行良好:。但我注意到,每个纪元都输入了相同的数据,我认为这可能会导致过度拟合,所以我想使用Mini Bat
(一)、tf.train.Saver() (1). tf.train.Saver() 是用来保存tensorflow训练模型的,默认保存全部参数 (2). 用来加载参数,注:只加载存储在data
我是 PyTorch 的新手,我想知道您是否可以向我解释 PyTorch 中的默认 model.train() 与此处的 train() 函数之间的一些关键区别。 另一个 train() 函数位于关于
我可以在maskrcnn的预训练模型的基础上训练吗?如果预训练模型的类别与我自己的数据集不同,预训练模型仍然有效吗?。我尝试了一个新的班级训练数据集。但它似乎收敛得非常慢。
我可以按照Maskrcnn预先训练的模式进行训练吗?如果预先训练的模型的类别与我自己的数据集的类别不同,那么预先训练的模型是否仍然有效?。我尝试了一个新的班级训练数据集。但它似乎收敛得非常慢。
我想知道这两个 tensorflow 对象在用于训练神经网络时有什么区别? 最佳答案 Supervisor 即将被弃用,鼓励新用户使用 tf.train.FooSession 类 (来自 commen
我已经看到文档 tf.train.ExponentialMovingAverage 实现了这个公式: shadow_variable = decay * shadow_variable + (1 -
我发现在 Tensorflow 中有不同的方法来保存/恢复模型和变量。这些方式包括: tf.saved_model.simple_save tf.train.Checkpoint tf.train.S
查看两个带有参数的函数签名 tf.train.shuffle_batch_join( tensors_list, batch_size, capacity, min_after_dequeue, se
我使用 Binary data训练 DNN。 但是 tf.train.shuffle_batch 和 tf.train.batch 让我很困惑。 这是我的代码,我将对其进行一些测试。 首先Using_
正如文档/教程中提到的,我们可以调用 Estimator.fit()开始训练工作。 该方法所需的参数为 inputs这是对训练文件的 s3/file 引用。示例: estimator.fit({'tr
这个问题在这里已经有了答案: Split train data to train and validation by using tensorflow_datasets.load (TF 2.1) (
我知道这两个类都处理线程。根据文档,tf.train.Coordinator 协调一组线程的终止,而 tf.train.QueueRunner 保存队列的入队操作列表,每个操作都在一个线程中运行。 但
最近我读了this TensorFlow 中未记录特征的指南,因为我需要传递可变长度序列作为输入。但是,我发现 tf.train.SequenceExample 的协议(protocol)相对困惑(特
我是一名优秀的程序员,十分优秀!