问题来源于使用了 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,问题解决。