• 使用keras时出现 `pydot` failed to call GraphViz的解决办法


    问题来源于使用了 keras.utils.plot_model,报错内容为:

    2018-08-29 08:58:21.937037: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
    /home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/keras/engine/saving.py:269: UserWarning: No training configuration found in save file: the model was *not* compiled. Compile it manually.
      warnings.warn('No training configuration found in save file: '
    Traceback (most recent call last):
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/pydot.py", line 1861, in create
        stderr=subprocess.PIPE, stdout=subprocess.PIPE)
      File "/usr/lib/python3.6/subprocess.py", line 709, in __init__
        restore_signals, start_new_session)
      File "/usr/lib/python3.6/subprocess.py", line 1344, in _execute_child
        raise child_exception_type(errno_num, err_msg, err_filename)
    FileNotFoundError: [Errno 2] No such file or directory: 'dot': 'dot'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/keras/utils/vis_utils.py", line 26, in _check_pydot
        pydot.Dot.create(pydot.Dot())
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/pydot.py", line 1867, in create
        raise OSError(*args)
    FileNotFoundError: [Errno 2] "dot" not found in path.
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/home/you/Documents/workspace/PycharmProjects/venv/src/test.py", line 8, in <module>
        plot_model(model, to_file=MODEL_PNG)
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/keras/utils/vis_utils.py", line 132, in plot_model
        dot = model_to_dot(model, show_shapes, show_layer_names, rankdir)
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/keras/utils/vis_utils.py", line 55, in model_to_dot
        _check_pydot()
      File "/home/you/Documents/workspace/PycharmProjects/venv/lib/python3.6/site-packages/keras/utils/vis_utils.py", line 29, in _check_pydot
        '`pydot` failed to call GraphViz.'
    OSError: `pydot` failed to call GraphViz.Please install GraphViz (https://www.graphviz.org/) and ensure that its executables are in the $PATH.
    
    Process finished with exit code 1
    

      第一反应是pip3 install graphviz,但安装完后依然不好使。

           后来查官网可以使用apt install graphviz,问题解决。

  • 相关阅读:
    什么是主从复制、读写分离、为什么要使用
    Swift 4.0 + Ipad开发项目中值得注意知识点
    Swift细节记录<一>
    ECMAScript 6复习<一>
    Swift4.0复习访问控制与作用域
    Swift4.0复习操作符方法与操作符的定制
    Swift4.0复习错误处理
    Swift4.0复习扩展
    Swift4.0复习泛型
    TCP的三次握手(建立连接)和四次挥手(关闭连接)
  • 原文地址:https://www.cnblogs.com/hutao722/p/9552246.html
Copyright © 2020-2023  润新知