Python3.6 + tensorflow-gpu1.15.0 环境下调用plot

Python3.6 + tensorflow-gpu1.15.0 环境下调用plot,第1张

⭐Keras提供了一个 plot_model() 函数用于可视化模型的各个层,该函数通过以下语句导入:

from keras.utils.vis_utils import plot_model

⭐需要安装:
(1)pydotplus库
(2)pydot-ng库
(3)graphviz库
(4)graphviz软件(版本 2.38,已上传资源需要自取)

pydot                     1.4.1            py36haa95532_0    defaults
pydot-ng                  2.0.0                    pypi_0    pypi
pydotplus                 2.0.2                    pypi_0    pypi
graphviz                  2.38.0                        4    https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free

⭐安装完 graphviz 软件后需要配置环境变量,即将

C:\Program Files (x86)\Graphviz2.38\bin

配置到系统变量里的Path中。



⭐将 keras.untils.vis_utils 中的所有pydot改为pydotplus

# 查找
Ctrl+F
# 替换
Ctrl+Shift+R

⭐示例

import keras
from keras import layers
from keras.datasets import imdb
from keras.preprocessing import sequence
from keras.utils import plot_model

# 作为特征的单词个数
max_features = 2000
# 超过500长度之后的截断文本
max_len = 500

(x_train, y_train), (x_test, y_test) = imdb.load_data(num_words=max_features)
x_train = sequence.pad_sequences(x_train, maxlen=max_len)
x_test = sequence.pad_sequences(x_test, maxlen=max_len)

model = keras.models.Sequential()
model.add(layers.Embedding(max_features,
                           output_dim=128,
                           embeddings_initializer='uniform',
                           input_length=max_len, name='embed'))
model.add(layers.Conv1D(32, 7, activation='relu'))
model.add(layers.MaxPooling1D(pool_size=5))
model.add(layers.Conv1D(32, 7, activation='relu'))
model.add(layers.GlobalMaxPooling1D())
model.add(layers.Dense(1))
model.summary()
# model.compile(optimizer='rmsprop',
#               loss='binary_crossentropy',
#               metrics=['acc'])
plot_model(model, to_file="file\model.png", show_shapes=True)

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/569493.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存