文章目录
- 一、导入包
- 二、下载Mnist数据
- 三、定义神经网络模型model
- 四、编译模型
- 五、设置Tensorboard
-
-
-
-
- 1. 定义Tensorboard调用的地址,.logs/代表模型训练之后生成的文件放到.logs文件夹(若无,自动创建),.logs文件夹与本python代码文件在同一文件下
- 2. .logs是用来保存被Tensorboard分析的日志文件的文件夹地址
- 3. 定义tb_callback,调用的函数是tf.keras.callbacks.TensorBoard,log_dir参数代表Tensorboard所分析日志文件的地址
- 4. 运行整个程序前(我的python代码文件的地址:D:\PyCharm\TF2.2_project\test),文件夹中没有.logs文件,如图所示。
- 5. 完整程序运行之后,会自动生成.logs文件夹,里面包括模型相关的信息,用于Tensorboard分析
-
-
-
- 五、训练模型(在pycharm中运行完整程序)
- 六、启动Tensorboard
- 七、完整代码
本文以 Mnist手写数字数据集为训练和测试用,同时全部使用 tensorboard默认参数,降低理解门槛。
软件版本:
PyCharm Community Edition 2020.3.2 x64
Anaconda 3
TensorFlow 2.2
一、导入包
import tensorflow as tf
二、下载Mnist数据
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
三、定义神经网络模型model
def create_model():
return tf.keras.models.Sequential([ # 在Sequential中搭建各种网络层
tf.keras.layers.Flatten(input_shape=(28, 28)), # 使用Flatten打平数据
tf.keras.layers.Dense(512, activation='relu'), # 建立第一个全连接层,神经元数量512个,激活函数relu
tf.keras.layers.Dropout(0.2), # 采用Dropout防止过拟合,丢弃率为0.2
tf.keras