我使用saver=tf.train.Saver()来保存我训练的模型,我得到了三种文件,命名为:.ckpt.meta.ckpt.index.ckpt.data还有一个文件叫:检查点与.ckpt文件有什么关系?我看到有人保存的模型只有.ckpt文件,我不知道如何制作。如何将模型保存为.pb文件? 最佳答案 .ckpt文件是saver.save(sess)的旧版本输出,相当于您的.ckpt-data(见下文)“检查点”文件只是在这里告诉一些TF函数哪个是最新的检查点文件。.ckpt-meta包含元图,即计算图的结构,没有变量的值(基本上
我很好奇tf.contrib是什么,以及为什么代码会包含在TensorFlow中,而不是包含在主存储库中。此外,查看示例here(来自tensorflowmaster分支),我想找到tf.contrib.layers.sparse_column_with_hash_bucket的来源。这似乎是一些很酷的例程,但我想确保它们正确使用队列等,用于预取/预处理示例,以便在生产环境中实际使用它们。似乎记录在案here,但它来自tflearn项目,但tf.contrib.layers.sparse_column_with_hash_bucket似乎也不在该存储库中。
在tensorflow1.4中,我发现了两个执行批量标准化的函数,它们看起来一样:tf.layers.batch_normalization(link)tf.contrib.layers.batch_norm(link)我应该使用哪个功能?哪个更稳定? 最佳答案 只是添加到列表中,还有更多方法可以在tensorflow中进行批处理规范:tf.nn.batch_normalization是一个低级操作。调用者自己负责处理mean和variance张量。tf.nn.fused_batch_norm是另一个低级操作,与前一个类似。不同之处
更新:在Tensorflow1.14.0中修复(可能更早,没有检查)更新:仍在Tensorflow1.7.0中发生更新:我写了一个协作笔记本,在google的gpu硬件上重现了这个bug:https://drive.google.com/file/d/13V87kSTyyFVMM7NoJNk9QTsCYS7FRbyz/view?usp=sharing更新:在这个问题的第一个修订版中错误地指责tf.gather之后,我现在将其缩小到tf.reduce_sum并结合占位符作为形状:tf.reduce_sum为形状取决于占位符的大张量生成零(仅在GPU上)。在向占位符batch_size(在
我正在编写的程序涉及在运行时在模型之间切换。我目前正在使用Saver从磁盘中保存/加载模型,如下所示:https://www.tensorflow.org/api_docs/python/state_ops/saving_and_restoring_variables#Saver.模型相当小,可以存储在内存中,所以我想知道是否有人知道在内存中存储和恢复这些模型而不是将它们保存到磁盘的方法。我尝试修改tensorflow源以将模型保存到内存中,但是gen_io_ops似乎是在编译期间生成的。另一种可能的方法是使用内存映射文件。有谁知道更简单的方法吗? 最佳答案
我尝试熟悉Q-learning和深度神经网络,目前尝试实现PlayingAtariwithDeepReinforcementLearning.为了测试我的实现并尝试使用它,我坚持尝试了一个简单的网格世界。我有一个NxN网格,从左上角开始,在右下角结束。可能的Action有:左、上、右、下。尽管我的实现与this非常相似(希望它是一个好的)它似乎没有学到任何东西。看看它需要完成的总步数(我猜网格大小为10x10的平均值约为500,但也有非常低和高的值),它比其他任何东西都更加随机。我在使用和不使用卷积层的情况下尝试了它,并使用了所有参数,但老实说,我不知道我的实现是否有问题或者它需要训练
importtensorflowastfwithtf.device('/gpu:0'):foo=tf.Variable(1,name='foo')assertfoo.name=="foo:0"withtf.device('/gpu:1'):bar=tf.Variable(1,name='bar')assertbar.name=="bar:0"上面的代码返回true。我这里用withtf.device来说明“:0”并不代表变量位于特定的设备上。那么“”是什么意思:0"在变量名中(本例中为foo和bar)? 最佳答案 这与底层API中张
在numpy中,有两个相同形状的数组x和y,可以像这样y[x>1]。您如何在tensorflow中获得相同的结果?y[tf.greater(x,1)]不起作用,tf.slice也不支持这样的东西。现在有没有办法使用bool张量进行索引,还是目前不受支持? 最佳答案 试试:ones=tf.ones_like(x)#createatensorallonesmask=tf.greater(x,ones)#booleantensor,mask[i]=Trueiffx[i]>1slice_y_greater_than_one=tf.boole
我正在尝试使用tensorflow进行迁移学习。我从教程中下载了预训练模型inception3。在代码中,用于预测:prediction=sess.run(softmax_tensor,{'DecodeJpeg/contents:0'}:image_data})有没有办法提供png图像。我尝试将DecodeJpeg更改为DecodePng但它不起作用。另外,如果我想提供解码后的图像文件,如numpy数组或一批数组,我应该改变什么?谢谢!! 最佳答案 classify_image.py中使用的InceptionV3图仅支持开箱即用的J
我有一个关于如何在TensorFlow中进行索引的基本问题。在numpy中:x=np.asarray([1,2,3,3,2,5,6,7,1,3])e=np.asarray([0,1,0,1,1,1,0,1])#numpyprintx*e[x]我可以得到[1033050713]如何在TensorFlow中做到这一点?x=np.asarray([1,2,3,3,2,5,6,7,1,3])e=np.asarray([0,1,0,1,1,1,0,1])x_t=tf.constant(x)e_t=tf.constant(e)withtf.Session():????谢谢!