Python 3.6.10
一、下载安装GraphViz(这是一个独立软件)
https://graphviz.gitlab.io/_pages/Download/Download_windows.html
下载完后解压缩后,复制bin文件夹的路径。
快捷键:win+e 右击“此电脑”------》高级系统设置--------》
一直确定
注:重启电脑试试,不行的话,在代码中添加
>>> import os
>>> os.environ["PATH"] += os.pathsep + 'D:/graphviz/bin/' #注意修改你的路径
二、打开 Anaconda Prompt,激活 Face_Rec(你需要安装的环境名称),使用 pip 安装:
# conda env list #查看所有的环境
activate Face_Rec
# pip list #查看已安装的包
pip install pydot==1.2.4
pip install pydot-ng
pip install pydotplus
三、修改C:\Users\16603\Anaconda3\envs\Face_Rec\Lib\site-packages\keras\utils下的“vis_utils.py”
所有pydot换为pydotplus 换的时候一定要仔细一点,不过如果程序出了问题,看抛出的错误,对应程序进行修改
四、示例代码
import numpy as np
from keras.models import Sequential
from keras.layers.core import Dense, Activation
from keras.optimizers import SGD
from keras.utils import np_utils
from keras.utils.vis_utils import plot_model
import matplotlib.pyplot as plt #重要
#import pydotplus as plt
import os
os.environ["PATH"] += os.pathsep + 'D:/graphviz/bin/'
def run():
# 构建神经网络
model = Sequential()
model.add(Dense(4, input_dim=2, init='uniform'))
model.add(Activation('relu'))
model.add(Dense(2, init='uniform'))
model.add(Activation('sigmoid'))
sgd = SGD(lr=0.05, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='binary_crossentropy', optimizer=sgd, metrics=['accuracy'])
# 神经网络可视化
#plot_model(model, to_file='model.png')
plot_model(model,to_file="model.png",show_shapes=True,show_layer_names=False,rankdir='TB')
plt.figure(figsize=(10,10))
img = plt.imread("model.png")
plt.imshow(img)
plt.axis('off')
plt.show()
if __name__ == '__main__':
run()
实验时使用“import pydotplus as plt”出现了错误,修改为import matplotlib.pyplot as plt,正确(我的版本:matplotlib 3.1.3)
结果:同时存在文件夹中