我的TensorBoard情节处理我的TensorFlow的连续运行代码就像它们都是同一运行的一部分一样。例如,如果我首先使用FLAGS.epochs==10运行我的代码(如下),然后使用FLAGS.epochs==40重新运行它,我得到在第一次运行结束时“循环返回”以开始第二次运行。有没有办法将我的代码的多次运行视为不同的日志,例如,可以比较或单独查看?from__future__import(absolute_import,print_function,division,unicode_literals)importtensorflowastffromtensorflow.exam
当我使用tf.read_file读取文件时,我得到了类型为tf.string的内容。文档只说它是“可变长度字节数组。张量的每个元素都是一个字节数组。”(https://www.tensorflow.org/versions/r0.10/resources/dims_types.html)。我不知道如何解释这一点。我对这种类型无能为力。在通常的Python中,您可以通过索引获取元素,例如my_string[:4],但是当我运行以下代码时,我得到一个错误。importtensorflowastfimportnumpyasnpx=tf.constant("Thisisstring")y=x[
我想做一个简单的神经网络,它应该只实现XOR门。我在python中使用TensorFlow库。对于XOR门,我训练的唯一数据是完整的真值表,这应该足够了吧?过度优化是我预计会很快发生的事情。代码的问题是权重和偏差不会更新。不知何故,它仍然给我100%的准确度,偏差和权重为零。x=tf.placeholder("float",[None,2])W=tf.Variable(tf.zeros([2,2]))b=tf.Variable(tf.zeros([2]))y=tf.nn.softmax(tf.matmul(x,W)+b)y_=tf.placeholder("float",[None,1
问题我有一个Python脚本,它使用TensorFlow创建一个多层感知器网络(带dropout)以进行二元分类。尽管我已经小心地设置了Python和TensorFlow种子,但我得到了不可重复的结果。如果我运行一次然后再次运行,我会得到不同的结果。我什至可以运行一次,退出Python,重新启动Python,再次运行并得到不同的结果。我尝试过的我知道有些人发布了有关在TensorFlow中获得不可重复结果的问题(例如"Howtogetstableresults..."、"set_random_seednotworking..."、"Howtogetreproducibleresulti
我尝试在我的ubuntu14.0464位机器上安装tensorflow:sudopip2install--upgradehttps://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl对于python2.7当我在控制台中运行importtensorflowastf时出现错误Errorimportingtensorflow.Unlessyouareusingbazel,youshouldnottrytoimporttensorflowfromitssourcedi
我不确定以下4个变体之间的实际差异(它们的计算结果都相同)。我的理解是,如果我调用tf,它将在图上创建一个操作,否则它可能。如果我不在开始时创建tf.constant(),我相信在进行加法时会隐式创建常量;但是对于tf.add(a,b)vsa+b其中a和b都是张量(#1和#3),除了默认命名(前者是Add,后者是add),我看不出有什么区别。任何人都可以阐明它们之间的区别,什么时候应该使用它们?##1a=tf.constant(1)b=tf.constant(1)x=tf.add(a,b)withtf.Session()assess:x.eval()##2a=1b=1x=tf.add(
从我运行的实验来看,TensorFlow似乎自动使用了一台机器上的所有CPU。此外,似乎TensorFlow将所有CPU都称为/cpu:0。我是对的吗,只有一台机器的不同GPU被索引并被视为单独的设备,但一台机器上的所有CPU都被视为单个设备?从TensorFlows的角度来看,有没有什么方法可以让一台机器有多个CPU查看它? 最佳答案 默认情况下,进程可用的所有CPU都聚集在cpu:0设备下。mrry有答案here显示如何创建逻辑设备,如/cpu:1、/cpu:2似乎没有将逻辑设备固定到特定物理内核或能够在tensorflow中使
我正在使用tensorflow开发卷积神经网络,但遇到了问题。问题是我通过tfrecords读取的输入图像包含一定数量的nan值。原因是图像代表一个深度图,其中有一些无限值,在tfrecord中对其进行编码然后解码以将其提供给网络的过程中,这些无限值变成了nan值。现在,由于在我的情况下,在将原始图像编码到tfrecors之前替换原始图像中的无限值不是一个选项,所以我可以通过任何方式替换我的图像张量中的nan值,作为在我输入之前执行的操作到网上了吗? 最佳答案 tf.where和tf.is_nan的组合应该有效:importtens
我试图理解在tensorflow的seq2seq.py中定义的seq2seq模型。我使用从tensorflow附带的translate.py示例中复制的一些代码。我不断收到同样的错误,真的不明白它从何而来。重现错误的最小代码示例:importtensorflowastffromtensorflow.models.rnnimportrnn_cellfromtensorflow.models.rnnimportseq2seqencoder_inputs=[]decoder_inputs=[]foriinxrange(350):encoder_inputs.append(tf.placeho
我应该开始说我对任何类型的并行/多线程/多处理编程都是全新的。现在,我有机会在32个内核(每个内核有2个超线程)上运行我的TensorFlowCNN。我花了很多时间试图了解我应该如何修改(如果必须的话)我的代码以利用所有这些计算能力。不幸的是,我什么也没做。我希望TF可以自动执行此操作,但是当我启动我的模型并使用top检查CPU使用率时,我看到大部分时间CPU使用率为100%,少数情况下达到200%的峰值。如果使用了所有内核,我希望看到100*64=6400%的使用率(对吗?)。我怎样才能做到这一点?我应该做类似于解释的事情吗here?如果是这样,我是否理解所有的多线程只适用于涉及队列