Keras: "RuntimeError: не удалось импортировать pydot."после установки graphviz и pydot
я использую Anaconda Python 2.7 в windows 10
я планировал сделать визуализацию Keras, поэтому (пока spyder был открыт) я открыл командную строку Anaconda и pip установил graphviz и pydot. Теперь, когда я пытаюсь запустить следующее:
from keras.models import Sequential
или любого рода "от кераса."Я получаю ошибку:
ImportError: cannot import name gof
Я удалил и переустановил Keras, Graphviz и pydot. я использую версию разработки theano. Я не могу найти решение.
П. С.
если я удалю graphviz и pydot, keras снова работает
редактировать
после удаления anaconda и переустановки его, включая theano, keras,graphviz и pydot теперь я получаю следующую ошибку:
from keras.utils.visualize_util import plot
Using Theano backend.
Using gpu device 0: GeForce GTX 970M (CNMeM is disabled, cuDNN not available)
Traceback (most recent call last):
File "<ipython-input-1-65016ddab3cd>", line 1, in <module>
from keras.utils.visualize_util import plot
File "C:Anaconda2libsite-packageskerasutilsvisualize_util.py", line 8, in <module>
raise RuntimeError('Failed to import pydot. You must install pydot'
RuntimeError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work.
Я pip install graphviz
и pip install git+https://github.com/nlhepler/pydot.git
9 ответов
сообщение об ошибке вводит в заблуждение, как вы можете видеть здесь. Проблема в том, что программ не установлено.
но вы упоминаете, что graphviz был установлен с помощью pip. Это также вводит в заблуждение, так как этот пакет graphviz является просто оболочкой python, а двоичные файлы graphviz должны быть установлены отдельно для работы оболочки python.
Keras 2.0.6 ищет pydot-ng (лучше поддерживается), а затем, если он не найден, возвращается на pydot. Я решил эту проблему, установив pydot-ng из источник.
если вы используете среду Anaconda, вам лучше установить pydotplus
и graphviz
via conda install
.
conda install graphviz
conda install pydotplus
Примечание.:
Вам лучше обновить Keras до последней версии (2.0.9+), он может автоматически проверять и выбирать, какой из pydotplus
,pydot-ng
,pydot
использовать. pydot-ng
долгое время не поддерживался, и он поддерживает только py3.4-и py2.7.
У меня была та же проблема. Я использую Anaconda python на Ubuntu. но это швы, что Keras использует python системы, а не Anaconda python. Первоначально я установил pydot и graphviz с помощью conda. Когда я установил pydot и graphviz в python системы (используя /usr/bin/pip install pydot), он работал нормально.
установите graphviz с помощью brew в osx brew install graphviz
, для использования ubuntu apt-get install graphviz
, Не нужно устанавливать graphviz по pip.
У меня была аналогичная проблема с моим Keras (без anaconda). Я решил свою проблему, используя этот способ
sudo pip install pydot
sudo pip install graphviz
sudo add-apt-repository ppa:gviz-adm/graphviz-dev
sudo apt-get update
sudo apt-get install graphviz-dev
для Anaconda на Mac:
чтобы установить этот пакет с помощью conda run:
conda install -c anaconda graphviz
-
установить
graphviz
системе. Загрузите пакет из здесь, или на Mac:brew install graphviz
-
установите Python pydot-NG и оболочку graphviz.
pip install pydot-ng graphviz conda install -c anaconda pydot-ng #Anaconda user
-
использовать
pydot-ng
кодimport pydot_ng as pydot
если Keras визуализация utils по-прежнему использует pydot, попробуйте изменить
import pydot
toimport pydot_ng as pydot
наvisualize_util.py
1) Conda установить graphviz
2) pip установить graphviz
3) pip установить pydot
затем:
import os
os.environ["PATH"] += os.pathsep + 'C:\Users\10057491\AppData\Local\Continuum\anaconda3\envs\tensorflow\Library\bin\graphviz'