目录
1.构建迁移学习模型及其模型可视化
............(未完待续)
1.构建迁移学习模型及其模型可视化
要实现使用plot_model方法实现模型可视化,需要安装:
pip install graphviz
pip install pydot_ng
然后,https://graphviz.gitlab.io/_pages/Download/Download_windows.html 安装graphviz。
接着添加环境变量中的path,添加路径C:\Program Files (x86)\Graphviz2.38\bin
(或者在Python中运行os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/')(此方法只能暂时添加)
import tensorflow as tf
#迁移MobileNetV2模型,并且不加载顶层
base_model=tf.keras.applications.mobilenet_v2.MobileNetV2(include_top=False,weights='imagenet',input_shape=(224,224,3))
inputs=tf.keras.layers.Input(shape=(224,224,3))
x=base_model(inputs)#此处x为MobileNetV2模型去处顶层时输出的特征相应图。
#自己设计顶层并连接
x=tf.keras.layers.AveragePooling2D()(x)
x=tf.keras.layers.Dense(1024,activation='relu')(x)
outputs=tf.keras.layers.Dense(8,activation='softmax')(x)
model=tf.keras.models.Model(inputs=inputs,outputs=outputs)
#模型可视化1,使用model.summary()方法
model.summary()
#模型可视化2,使用plot_model()方法
tf.keras.utils.plot_model(model,
to_file='model.png', #模型结构图保存名字
show_layer_names=True, #是否现实层名
show_shapes=True) #是否展示层形状
model.summary()的输出结果如下:
plot_model()保存的模型结构图如下: