我在 jupyter 笔记本上使用 TensorFlow。我使用tensorflow没有问题,但是当我尝试使用“show_graph”函数显示tensorboard时(这里引用了它:Simple way to Visual a TensorFlow graph in Jupyter?),它显示的只是一个空白区域。我的同学运行相同的代码,打开张量板没有问题。
我的系统是Win 10。我是jupyter笔记本和tensorflow的新手,所以我不知道如何进行故障排除。
对于 Keras 模型,我添加了 TensorBoard 回调来生成稍后可视化的日志文件。
问题是,如果我多次训练模型,它会生成多个日志文件,并且步骤号总是重新启动为 0,而不是继续上次运行的最后一步。
这会导致 TensorBoard 中的图表无法利用(下面的屏幕截图)。
使用原始 Tensorflow,我发现可以通过添加“global_step”张量来跟踪运行之间的纪元数来解决这个问题。
但是我如何使用 Keras 来做到这一点?
张量流版本:1.11.0
我正在尝试将 TensorBoard 与 Tensorflow keras 模型结合使用进行投影仪可视化。我收到 AttributeError:图层功能没有入站节点。我不确定为什么在下面的简单代码中会出现此错误。我确实用谷歌搜索了错误,但找不到正确的解决方案来修复它。
from os import makedirs
from os.path import exists, join
import tensorflow as tf
mnist = tf.keras.datasets.mnist
import numpy as np
(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(512, activation=tf.nn.relu),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(10, activation=tf.nn.relu, name='features'),
tf.keras.layers.Dense(10, activation=tf.nn.softmax)
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
log_dir = "./logs"
with open(join(log_dir, 'metadata.tsv'), 'w') as f:
np.savetxt(f, y_test)
from tensorflow.keras.callbacks import TensorBoard
tf_board_callback = TensorBoard(
log_dir=log_dir,
batch_size=32,
embeddings_freq=1, …Run Code Online (Sandbox Code Playgroud) 我以这种方式将张量板与 keras 一起使用:
\n\nfrom keras.callbacks import TensorBoard\n\ntensorboard = TensorBoard(log_dir='./logs', histogram_freq=0,\n write_graph=True, write_images=False)\n# define model\nmodel.fit(X_train, Y_train,\n batch_size=batch_size,\n epochs=nb_epoch,\n validation_data=(X_test, Y_test),\n shuffle=True,\n callbacks=[tensorboard])\nRun Code Online (Sandbox Code Playgroud)\n\n如果我再次运行火车第二次调用model.fit(\xe2\x80\xa6),张量板将重置step,因此度量图开始看起来一团糟。如何让它将结果追加到以前的结果中?
另一个问题如何创建另一个会话运行来比较它们在张量板上的结果?
\n我有两个“子问题”
1)鉴于目前在“un-deprecate for #31173”write_grads=True中已弃用,我如何使用 Tensorboard 检测梯度消失或爆炸?Tensorboard callbackwrite_gradsfit
2)我想我可以根据 Tensorboard 的“分布和直方图”选项卡中的权重分布和直方图来判断我的模型是否存在梯度消失问题。我的问题是我没有可以比较的参考框架。目前,我的偏差似乎正在“移动”,但我无法判断我的内核权重(Conv2D 层)是否“移动”/“改变”“足够”。有人可以通过给出经验法则来帮助我在 Tensorboard 中进行视觉评估吗?即,如果只有底部 25% 的籽粒重量发生变化,这是否足够好/不够好?或者也许有人可以从张量板上发布消失梯度与非消失梯度的两个参考图像。
这是我的直方图和分布,是否可以判断我的模型是否存在梯度消失问题?(为简洁起见,省略了一些层)提前致谢。
python machine-learning deep-learning tensorflow tensorboard
我已经用微调预训练模型训练了一个模型ssd_mobilenet_v2_coco_2018。在这里,我使用了完全相同的 pipeline.config 文件进行训练,该文件在ssd_mobilenet_v2_coco_2018预训练文件夹中可用。我只删除了batch_norm_trainable: true标志并更改了类的数量(4)。与我的自定义数据集有4班训练模型后,我发现concat和concat_1节点得到相互交流。预训练模型
| concat | 1x1917x1x4 |
经过训练后,
| concat | 1x1917x5 |
我已经附加了两个张量板图形可视化图像。第一张图片是预训练图ssd_mobilenet_v2_coco_2018。

