在试图导出模型的时候报错:raise ImportError('Failed to import pydot. You must install pydot' ImportError: Failed to import pydot. You must install pydot and graphviz for pydotprint
to work.
环境:win11 pycharm anaconda3 tensorflow1.15 python3.6
一开始直接pip安装pydot和graphviz,并利用代码检查是否正确安装
import pydot
import graphviz
print("pydot version:", pydot.__version__)
print("graphviz version:", graphviz.__version__)
发现可以正常输出结果
from tensorflow.keras.utils import plot_model
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
# 创建简单模型
model = Sequential()
model.add(Dense(32, input_dim=8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
# 保存模型图像
plot_model(model, to_file='model_structure.png', show_shapes=True, show_layer_names=True)
print("模型图像已成功生成。")
随后又用以上代码检查简单模型的图像能否成功导出,报同样的错误
上网搜寻资料后发现核心问题如下:
1.Python 3.6以上的版本已经不在支持 pydot的使用
2.graphviz似乎要前往官网下载再配置环境变量而不能直接pip install
我的解决方法如下:
1.先将之前安装的pydot、graphviz全部删除
2.前往官网Download | Graphviz 安装Graphviz,记得配置环境变量(不想手动配置可以直接勾选为所有用户添加PATH)
3.使用anconda在虚拟环境中按顺序pip install pydot、pip install pydotplus、pip install graphviz
pip install pydot -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pydotplus -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install graphviz -i https://pypi.tuna.tsinghua.edu.cn/simple
4.重启IDE
5.问题解决