Windows操作系统下,运行pydot相关程序时(我的是keras.utils.plot_model)报错,提示没有安装GraphViz,事实上并不都是因为GraphViz没有安装,本文记录错误解决方法。
问题复现 {#问题复现}
操作系统:Win10
keras版本:2.2.4
在Win10系统下(Windows系列都可能出这个问题)keras建立简单的模型,执行 plot_model,报错: 错误信息:
问题原因与解决方案 {#问题原因与解决方案}
情况 1 {#情况-1}
- 原因 :真的没有安装GraphViz
- 解决方案:
- 安装相应模块
如果问题没有排除,可能是GraphViz程序没有加入到系统路径,考虑情况2
情况 2 {#情况-2}
- 原因:GraphViz程序没有加入到系统路径
- 解决方案:
- 下载graphviz-2.38.msi ,我是在这里下载的 https://www.5down.net/soft/graphviz.html
- 我安装在了E盘:
E:\Program Files (x86)\Graphviz2.38\bin
- 将路径加入到系统变量
目前为止是网上大多数存在的解决方案,相信大部分的同学到此为止已经解决了问题。
如果错误继续,那么我和你一样,进入情况3。
情况 3 {#情况-3}
-
原因:依赖模块已经安装、程序已经加入系统变量,仍然出现上述提示,是因为
pydot
在建立Dot
类时查找的dot
程序的名字是 'dot' 而不是我们 Windows 里的可执行程序文件名 'dot.exe' -
解决方案:改过来就好了,具体方法如下
-
在报错的位置找到
pydot
-
找到Dot类
-
类的开头代码是这样的:
-
-
找到其中的
self.prog = 'dot'
-
讲这句话替换为:
-
保存再次运行程序即可
文章链接:
https://www.zywvvd.com/notes/study/deep-learning/keras/call-GraphViz-failed/call-GraphViz-failed/