我收到了这个错误,尽管我看过的所有地方file_writer = tf.summary.FileWriter('/path/to/logs', sess.graph)都提到了this和this的正确实现。
这是错误:
回溯(最近一次调用):文件“tfvgg.py”,第 304 行,在 writer = tf.summary.FileWriter(“/tmp/tfvgg”, sess.graph) AttributeError: module 'tensorflow.python.summary.summary'没有属性“FileWriter”
这是我正在使用的代码:
# init
sess = tf.Session()
writer = tf.summary.FileWriter("/tmp/tfvgg", sess.graph)
init = tf.initialize_all_variables()
sess.run(init)
Run Code Online (Sandbox Code Playgroud)
FileWriter与其他summary方法一样,正确的使用方法是否发生了变化?
我开始学习如何使用TensorFlow进行机器学习.并且发现docker非常方便将TensorFlow部署到我的机器上.但是,我找到的示例不适用于我的目标设置.这是
在ubuntu16.04操作系统下,使用nvidia-docker一起托管jupyter和tensorboard服务(可以是两个容器或一个容器有两个服务).从jupyter创建的文件应该对主机操作系统可见.
Jupyter容器
nvidia-docker run \
--name jupyter \
-d \
-v $(pwd)/notebooks:/root/notebooks \
-v $(pwd)/logs:/root/logs \
-e "PASSWORD=*****" \
-p 8888:8888 \
tensorflow/tensorflow:latest-gpu
Run Code Online (Sandbox Code Playgroud)
Tensorboard容器
nvidia-docker run \
--name tensorboard \
-d \
-v $(pwd)/logs:/root/logs \
-p 6006:6006 \
tensorflow/tensorflow:latest-gpu \
tensorboard --logdir /root/logs
Run Code Online (Sandbox Code Playgroud)
我试图将logs文件夹挂载到两个容器,让Tensorboard访问jupyter的结果.但是山似乎确实有效.当我在带有notebooks文件夹的jupyter容器中创建新文件时,主机文件夹$(pwd)/ notebooks什么都没有出现.
我还按照Nvidia Docker,Jupyter Notebook和Tensorflow GPU中的说明进行操作
nvidia-docker run -d -e PASSWORD='winrar' -p 8888:8888 -p 6006:6006 gcr.io/tensorflow/tensorflow:latest-gpu-py3
Run Code Online (Sandbox Code Playgroud)
只有Jupyter工作,张量板无法从6006端口到达.
Tensorboard提供运行时统计信息,可以分析内存消耗和计算时间(请参阅文档).然而,在tensorflow v1.2.1中,我的一些操作以虚线和橙色显示为"未使用的子结构",并且根本没有提供任何信息 - 没有设备,也没有内存,也没有计算时间.
随着tensorflow v1.3的更新,这甚至变得更糟.现在一切都是橙色破旧的"未使用的子结构"
我尝试了各种更大的tensorflow项目,我需要优化它以及工作的同事PC.我做错了什么,或者这是张量流/张量板中的错误?
这是一个简约的示例代码:
import tensorflow as tf
from tensorflow.python.client import timeline
sess = tf.InteractiveSession()
run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
run_metadata = tf.RunMetadata()
# create some dummy Ops for the graph
C1 = tf.constant(5)
C2 = tf.constant(3)
myOp = C1*C2 + tf.square(C2)
res = sess.run([myOp], options=run_options,run_metadata = run_metadata)
writer = tf.summary.FileWriter(logdir='tensorboard/profile_bug',graph=sess.graph)
print (res)
tl = timeline.Timeline(run_metadata.step_stats)
ctf = tl.generate_chrome_trace_format()
with open('tensorboard/timelineOfBug.json', 'w') as f:
f.write(ctf)
writer.add_run_metadata(run_metadata,"mySess")
writer.close()
sess.close()
Run Code Online (Sandbox Code Playgroud) 我无法连接tensorboard到我的 Google Cloud Platform,因为我遇到了以下错误:
我正在运行的命令:
gcloud auth application-default login
tensorboard --logdir=gs://mybucket_which_contains_train_and_eval_directories
堆栈跟踪:
Exception in thread Reloader:
Traceback (most recent call last):
File "c:\python\python35\lib\threading.py", line 914, in _bootstrap_inner
self.run()
File "c:\python\python35\lib\threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
File "c:\python\python35\lib\site-packages\tensorboard\backend\application.py", line 327, in _reload_forever
reload_multiplexer(multiplexer, path_to_run)
File "c:\python\python35\lib\site-packages\tensorboard\backend\application.py", line 299, in reload_multiplexer
multiplexer.AddRunsFromDirectory(path, name)
File "c:\python\python35\lib\site-packages\tensorboard\backend\event_processing\event_multiplexer.py", line 175, in AddRunsFromDirectory
for subdir in GetLogdirSubdirectories(path):
File "c:\python\python35\lib\site-packages\tensorboard\backend\event_processing\event_multiplexer.py", line 439, in GetLogdirSubdirectories
if tf.gfile.Exists(path) and not tf.gfile.IsDirectory(path):
File "c:\python\python35\lib\site-packages\tensorflow\python\lib\io\file_io.py", line 252, in …Run Code Online (Sandbox Code Playgroud) 我想在TensorBoard中记录一些任意字符串.
我知道如何为任意标量做到这一点:
from tensorflow.core.framework import summary_pb2
value = summary_pb2.Summary.Value(tag='Accuracy', simple_value=0.95)
my_summary = summary_pb2.Summary(value=[value])
summary_writer = tf.summary.FileWriter()
summary_writer.add_summary(summary)
Run Code Online (Sandbox Code Playgroud)
但是对于任意文本摘要,如何做同样的事情呢?
像(不存在)的东西:
value = summary_pb2.Summary.Text(tag='MyTag', str='Arbitrary text come here')
Run Code Online (Sandbox Code Playgroud)
UPD:请注意,我提供了一个如何在不调用的情况下创建任意标量摘要的示例session.run(...).我希望能够为文本做到这一点.
我正在使用keras并希望通过实现自定义学习率 keras.callbacks.LearningRateScheduler
如何通过学习率才能在张量板中监控?(keras.callbacks.TensorBoard)
目前我有:
lrate = LearningRateScheduler(lambda epoch: initial_lr * 0.95 ** epoch)
tensorboard = TensorBoard(log_dir=LOGDIR, histogram_freq=1,
batch_size=batch_size, embeddings_freq=1,
embeddings_layer_names=embedding_layer_names )
model.fit_generator(train_generator, steps_per_epoch=n_steps,
epochs=n_epochs,
validation_data=(val_x, val_y),
callbacks=[lrate, tensorboard])
Run Code Online (Sandbox Code Playgroud) 我有以下代码片段应将运行元数据添加到TensorBoard文件编写器中:
run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
# Check Metadata
ecnn_run_metadata = tf.RunMetadata()
# Run optimization and calculate batch loss
_, ecnn_loss, ecnn_summary = ecnn_sess.run([ecnn_train_op, ecnn_loss_op, ecnn_merged], run_metadata=ecnn_run_metadata, options=run_options)
ecnn_train_writer.add_run_metadata(ecnn_run_metadata, 'step%d' % ecnn_step)
ecnn_train_writer.add_summary(ecnn_summary, ecnn_step)
print("ECNN - Step " + str(ecnn_step) + " Loss " + str(ecnn_loss))
Run Code Online (Sandbox Code Playgroud)
但是,在启动TensorBoard之后,图形视图中的元数据单选按钮仍显示为灰色,并且工具提示告诉我将“运行元数据”添加到FileWriter。因此,如果我定义tf.RunMetadata对象,将其传递给ecnn_sess.run然后传递给,则没有任何区别ecnn_train_writer。
我的错误在哪里?
我是深度学习和Tensorflow的新手。我重新训练了一个预训练过的tensorflow inceptionv3模型为save_model.pb,以识别不同类型的图像,但是当我尝试将fie与以下代码一起使用时。
with tf.Session() as sess:
with tf.gfile.FastGFile("tensorflow/trained/saved_model.pb",'rb') as f:
graph_def = tf.GraphDef()
tf.Graph.as_graph_def()
graph_def.ParseFromString(f.read())
g_in=tf.import_graph_def(graph_def)
LOGDIR='/log'
train_writer=tf.summary.FileWriter(LOGDIR)
train_writer.add_graph(sess.graph)
Run Code Online (Sandbox Code Playgroud)
它给了我这个错误-
File "testing.py", line 7, in <module>
graph_def.ParseFromString(f.read())
google.protobuf.message.DecodeError: Error parsing message
Run Code Online (Sandbox Code Playgroud)
我尝试了很多可以找到这个问题的解决方案,并且使用graph_def.ParseFromString(f.read())函数的tensorflow / python / tools中的模块给了我同样的错误。请告诉我如何解决此问题或告诉我可以避免ParseFromString(f.read())函数的方式。任何帮助,将不胜感激。谢谢!
image-processing python-3.x deep-learning tensorflow tensorboard
我在 jupyter 笔记本上使用 TensorFlow。我使用tensorflow没有问题,但是当我尝试使用“show_graph”函数显示tensorboard时(这里引用了它:Simple way to Visual a TensorFlow graph in Jupyter?),它显示的只是一个空白区域。我的同学运行相同的代码,打开张量板没有问题。
我的系统是Win 10。我是jupyter笔记本和tensorflow的新手,所以我不知道如何进行故障排除。
我正在训练一个物体探测器,我负责评估工作.我在张量板中看到了某些图形.如图所示,tensorflowboard中的DetectionBoxes_Recall/AR @ 10 vs AR @ 100 vs AR @ 100(medium)是什么.DetectionBoxes_Precision/mAP,mAP(大),mAP(中),mAP(小),mAP(0.50IOU)和mAP(0.75IOU)之间有什么区别?请帮助我对此表示新的感谢.
tensorboard ×10
tensorflow ×9
python ×5
jupyter ×2
anaconda ×1
docker ×1
keras ×1
logging ×1
profiling ×1
python-3.x ×1