Подтвердить что ты не робот

Keras: "RuntimeError: не удалось импортировать pydot". после установки graphviz и pydot

Я использую Anaconda Python 2.7 на окнах 10

Я планировал визуализацию Keras так (пока был открыт spyder). Я открыл командную строку Anaconda и установил pipviz и pydot. Теперь, когда я попробую запустить следующее:

from keras.models import Sequential

или любого рода "от кера"., Я получаю сообщение об ошибке:

ImportError: cannot import name gof

Я удалил и переустановил Keras, Graphviz и pydot. Я использую версию развития theano. Я не могу найти исправление.

P.S

Если я удалю graphviz и pydot, keras снова работает

ИЗМЕНИТЬ

После удаления anaconda и переустановки, включая anano, 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:\Anaconda2\lib\site-packages\keras\utils\visualize_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

4b9b3361

Ответ 1

Сообщение об ошибке немного вводит в заблуждение, как вы можете видеть здесь. Проблема в том, что graphviz не установлен.

Но вы упомянули, что graphviz был установлен с помощью pip. Это также вводит в заблуждение, так как этот пакет graphviz - это просто оболочка python, а бинарные файлы graphviz должны быть установлены отдельно для работы оболочки python.

Ответ 2

Если вы используете среду Anaconda, лучше установить pydotplus и graphviz через conda install.

conda install graphviz
conda install pydotplus

Примечание: Вам лучше обновить Keras до последней версии (2.0.9+), он может автоматически проверять и выбирать, какой из pydotplus, pydot-ng, pydot использовать. pydot-ng долгое время оставался ненадолго, и он поддерживает только py3.4- и py2.7.

Ответ 3

У меня была та же проблема. Я использую python Anaconda на Ubuntu. но он швы, что Keras использует системный питон, а не питон Anaconda. Первоначально я установил pydot и graphviz, используя conda. Когда я установил pydot и graphviz в системный python (используя/usr/bin/pip install pydot), он работал нормально.

Ответ 4

Keras 2.0.6 ищет pydot-ng (лучше поддерживается), а затем, если он не найден, возвращается на pydot. Я решил эту проблему, установив pydot-ng из source.

Ответ 5

То, что я сделал, последовало

import keras
import pydotplus
from keras.utils.vis_utils import model_to_dot
keras.utils.vis_utils.pydot = pydot

plot_model(your_model_name, to_file='model.png')

Это сработало для меня. На Mac Anaconda python = 3.6.8

Ответ 6

Установите graphviz с помощью brew в osx brew install graphviz, для использования ubuntu apt-get install graphviz не нужно устанавливать graphviz by pip.

Ответ 7

У меня была аналогичная проблема с моим Keras (без анаконды). Я решил эту проблему, используя этот способ.

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

Ответ 8

Для Anaconda на Mac:

Чтобы установить этот пакет с запуском conda:

conda install -c anaconda graphviz

Ответ 9

  1. Установите graphviz в систему. Загрузите пакет отсюда или на Mac:

    brew install graphviz
    
  2. Установите оболочку python pydot-ng и graphviz.

    pip install pydot-ng graphviz
    conda install -c anaconda pydot-ng #Anaconda user
    
  3. Использовать pydot-ng в коде

    import pydot_ng as pydot
    
  4. Если Keras visualization utils все еще использует pydot, попробуйте изменить import pydot чтобы import pydot_ng as pydot в visualize_util.py

Ответ 10

1) Conda install graphviz
2) pip install graphviz
3) pip установить pydot
затем:

import os os.environ["PATH"] += os.pathsep + AppData\\Local\\Continuum\\anaconda3\\envs\\tensorflow\\Library\\bin\\graphviz'

Ответ 11

Нижеследующее работает в блокноте jupyter, работающем в jupyter/tensorflow-notebook.

!conda install -y graphviz pydotplus

import pydotplus
import keras.utils
keras.utils.vis_utils.pydot = pydotplus
keras.utils.plot_model(your_model_name, to_file='model.png', show_shapes=True)

Вы должны сказать keras использовать pydotplus