1. keras模型可视化函数

keras.utils.vis_utils模块提供了可视化Keras模型的函数plot_model,可将模型summary信息以图片形式输出。
使用方式如下:

from keras.utils import plot_model
plot_model(model, to_file='model.png')

plot_model 有 4 个可选参数:

  • show_shapes (默认为 False) 控制是否在图中输出各层的尺寸。
  • show_layer_names (默认为 True) 控制是否在图中显示每一层的名字。
  • expand_dim(默认为 False)控制是否将嵌套模型扩展为图形中的聚类。
  • dpi(默认为 96)控制图像 dpi

2. 问题解决

plot_model函数依赖 pydot-ng 和 graphviz,若运行出现错误,则需要安装这两个包:

  1. 安装graphviz:Linux系统中可直接用命令行安装,windows系统下需要下载该二进制安装包手动安装,官网下载地址为:下载地址

  2. 安装好之后需要配置环境变量:将graphviz安装目录下的bin文件路径夹添加到Path环境变量中。

  3. 验证graphviz是否安装成功: 进入windows命令行界面,输入dot -version,然后按回车,如果显示graphviz的相关版本信息,则安装配置成功。

  4. 安装pydot-ng: 直接在命令行中输入pip install pydot-ng即可安装。
    【注意】:需要注意的是pydot与pydot-ng的区别,pydot是对应python2的旧版本,python-ng是兼容python2与python3的新版本,之前看博客安装pydot,运行一直不成功,总是报错:找不到graphviz,后来才发出现是pydot的问题,我这里使用的是python3,故需要安装pydot-ng。

  5. 由于plot_model函数中默认调用的是pydot,安装pydot-ng后运行代码仍然会提示找不到pydot,这时需要在源码...\keras\utils\vis_utils.py模块中做如下修改, 确认修改,就能正常运行了。

    import pydot

    修改为
    import pydot-ng as pydot