前言
我们先来写一个小的demo:借用keras来加载FashionMNIST数据集,并自定义训练模型,其网络层级结构如下图所示:

def __init__(self):
self.cnn_1 = tf.keras.layers.Conv2D(32,3,activation=tf.nn.relu)
self.batch_norm_1 = tf.keras.layers.BatchNormalization()
self.cnn_2 = tf.keras.layers.Conv2D(64,3,activation=tf.nn.relu)
self.batch_norm_2 = tf.keras.layers.BatchNormalization()
self.cnn_3 = tf.keras.layers.Conv2D(128,3,activation=tf.nn.relu)
self.batch_norm_3 = tf.keras.layers.BatchNormalization()
self.last_dense = tf.keras.layers.Dense(10,activation=tf.nn.softmax)
现在我们的需求是将训练过程可视化展示出来,因此我们需要初始化TensorBoard,请看如下代码:
# 初始化tensorboard
tensorboard = tf.keras.callbacks.TensorBoard(histogram_freq=1)
model.fit(x=train_images,y=train_labels,epochs=20,verbose=2,callbacks=[tensorboard])
model.evaluate(x=test_images,y=test_labels)
接着,我们进入终端执行如下命令:
tensorboard --logdir=/full_path_to_your_logs/train
小伙伴们请注意,我遇到的bug就是从这里开始的,请看问题:
-
如何进入Mac下的 Anaconda prompt ? -
zsh:command not found:tensorboard 问题的解决方法。
首先,我们明确一点,mac下的anaconda prompt就是自带的terminal,我们来打开terminal,输入如下命令,发现报错信息如下所示:

我们发现错误信息提示我们并不能找到tensorboard的的相关命令,请看解决方法。
我们继续在终端中输入如下命令:
vim ~/.zshrc
并向.zshrc文件中添加如下命令:
source ~/.bash_profile

执行完上述操作之后,我们保存并退出vim,在终端中执行如下命令:
source ~/.zshrc

我们发现,此时的报错信息不再是...command not found...之类的信息,而是提示我们在使用tensorboard的时候应该加上logdir或db等参数信息。
好的,解决了上述问题之后,我们回到上文提到的那个例子当中。
首先,给小伙伴们看一下我们的项目目录:

接着,我们来看具体的操作:

最后,我们通过如下地址(http://localhost:6006/)即可在网页端查看可视化过程:

that's great,解决了bug,接下来我们就可以为所欲为啦~
其实在上文中,我们在讲解mac下的anaconda prompt时,就已经提及到了一种解决方法,接下来,我们看第二种解决方法。
仍然是在项目文件目录下,我们输入如下命令:
alias tensorboard='python3 -m tensorboard.main'
执行完上述命令之后,我们接着执行tensorboard的启动命令,请看下图:

tensorboard启动成功,以上就是我在启动tensorboard过程中遇到的几个bug,小伙伴们学会了吗?希望能够给各位小伙伴带来一丝丝帮助!
往期推荐
🔗

你要的对象都在这啦|how to create Object in JavaScript?

What is super() in JavaScript?

ES6中模块导入遇到的问题及其解决办法

东哥最宠粉了|包邮送书啦

【带你成为pyq最靓的仔】朋友圈九宫格(一)之图片切割篇
长按关注

本文分享自微信公众号 - hahaCoder(hahaCoder)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
来源:oschina
链接:https://my.oschina.net/u/3881264/blog/4666009