LoginSignup
42
23

More than 5 years have passed since last update.

kerasのplot_modelでハマった話

Last updated at Posted at 2018-02-13

概要

kerasにはネットワーク構造を可視化するためのモジュールを持っています。
モデルの可視化
これを見ると

plot.py
from keras.utils import plot_model
plot_model(model, to_file='model.png')

とだけ書いてあるので、すぐにでも使えそうな気がします。
でもちょっとハマってしまったので記録を残しておきます。

pydotとgraphvizの導入

上記のようなコードを実行すると、
'Failed to import pydot. You must install pydot and graphviz for pydotprint to work.'
というエラーが出ます。
どうやら、pydotprintとやらを動かすのにpydotとgraphvizというモジュールが必要なようです。
どちらもcondaから導入可能です。

ただし、
pydotは現在開発が止まっており、python3.5および3.6では動きません。
これらのバージョンのpythonを用いている環境では、
pydotplusまたはpydot-ngを代わりに使用することで対処できます。
私はpydotplusを使いました。

graphviz本体の導入

実は上でインストールしたgraphvizはpython用のラッパーなので、
本体をインストールする必要があります。
ここ からインストーラーがダウンロードできます。
インストールしたらパスを通せば使用できます。

最後に

この記事を書いたのは、plot_modelを使おうと試行錯誤する中でkerasのvis_utils.pyの記述ミスを見つけてそれを修正した結果上手くいったと思っていたからなのですが、再検証した結果修正の内容とは無関係であったことがわかったので最低限必要な手順だけを記録しておくこととします。

42
23
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
23