python - Keras: "RuntimeError: Error al importar pydot" después de instalar graphviz y pydot
theano (9)
Estoy usando Anaconda Python 2.7 en Windows 10
Estaba planeando hacer la visualización de Keras así que (mientras spyder estaba abierto) abrí el indicador de comando de Anaconda y pip instalé graphviz y pydot. Ahora cuando intento ejecutar lo siguiente:
from keras.models import Sequential
o cualquier tipo de "de keras". , Me sale el error:
ImportError: cannot import name gof
He desinstalado y reinstalado Keras, Graphviz y pydot. Estoy usando la versión de desarrollo de theano. No puedo encontrar una solución.
PD
Si desinstalo graphviz y pydot, keras vuelve a funcionar.
EDITAR
Después de desinstalar anaconda y reinstalarlo, incluyendo theano, keras, graphviz y pydot , ahora aparece el siguiente error:
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.
Utilicé pip install graphviz
y pip install git+https://github.com/nlhepler/pydot.git
Instale
graphviz
en el sistema. Descargue el paquete desde aquí , o en Mac:brew install graphviz
Instale python pydot-ng y graphviz wrapper.
pip install pydot-ng graphviz conda install -c anaconda pydot-ng #Anaconda user
Usa
pydot-ng
en tu códigoimport pydot_ng as pydot
Si las utilidades de visualización de Keras todavía usan pydot, intente cambiar la
import pydot
paraimport pydot_ng as pydot
envisualize_util.py
1) Conda instalar graphviz
2) pip instalar graphviz
3) pip instalar pydot
entonces:
import os os.environ["PATH"] += os.pathsep + AppData//Local//Continuum//anaconda3//envs//tensorflow//Library//bin//graphviz''
El mensaje de error es un poco engañoso, como puede ver here . El problema es que Graphviz no está instalado.
Pero mencionas que graphviz se instaló usando pip. Esto también es engañoso, ya que el paquete graphviz es solo un envoltorio de python, y los binarios de graphviz tienen que instalarse por separado para que el envoltorio de python funcione.
Instale graphviz by brew en osx brew install graphviz
, para el uso de ubuntu apt-get install graphviz
, no necesita instalar graphviz by pip.
Keras 2.0.6 busca pydot-ng (mejor mantenido) y luego, si no se encuentra, vuelve a caer en pydot. Resolví este problema instalando pydot-ng desde la source .
Para Anaconda en Mac:
Para instalar este paquete con conda run:
conda install -c anaconda graphviz
Si está utilizando un entorno Anaconda, es mejor que instale pydotplus
y graphviz
través de la conda install
.
conda install graphviz
conda install pydotplus
Nota: es mejor que actualice sus Keras a la versión más reciente (2.0.9+), puede verificar y elegir automáticamente cuál de pydotplus
, pydot-ng
, pydot
se usará. pydot-ng
se ha mantenido durante mucho tiempo y solo es compatible con py3.4- y py2.7.
Tuve un problema similar con mi Keras (sin anaconda). He resuelto mi problema usando esta manera
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
Yo tuve el mismo problema. Estoy usando Anaconda python en Ubuntu. pero parece que Keras usa la pitón del sistema, no la pitón Anaconda. Inicialmente, instalé pydot y graphviz usando conda. Cuando instalé pydot y graphviz en python del sistema (usando / usr / bin / pip install pydot) funcionó bien.