入门tensorflow教程之TensorBoard可视化模型训练
TensorBoard是用于可视化图形
和其他工具以理解、调试和优化模型的界面。
它是一种为机器学习工作流提供测量和可视化的工具。
它有助于跟踪损失和准确性、模型图可视化、低维空间中的项目嵌入等指标。
下面,我们使用MNIST 数据的图像分类模型 ,将首先导入所需的库并加载数据集。
模型的建立使用最简单的顺序模型
import tensorflow as tf (X_train, y_train), (X_test, y_test) = tf.keras.datasets.mnist.load_data() from tensorflow.keras.utils import np_utils X_train=X_train.astype('float32') X_test=X_test.astype('float32') X_train/=255 X_test/=255 X_train = X_train.reshape(X_train.shape[0], 28, 28, 1).astype('float32') X_test = X_test.reshape(X_test.shape[0], 28, 28, 1).astype('float32') y_train = np_utils.to_categorical(y_train, 10) y_test = np_utils.to_categorical(y_test, 10) model = Sequential() model.add(Convolution2D(32, 3, 3, input_shape=(28, 28, 1))) model.add(Activation('relu')) model.add(Dropout(0.25)) model.add(Convolution2D(32, 3, 3)) model.add(Activation('relu')) model.add(Convolution2D(32, 3, 3)) model.add(Activation('relu')) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(128)) model.add(Dense(128)) model.add(Activation('relu')) model.add(Dense(10)) model.add(Activation('softmax')) model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'])
keras API 训练模型时,
创建了一个 tensorboard 回调
以确保将指标记录在指定的目录中。
这里保存到logs/fit
import datetime !rm -rf ./logs/ log_dir = "logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S") tensorboard_callback=tf.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1) model.fit(x=X_train, y=y_train,epochs=30,validation_data=(X_test, y_test), callbacks=[tensorboard_callback])
如果使用colab
,并不支持使用终端
对于 Windows 用户:tensorboard --logdir= logs/fitg
Tensorboard 位于:http://localhost:6006
如果使用colab,需要加载TensorBoard扩展程序
%load_ext tensorboard %tensorboard --logdir logs/fit from tensorboard import notebook notebook.list notebook.display(port=6006, height=1000)
如果训练迭代5k到55k,
TensorBoard会给出测试集的大概结果
如果在torch中是使用TensorBoard,在PyTorch 1.8.1 版本的发布,需要使用 PyTorch Profiler,
需要安装torch_tb_profiler
。
torch_tb_profiler
是TensorBoard
的一个插件,可以可视化GPU的情况,
具体参考官方教程
https://pytorch.org/tutorials/intermediate/tensorboard_profiler_tutorial.html
上一篇:Python实现封装打包自己写的代码,被python import
栏 目:Python代码
下一篇:Pytorch GPU内存占用很高,但是利用率很低如何解决
本文标题:入门tensorflow教程之TensorBoard可视化模型训练
本文地址:http://www.codeinn.net/misctech/194541.html