Kerasで可視化いろいろ
2017.4.26
Developers in KOBE Vol. 13
BathTimeFish 村岡 正和
HTML5-WEST.jp代表 / html5j マークアップ部 部長 / HTML5 Experts.jp メンバー
NPO法人日本ウェアラブルデバイスユーザー会理事
神戸市ウェアラブルデバイス推進会議メンバーなど
むらおか まさかず
村岡正和
Webアプリケーション開発 IT業務システム設計/開発
Webサービス導入/事業戦略コンサルティング
神戸デジタル・ラボ 社外取締役
@bathtimefish
HTML5-WEST.jp
ボクでも使えるDeep Learningツール
https://keras.io/
今日はKerasで学習させるときに使う
データ可視化方法をいくつか紹介します。
https://github.com/bathtimefish/keras-visualization-example
ソースコードは上げてあります
材 料
https://github.com/fchollet/keras/blob/master/examples/mnist_cnn.py
mnist手書き文字認識 を畳み込み2層でやってるKerasのサンプル
1層目 フィルタ数 32
1層目 フィルタ数 64
softmaxで10種の確率を出す
勾配降下の最適化法 AdaDelta
学習結果を保存する
https://keras.io/ja/callbacks/#tensorboard
モデルをJSON形式で出力
HDF5形式で保存する
history.historyがまんまプロットデータ
モデルを可視化する
model_from_json でモデルを読み込み
plot_model でpng形式で保存
https://github.com/bathtimefish/keras-visualization-example/blob/master/load_model.py
畳み込み層の特徴マップを可視化する
model_from_json でモデルを読み込み
load_weightsで重みを読み込み
畳み込み1層目(model.layers[0])の重みを取得
転置
https://github.com/bathtimefish/keras-visualization-example/blob/master/load_weights.py
pyplotで画像化して表示
学習経過をグラフ化する
pickleをロード
pyplotで画像化して表示
https://github.com/bathtimefish/keras-visualization-example/blob/master/load_history.py
TensorBoardで表示する
btf$ tensorboard --logdir ./graph/
Starting TensorBoard b'41' on port 6006
(You can navigate to http://192.168.7.27:6006)
ログのディレクトリを指定してTensorBoardを起動
まとめ
Kerasはいろいろ簡単だけど可視化も手軽にできる。
学習がうまくいってるかを確認するのにはこういっ
た可視化を頻繁に使うので覚えて置くと便利かもで
す。
おまけ
5/6, 7 に 078 Kobe が開催されます。
AI入りChatBot展示するので見に来てね。
Thanks !

Kerasで可視化いろいろ