BETA

kerasのplot_modelでハマった話

投稿日:2018-11-13
最終更新:2018-11-13
※この記事は外部サイト(https://qiita.com/hrs1985/items/7d923e9465...)からのクロス投稿です

概要

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

これを見ると

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の記述ミスを見つけてそれを修正した結果上手くいったと思っていたからなのですが、再検証した結果修正の内容とは無関係であったことがわかったので最低限必要な手順だけを記録しておくこととします。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@kiyoの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!