tensorboard 报错及解决方案

版本提高后改变

Replace 
tf.scalar_summary, tf.histogram_summary, 
tf.audio_summary, tf.image_summary with 
tf.summary.scalar, tf.summary.histogram, 
respectively. The new summary ops take name
meaning summary ops now respect TensorFlow 
name scopes.

对于标量

如果我们想对标量在训练中可视化,可以使用tf.summary.scalar(),比如损失loss:

loss = tf.reduce_mean(tf.reduce_sum(
tf.square(ys-prediction),reduction_indices=[1])) 
tf.summary.scalar('loss',loss) 

对于参数

应使用tf.summary.histogram(),如全链接的权重:

tf.summary.histogram("/weights",Weights) 

merge并运行

就像变量需要初始化一样,summary也需要merge:

merged = tf.summary.merge_all()

之后定义一个输出器记录下在运行中的数据:

writer = tf.summary.FileWriter("output/",
sess.graph)

最后记得在训练过程中执行这两个模块:

for i in range(1000):
    sess.run(train_step,feed_dict={xs:x_data,ys:y_data})
    if i%50==0:# 50次记录一次
        result = sess.run(merged,
        feed_dict={xs:x_data,ys:y_data})
        writer.add_summary(result,i) 

也就是说,summary独立出来了,以前tf.XXX_summary这样的下划线变成了tf.summary.XXX的格式

1.AttributeError:’module’ object has noattribute ‘random_crop’ ##解决方案: 将 distorted_image= tf.image.random_crop(reshaped_image,[height, width])改为: distorted_image = tf.random_crop(reshaped_image,[height,width,3])

  1. AttributeError:’module’object has no attribute ‘SummaryWriter’ ##解决方案:tf.train.SummaryWriter改为:tf.summary.FileWriter

  2. AttributeError:’module’object has no attribute ‘summaries’ 解决方案: tf.merge_all_summaries()改为:summary_op =tf.summaries.merge_all()

  3. AttributeError: ‘module’ object hasno attribute’histogram_summary tf.histogram_summary(var.op.name,var)改为: tf.summaries.histogram()

  4. AttributeError: ‘module’ object hasno attribute’scalar_summary’ tf.scalar_summary(l.op.name+ ’ (raw)’, l) ##解决方案: tf.scalar_summary(‘images’,images)改为:tf.summary.scalar(‘images’, images) tf.image_summary(‘images’,images)改为:tf.summary.image(‘images’, images)

  5. ValueError: Only callsoftmax_cross_entropy_with_logits withnamed arguments (labels=…,logits=…, …) ##解决方案: cifar10.loss(labels, logits) 改为:cifar10.loss(logits=logits,labels=labels) cross_entropy=tf.nn.softmax_cross_entropy_with_logits(
    logits,dense_labels,name=’cross_entropy_per_example’) 改为: cross_entropy =tf.nn.softmax_cross_entropy_with_logits(
    logits=logits, labels=dense_labels,name=’cross_entropy_per_example’)

  6. TypeError: Using a tf.Tensor as a Python boolisnot allowed. Use if t is not None: instead of if t: to test if a tensorisdefined, and use TensorFlow ops such as tf.cond to execute subgraphsconditionedon the value of a tensor. ##解决方案: if grad: 改为 if grad is not None:

  7. ValueError: Shapes (2, 128, 1) and () are incompatible ###解决方案: concated = tf.concat(1, [indices, sparse_labels])改为: concated= tf.concat([indices, sparse_labels], 1)

  8. 报错:(这个暂时没有遇到) File”/home/lily/work/Tensorflow/CIRFAR-10/tensorflow.cifar10-master/cifar10_input.py”,line83, in read_cifar10 result.key, value=reader.read(filename_queue) File”/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/io_ops.py”,line326, in read queue_ref = queue.queue_ref AttributeError: ‘str’ object hasno attribute ‘queue_ref’ ###解决方案: 由于训练样本的路径需要修改,给cifar10_input.py中data_dir赋值为本地数据所在的文件夹 以上参考自 http://blog.csdn.net/xiao_lxl/article/details/70622209

你可能感兴趣的:(tensorflow)