ошибка при попытке использовать keras.utils.plot_model

1

Я пытаюсь сделать график/график модели глубокого обучения в Python с использованием пакета Keras, но, к сожалению, он продолжает давать мне ошибку, которая не очень информативна.

Я запускаю python на Linux с Python 3.5.2, Anaconda 4.2.0, Keras 2.1.6, и я использую endorflow-gpu 1.7.0 Backend.

Вот сообщение об ошибке:

keras.utils.plot_model(unet, to_file='model.png', show_shapes=False, show_layer_names=True, rankdir='TB')

['dot', '-Tps', '/tmp/tmphesl1j0c'] return code: 127

stdout, stderr:
 b''
b'dot: error while loading shared libraries: libexpat.so.0: cannot open shared object file: No such file or directory\n'

---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-9-60bb0e3b97bd> in <module>()
----> 1 keras.utils.plot_model(unet, to_file='model.png', show_shapes=False, show_layer_names=True, rankdir='TB')

/.../anaconda3-4.2.0/lib/python3.5/site-packages/keras/utils/vis_utils.py in plot_model(model, to_file, show_shapes, show_layer_names, rankdir)
    132             'LR' creates a horizontal plot.
    133     """
--> 134     dot = model_to_dot(model, show_shapes, show_layer_names, rankdir)
    135     _, extension = os.path.splitext(to_file)
    136     if not extension:

/.../anaconda3-4.2.0/lib/python3.5/site-packages/keras/utils/vis_utils.py in model_to_dot(model, show_shapes, show_layer_names, rankdir)
     53     from ..models import Sequential
     54 
---> 55     _check_pydot()
     56     dot = pydot.Dot()
     57     dot.set('rankdir', rankdir)

/.../anaconda3-4.2.0/lib/python3.5/site-packages/keras/utils/vis_utils.py in _check_pydot()
     24         # Attempt to create an image of a blank graph
     25         # to check the pydot/graphviz installation.
---> 26         pydot.Dot.create(pydot.Dot())
     27     except OSError:
     28         raise OSError(

/.../anaconda3-4.2.0/lib/python3.5/site-packages/pydot.py in create(self, prog, format, encoding)
   1882                      out=stdout_data,
   1883                      err=stderr_data))
-> 1884         assert p.returncode == 0, p.returncode
   1885         return stdout_data

AssertionError: 127

Я был бы очень признателен, если бы кто-нибудь мог помочь мне с этой ошибкой.

Примечание: как pydot, так и Graphviz

Теги:
tensorflow
keras

1 ответ

0

в комментарии говорится

 24         # Attempt to create an image of a blank graph
 25         # to check the pydot/graphviz installation.

поэтому я предполагаю, что вам нужно установить graphviz и pydot

если вы находитесь на ubuntu или аналогичном:

sudo apt install graphviz

и в вашем anaconda env:

pip install pydot
  • 0
    Оба пидот и графвиз установлены
  • 0
    Вы можете запустить pydot.Dot.create(pydot.Dot()) в оболочке Python? Я сделал выше 2, и это работает для меня, я не использую анаконду, хотя
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню