機械学習 PR

【NNabla】Python CLIでニューラルネットワークの構造を可視化する

NNabla CLIでニューラルネットワークの構造を可視化
記事内に商品プロモーションを含む場合があります

こんにちは。

ディープラーニングお兄さんの”はやぶさ”@Cpp_Learningです。

前回、Sony製の深層学習フレームワーク “Neural Network Libraries(NNabla)” と学習済みモデル(HDF5)を使って推論を実践するチュートリアル記事を書きました↓

NNablaと学習済みモデルで推論
【NNabla】Neural Network Librariesと学習済みモデルによる推論 -HDF5ファイル編-直観的にニューラルネットワークの実装ができるソニー製の深層学習フレームワーク”NNL”によるDeep Learning(ディープラーニング)入門チュートリアルを書きました。学習済みモデル(h5)を使った推論が行えるPython APIのソースコードも公開しています。勉強にお役立て下さい。...

↑記事の終盤で学習済みモデル”MyChain.nnp”を保存しました。

今回は、この”MyChain.nnp”に保存してある”ニューラルネットワークの構造”を可視化します。

Neural Network Libraries(NNabla)と学習済みモデル

“Neural Network Libraries”の場合、ニューラルネットワークを以下の形式で保存します。

ファイル 内容
net.nntxt ニューラルネットワークの構造(アーキテクチャ)
parameters.h5 ニューラルネットワークの重み(パラメータ)
net_param.nnp ニューラルネットワークの構造と重み

つまり、学習済みモデル”MyChain.nnp”にはニューラルネットワークの構造と重みの情報が保存してあります。

Python Command Line Interface

“Neural Network Libraries”にはCommand Line Interface(以下 nnabla_cli)があり、コマンドラインにコマンドを入力することで様々な処理をすることができます。

nnabla_cliの使い方については、以下の公式ドキュメントをご参照ください↓

スポンサーリンク

nnabla_cliでニューラルネットワークの構造を可視化

nnabla_cliを使い*.nntxtまたは*.nnpに保存してあるニューラルネットワークの構造を可視化することができます。

NNablaと学習済みモデルで推論
【NNabla】Neural Network Librariesと学習済みモデルによる推論 -HDF5ファイル編-直観的にニューラルネットワークの実装ができるソニー製の深層学習フレームワーク”NNL”によるDeep Learning(ディープラーニング)入門チュートリアルを書きました。学習済みモデル(h5)を使った推論が行えるPython APIのソースコードも公開しています。勉強にお役立て下さい。...

↑記事で保存した学習済みモデル”MyChain.nnp”をnnabla_cliで可視化したもの↓

NNabla CLIでニューラルネットワークの構造を可視化

コマンド1つで簡単にニューラルネットワークの構造を描画してくれるので、nnabla_cliとても便利です!

以降でnnabla_cliを使ったネットワーク構造の描画方法を説明します。

Graphvizインストール

ネットワーク構造を描画には、Graphviz – Graph Visualization Softwareが使われています。

そのため、まずはGraphvizをインストールします。

GraphvizはUMLツールのPlantUMLでも使うので、インストール済みの人もいるかもしれません。

WindowsにGraphvizをインストールする方法は以下の記事で紹介しています。

Visual Studio CodeからPlantUMLを使う
【UMLツール】Visual Studio CodeとPlantUMLでソフトウェア設計図を描く方法こんにちは。 Visual Studio Codeヘビーユーザーの”はやぶさ”@Cpp_Learningです。 前回『UML...

私の場合、Windows Subsystem for Linux(WSL)にNNablaの環境構築をしました(WSLにNNablaをインストールする方法は以下の記事で紹介しています)

Neural Network Libraries
【NNabla】Windows(WSL)にNeural Network Librariesをインストールするこんにちは。 ディープラーニングお兄さんの”はやぶさ”@Cpp_Learningです。 深層学習フレームワークのChaine...

なので本記事では、WSL(Ubuntu)にGraphvizをインストールする方法を紹介します。

以下のコマンドでインストール

sudo apt install graphviz

以上!

ニューラルネットワークのグラフを描画

以下のコマンドでニューラルネットワークのグラフを描画できます。

nnabla_cli draw_graph -o [output-folder] [path-to-nnp.nnp]

あるいは、cdコマンドで”MyChain.nnp”が保存してあるディレクトリまで移動して、フォルダ指定しない以下のコマンドでもOKでした。

nnabla_cli draw_graph MyChain.nnp

なお、↑のコマンドを使うと”draw_out”というディレクトリが自動生成され、その中に”MyChain.png”が保存してありました。簡単!

まとめ

“Neural Network Libraries”のnnabla_cliを使って簡単にニューラルネットワークの構造を描画することができました。

nnabla_cliを使えばコマンドラインから様々な処理を実行できるので便利です!

Sony様すごい!素敵なツールをありがとう!!

はやぶさ
はやぶさ
理系応援ブロガー”はやぶさ”@Cpp_Learningは頑張る理系を応援します!

PICK UP BOOKS

  • 数理モデル入門
    数理モデル
  • Jetoson Nano 超入門
    Jetoson Nano
  • 図解速習DEEP LEARNING
    DEEP LEARNING
  • Pythonによる因果分析
    Python