
CNNの中間層の出力を出すことができるようになったので、各層の中間層を並べて出力してみたいと思います。
イメージとしては、こんな感じで出力したいのですが・・・

subplotでは複数のプロットをこんな配置にするのは難しそう。
matplotlibにはGridSpecというClassがあり、GridSpecを使うと柔軟な配置ができるようです。
配置したい最小単位でのグリッドを作成し、そのグリッドに対して、各図の配置を指定して埋めていくことができます。
今回、上図に合わせて、以下のように配置してみました。若干違いはありますが、概ね、配置を実現できました。
- 6×7のグリッドを作成
- 右3列は少し狭めにしたいので、幅の比率を小さくする(2:1の幅)
- 0,1列目は0-4行目のグリッドにそれぞれプロット
- 2,3列目は0-5行目のグリッドにそれぞれプロット
- 4-6列目は1-4行目のグリッドにまたがってプロット
ちょっと機械学習からは外れてしまいましたが、pythonを使った図表表現についてでした。
「Pythonと機械学習であそぼう(GridSpecを使って図表を柔軟に配置してみよう)」への1件のフィードバック
ピンバック: Pythonと機械学習であそぼう(CNN学習モデルの中間層をぜ〜んぶ出力してみよう) | ぼちぼちいこらい