Keras ImportError:导入pydot失败。您必须安装pydot和graphviz才能使“pydotprint”正常工作
我见过类似的问题,但也没有解决,所以我决定问 我正在尝试使用Keras ImportError:导入pydot失败。您必须安装pydot和graphviz才能使“pydotprint”正常工作,keras,graphviz,importerror,pydot,Keras,Graphviz,Importerror,Pydot,我见过类似的问题,但也没有解决,所以我决定问 我正在尝试使用 from keras.utils import plot_model plot_model(model, to_file='model.png') 首先,它显示出错误 ImportError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work. 因此,我通过Anaconda提示符安装了pydot和graphviz
from keras.utils import plot_model
plot_model(model, to_file='model.png')
首先,它显示出错误
ImportError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work.
因此,我通过Anaconda提示符安装了pydot和graphviz,并使用
conda install -c https://conda.binstar.org/t/TOKEN/j14r pydot
conda install -c https://conda.binstar.org/t/TOKEN/j14r graphviz
然后,我关闭了spyder并重新打开它。当我运行代码片段时,它仍然显示相同的错误。
我缺少什么?使用下一个命令安装它们:
sudo apt install python-pydot python-pydot-ng graphviz
对我来说,我所要做的就是安装graphviz和pydot: 在Python3上:
pip3 install pydot-ng
pip3 install graphviz
关于Python2:
pip3 install pydot-ng
pip3 install graphviz
这为我解决了这个错误 以下命令为我解决了问题
重新启动内核为我解决了这个问题,而不需要pydot ng。这些命令对我有效。我做到了:
conda install -c https://conda.binstar.org/t/TOKEN/j14r pydot
conda install -c https://conda.binstar.org/t/TOKEN/j14r graphviz
sudo apt install python-pydot python-pydot-ng graphviz
从以下位置找到解决方案:
我按照建议卸载并重新安装pydot+pydotplus,并使用Anaconda 3成功地解决了我的Windows 10计算机上的问题
conda uninstall pydot
conda uninstall pydotplus
conda uninstall graphviz
然后
注意:安装pydot还安装了graphviz,看起来您在使用Windows。在这种情况下,请参见 和/或 根据这两个来源的提示,似乎存在安装错误和/或路径错误。我在所有相关软件包上使用了
pip uninstall
,然后:
pip install pydot
pip install pydotplus
pip install graphviz
然后:
- 从下载并安装graphviz二进制文件
- 将路径添加到系统路径中的graphviz bin文件夹
我在Windows
cmd
窗口中运行python脚本myscript.py
。我必须关闭并重新打开它来刷新路径,但是plot_model()
生成的输出很好。即使在安装pydot
之后,pydotplus
和graphviz
我遇到了一个错误,即在环境路径中找不到dot
所以我从安装了graphviz-2.38.msi
但是,问题仍然存在,直到我从**keras.utils.plot\u model**
切换到**tf.keras.utils.plot\u model**
这对我很有效:
在我的虚拟环境(Python 3)中安装:
在计算机级别安装(如果仅在环境中安装,则无法工作):
要导入它,请执行以下操作:
import pydot_ng as pydot
试试这个
import keras
import pydot
import pydotplus
from pydotplus import graphviz
from keras.utils.vis_utils import plot_model
from keras.utils.vis_utils import model_to_dot
keras.utils.vis_utils.pydot = pydot
这对我有用。请查看此->了解jupyter笔记本电脑安装要求后重新启动笔记本电脑。它对我有用。这对我有用
import keras.utils.vis_utils
from importlib import reload
reload(keras.utils.vis_utils)
from keras.utils.vis_utils import plot_model
plot_model(model, to_file='model_plot.png', show_shapes=True, show_layer_names=True)
在不使用Anaconda的Windows 10上使用TensorFlow 2.3.0,以下(最终)对我有效:
C:\Program Files(x86)\Graphviz\bin
添加到系统和用户的path
环境变量中它在SpuderIDE中工作。其主要思想是减少导入库的数量
from keras.utils.vis_utils import pydot
from keras.utils.vis_utils import plot_model
plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)
关于win10 anaconda3
以管理员身份运行启动命令提示符
然后
这将为您提供有效的graphviz2.38。
这比从中下载安装程序的方式要好,在我的机器上不起作用。
然后您可以pip安装pydot以确保您拥有它。
然后重新启动内核,一切都会好起来。
如果没有,,
pip安装graphviz,因为它似乎是必要的python包装器。
在上面的
conda install
命令之前,我还尝试了pip intsall pydot ng pydotplus
。他们当时没有帮助。请查看@loannis Filippidis的可能副本,谢谢,是的,它说安装的GraphViz可执行文件(dot、neato等)的路径需要在path环境变量中,以便pydot找到它们。pydot曾经在早期版本中搜索这些可执行文件,但现在不再搜索了。如果你是这个意思,我不知道怎么做,很抱歉,你能更具体地一步一步地做什么吗?上面提到的答案链接到路径配置的相关信息。是的,我看到了,但我无法让它工作。我想说的是,我不知道如何在Path环境中放置已安装GraphViz可导出文件(dot、neasto等)的路径。我是windows的新用户Ye:找不到python pydot ngJustconda安装包-c conda forge pydot graphviz
works请不要只发布代码作为答案,还要解释代码的作用以及它如何解决问题。带有解释的答案通常更有帮助,质量更好,并且更有可能吸引更多的选票。这个答案展示了如何使用plot_模型函数,OP已经证明了他们知道如何做。问题是关于解决pydot和graphviz安装错误。请尝试查看graphviz是否从conda安装。如果是,请将其从pip上拆下并安装。这就是帮助我解决这个问题的原因。这表明您已经将keras和tensorflow作为tf导入。目前的建议是不要导入keras,而是在需要访问keras函数时使用tf.keras。对我有用,谢谢!
import keras
import pydot
import pydotplus
from pydotplus import graphviz
from keras.utils.vis_utils import plot_model
from keras.utils.vis_utils import model_to_dot
keras.utils.vis_utils.pydot = pydot
import keras.utils.vis_utils
from importlib import reload
reload(keras.utils.vis_utils)
from keras.utils.vis_utils import plot_model
plot_model(model, to_file='model_plot.png', show_shapes=True, show_layer_names=True)
from tensorflow.keras.utils import plot_model
# model = Model(...)
plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)
from keras.utils.vis_utils import pydot
from keras.utils.vis_utils import plot_model
plot_model(model, to_file='model.png', show_shapes=True, show_layer_names=True)
conda install graphviz