节点交换可以在图像的最右上角看到。与预训练图中一样,Postprocess layer连接concat_1并Squeeeze连接concat。但经过训练后,图形显示完全相反。喜欢Prosprocess layer连接concat和Squeeeze连接concat_1。此外,我也在预训练的模型曲线图发现,Preprocessor采用输入ToFloat同时培养铸造作为输入到图显示之后Preprocessor。我已将输入作为tfrecords.
python python-3.x tensorflow tensorboard object-detection-api
我使用以下代码行使用张量板来可视化 ANN 模型的梯度
tensorboard_callback = tf.compat.v1.keras.callbacks.TensorBoard(log_dir='./Graph', histogram_freq=1, write_graph = True, write_grads =True, write_images = False)
tensorboard_callback .set_model(model)
%tensorboard --logdir ./Graph
Run Code Online (Sandbox Code Playgroud)
我收到一条警告消息,内容为“警告:tensorflow:回调write_grads将在 TensorFlow 2.0 中被忽略TensorBoard”。
我得到张量板输出,但没有梯度。
可能的原因是什么?
(注:我使用的是2.3.0tensorflow版本)
谢谢。
我尝试在 torch.utils 中使用tensorboard,但它说“模块'torch.utils'没有属性'tensorboard'”。我的火炬版本是“1.6.0+cu101”
PS C:\Users\kelekelekle> python
Python 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 01:54:44) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> print(torch.__version__)
1.6.0+cu101
>>> writer = torch.utils.tensorboard.SummaryWriter()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'torch.utils' has no attribute 'tensorboard'
>>>
Run Code Online (Sandbox Code Playgroud) 我在 ImageNet 数据库上运行了 AlexNet 3 个周期,并在绘制梯度/参数时得到了这个结果。-
Params in epoch 2
Run Code Online (Sandbox Code Playgroud)
Epoch 2 params distribution
Run Code Online (Sandbox Code Playgroud)
Grads in epoch 2
Run Code Online (Sandbox Code Playgroud)
Epoch 2 grads distribution
Run Code Online (Sandbox Code Playgroud)
Parameters over epochs
Run Code Online (Sandbox Code Playgroud)
Distribution of params over epochs
Run Code Online (Sandbox Code Playgroud)
Params in epoch 2
Run Code Online (Sandbox Code Playgroud)
我有以下问题 -
提前致谢!
我正在尝试从 git 存储库安装 VIBE 包,并且最初我正在安装它的依赖项。代码位于此处: https: //github.com/mkocabas/VIBE我应该如何解决这个问题?
\n这是我得到的错误:
\n(vibe-env) mona@mona:~/research/VIBE$ pip install -r requirements.txt\nRequirement already satisfied: numpy==1.17.5 in /home/mona/anaconda3/envs/vibe-env/lib/python3.7/site-packages (from -r requirements.txt (line 4)) (1.17.5)\nRequirement already satisfied: torchvision==0.5.0 in /home/mona/anaconda3/envs/vibe-env/lib/python3.7/site-packages (from -r requirements.txt (line 19)) (0.5.0)\nCollecting git+https://github.com/mattloper/chumpy.git (from -r requirements.txt (line 24))\n Cloning https://github.com/mattloper/chumpy.git to /tmp/pip-req-build-vdh2h3jw\nCollecting git+https://github.com/mkocabas/yolov3-pytorch.git (from -r requirements.txt (line 25))\n Cloning https://github.com/mkocabas/yolov3-pytorch.git to /tmp/pip-req-build-ay_gkil2\nCollecting git+https://github.com/mkocabas/multi-person-tracker.git (from -r requirements.txt (line 26))\n Cloning https://github.com/mkocabas/multi-person-tracker.git to /tmp/pip-req-build-l9jgk1qb\nRequirement already satisfied: six>=1.11.0 in /home/mona/anaconda3/envs/vibe-env/lib/python3.7/site-packages (from chumpy==0.70->-r requirements.txt (line 24)) (1.15.0)\nCollecting …Run Code Online (Sandbox Code Playgroud) python ×10
tensorboard ×10
tensorflow ×6
keras ×3
pytorch ×3
anaconda ×1
jupyter ×1
logging ×1
pip ×1
python-3.x ×1
statistics ×1
tf.keras ×1