Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

2018年01月27日 TensorBoardによる学習の可視化

858 views

Published on

発表日:2018年01月27日
イベント名: AITCオープンラボ TensorFlow勉強会シリーズ2 成果報告会
イベントURL:http://aitc.jp/events/20180127-OpenLab/info.html
タイトル:TensorBoardによる学習の可視化
発表者:袴田 隼毅氏 荒井 美千子氏 中山 智哉氏

学習のモデルや結果の可視化は、機械学習のパフォーマンスを評価し、問題
を発見するために必要不可欠です。
本発表では、TensorFlowに付属するTensorboardという可視化ツールを使って
学習を可視化する方法を解説します。

サンプルコード:ipynb
http://www.aitc.jp/4b21e766/download.rbx?fileId=446e2c2ecc0ca24a&dirId=5

Published in: Internet
  • Be the first to comment

2018年01月27日 TensorBoardによる学習の可視化

  1. 1. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoardによる 学習の可視化 2018年1月27日 AITC TensorFlow勉強会 袴田 隼毅@富士通 荒井 美千子@リコー 中山 智哉@日本総合システム
  2. 2. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoard について 1
  3. 3. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoardとは • 何をするもの?? • 大規模なディープニューラルネットワークの学習のような、TensorFlowを使 用した計算は、複雑なものになる。 • TensorFlowには、TensorBoardという一連の可視化ツールが 含まれている。 • TensorFlowプログラムを理解、デバッグ、および学習の最適化を容易に するために、TensorFlowの計算グラフや学習を可視化することができる。 TensorBoard: Visualizing Learning : https://www.tensorflow.org/get_started/summari es_and_tensorboard 2
  4. 4. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. • 可視化によって何ができる?何のためのもの? • 学習の可視化 学習過程を可視化することで、作成したNNがどの程度 学習できているかを確認できる。 また、パラメータをチューニングした結果、学習過程がどのように 変化するかが確認できるため、学習の最適化が容易になる。 • TensorFlow 計算グラフの可視化 TensorFlowの計算グラフは複雑になる。計算グラフを可視化すること で、TensorFlowを使用したプログラムの理解とデバッグに役立つ。 =NN(ディープラーニング)のモデルを開発するために重要 → MNIST(手書きの数値データセット)を利用した例で確認 TensorBoardとは 3
  5. 5. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 学習の可視化の例1 • パラメーター設定による結果を確認 例)最適化クラスのパラメータ(勾配降下法の学習係数) GradientDescentOptimizer(0.1) GradientDescentOptimizer(0.5) loss 0.3程度で収束 loss 0.27程度まで学習 4
  6. 6. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 学習の可視化の例2 • パラメーター設定による結果を確認 例)学習の試行回数 EPOCHS = 200 EPOCHS = 50 学習が途中で収束 (無駄な学習) 学習が完了したあたり で終了 (無駄なく学習) 5
  7. 7. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 計算グラフ可視化の例1 • MNISTを利用した学習モデルを可視化 6
  8. 8. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 計算グラフ可視化の例2 • オブジェクトの詳細を可視化 7
  9. 9. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoard の操作 8
  10. 10. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoardの画面(1) 選ぶメニュー(タブ)によって表示できるものが異なる スカラ値 画像 (png) 音 Tensorboard の “グラフ” 分散 ヒストグラム 高次データを 3Dっぽく表示 Chart ではない 9
  11. 11. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. TensorBoardの画面(2) メニュー項目の変化も激しい かつてはメニュー項目がもれなく並んでいた ログファイルがない項目はまとめてカスケード表示 指定された場所にログファイルがあれば、メニュー項目として表示 10
  12. 12. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. SCALARS 画面構成 表示エリア (1) タググループ (2) スムーズさ (3) X軸 (1) ダウンロード、 スケーリング 等の設定 (2) スムーズさ (3) X軸 設定 学習/テストした データ(ログ) 11
  13. 13. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 正規表現で複数のグラフを1つのタグ グループにまとめる。 例: “.*” は全データ(accuracyとloss)を 1つのタブにまとめる 正規表現で “.*” のタググループ 12
  14. 14. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. チェックを入れると、データを ダウンロードできるリンクが出 現する ダウンロード用 リンク SCALARS 13
  15. 15. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. “Ignore outliers in chart scaling” にチェックを入れると、外れ値を 「避けて」グラフをスケーリング 外れ値を除外してスケール調整 外れ値も含めてスケール調整 SCALARS 14
  16. 16. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. ツールチップの並び順 Default…Nameのアルファベット順 Ascending…値の小さい順 Descending…値の大きい順 Nearest…マウスカーソルに近い順 これがツールチップ 15
  17. 17. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. グラフのスムージング 0~1の間の数を指定。 0だとスムージングがかからない 1だともっともスムーズになる アルゴリズムは不明 (Bezier or spline?) SCALARS 16
  18. 18. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 折れ線グラフの横軸の指定 STEP…ステップ(実行回数) RELATIVE…実行時間(初回からの差分) WALL…時刻 SCALARS 17
  19. 19. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. グラフの表示・非表示の切り替え “Write a regexp..” を書くと、chartの中 のマッチする線のみ表示 TOGGLE ALL RUNSで 全表示・全非表示の切り替え SCALARS 18
  20. 20. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 画像データを表示 イメージの表示サイズ データ IMAGES 19
  21. 21. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. 音声の一覧を表示 ただし、実際に音が鳴るかはブラウザ依 存。chromeは 大丈夫そう。 表示する音声を選択 AUDIO 20
  22. 22. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. ちゃんと整理する →最終版のコードに置き換えて 説明 GRAPHS ソースコードの処理から グラフが自動生成される。 このグラフはインタラクティブに動 き、様々な範囲を可視化する 21
  23. 23. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. ちゃんと整理する →最終版のコードに置き換えて 説明 GRAPHS “Run” でログが置かれている サブディレクトリを切り替えられる “Session” でセッションを切り替えて、 該当セッションのグラフを表示 “Upload” でTensorFlow のモデル ファイルをアップロード 22
  24. 24. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. ちゃんと整理する →最終版のコードに置き換えて 説明 GRAPHS “Color” で色分け方法を選ぶ Structure…モデル(ネットワーク)構成 Device…処理を行ったデバイス(CPU vs GPU) Compute time…処理時間 Memory…メモリ使用量 TPU Compatibility… tensor processing unit上 で実行 23
  25. 25. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. ちゃんと整理する →最終版のコードに置き換えて 説明 GRAPHS “Trace Inputs” を使うと、ノード の依存関係を追いかけられる 24
  26. 26. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. GRAPHS ① “Compute time” を選択 ② “output_layer” ノードをクリック ③ 選んだノードの情報を表示 25
  27. 27. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. GRAPHS ④ “Trace inputs” を有効にする ⑤ “output_layer” の 依存関係 (upstream の)が表示される 26
  28. 28. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. DISTRIBUTIONS 27
  29. 29. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. HISTOGRAMS “OFFSET” は斜め 45度から見た感じ “OVERLAY” は真横 から見た感じ 28
  30. 30. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. EMBEDDINGS 実行したものを選ぶ(学習 とテストなど) 高次元のデータを 3D風に表示 実際は784次元 29
  31. 31. Copyright © 2017 Advanced IT Consortium to Evaluate, Apply and Drive All Rights Reserved. EMBEDDINGS グラフの色が反転 (背景が黒) 点の代わりに数値 を表示 回転中のグラフが home position に戻る 30

×