一、 簡介
Kears中提供了一種將模型繪制為層組成的圖,而不是TensorFlow運算組成的圖。通過使用keras.utils.plot_model函數,可以更加直觀的看到模型所構成的層組,而不再需要使用TensorBoard去實現模型可視化。與其相比,該方法更加簡單,並且可以將其以.png的格式,保存在工程目錄下面。下面我們介紹其安裝方式,以及由於使用Anaconda所造成的問題的解決方案。
二、 pydot的安裝
在使用該函數需要安裝Python的pydot庫和pydot-ng庫,同時還需要安裝graphviz庫。
打開Anaconda Prompt 安裝graphviz庫, 輸入 pip install graphviz
安裝pydot庫,輸入 pip install pydot
安裝pydot-ng庫, 輸入 pip install pydot-ng
完成上述庫的安裝之后,我們在pycharm中使用該函數
from keras.utils import plot_model
plot_model(model, show_shapes=True, to_file='model.png')
將會出現如下問題:
三、 解決方式
報錯的原因其實不在於pydot,跟python包沒有關系,而是因為graphviz需要安裝二進制執行文件(跟imagick類似),所以還需要去官網下一個graphviz安裝包安裝:
在此,我們以Windows為例進行講解:
1. 選擇.msi 格式進行下載,下載完成后進行安裝,將其安裝到任意位置;
2. 安裝完成后,需要將其bin文件添加到環境變量中;
3. 由於使用的為Anaconda集成環境,graphviz是我們安裝進去,因此在使用時我們需要對其地址進行代碼說明:
from keras.utils import plot_model
import os
os.environ["PATH"] += os.pathsep + 'E:/Graphviz/bin' #‘’中的內容為Graphviz/bin的地址
plot_model(model, show_shapes=True, to_file='model.png')
4.運行程序,便可在工程文件里面生成模型的層組成圖。
