ニューラル・ネットワークが大きく複雑になるにつれて、アーキテクチャが適切に構築されているかどうか確認するのはどんどん難しくなります。Chainer は計算グラフの可視化をサポートしています。ユーザは build_computational_graph()
を呼び出すことで計算グラフを生成することができます、
生成された計算グラフは指定のフォーマットでダンプされます。 (現時点では、 Dot Language がサポートされています。)
基本的な使用方法は、次のようになります。
import chainer.computational_graph as c
...
g = c.build_computational_graph(vs)
with open('path/to/output/file', 'w') as o:
o.write(g.dump())
コード中の vs
は Variable
インスタンスのリストで、 g
は ComputationalGraph
のインスタンスです。このコードは少なくとも1つのvsから後方到達可能な(つまり、逆方向へのステップの繰り返しによって到達可能な)計算グラフを生成します。
これは生成されたグラフ(inception(3a) in GoogLeNet)の一部です。.このexampleはexample/imagenet
にあります。
chainer.computational_graph.build_computational_graph | アウトプットから後方到達可能なfunctions と variablesのグラフを構築する |
hainer.computational_graph.ComputationalGraph | 計算グラフを表すクラス |