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.

エッジ向けDeepLearningプロジェクトで必要なこと

2019年5月30日
Machine Learning Production Pitch #2登壇資料
イベントページ
https://machine-learning-pitch.connpass.com/event/125115/

タイトル
エッジ向け Deep Learning プロジェクトで必要なこと

登壇者プロフィール
安村 修一
LeapMind株式会社 機械学習エンジニア マネージャー

共同研究開発プロジェクトにおけるPM/エンジニアを担当しています。特に、低消費電力エッジデバイス向け(FPGAやCPU,GPUなど)のプロジェクトを多く担当しています。注力しているDeep Learning(CNN)の量子化やハードウェア実装におけるプロジェクトの進め方や設計/データ前処理/運用などについてお話いたします。

  • Login to see the comments

エッジ向けDeepLearningプロジェクトで必要なこと

  1. 1. エッジ向け Deep Learning プロジェクトで必要なこと
 LeapMind株式会社 安村修一
  2. 2. LeapMind Inc. © 2019 自己紹介 2 ● Shuichi YASUMURA (安村修一: @lm-yasumura) ● LeapMind 株式会社 ● Collaborative Development (Co-Dev) 事業部 ○ 情報電子工学専攻(大学院) → (2011年4月)三菱UFJ銀行(旧三菱東京UFJ銀行) システム部 → (2017年9月)LeapMind   → 共同研究 → プロダクト開発 → 共同研究 ● エンジニアマネージャー (兼 deep learningエンジニア)
  3. 3. 3 LeapMind について
  4. 4. LeapMind Inc. © 2019 4 LeapMind について
  5. 5. LeapMind Inc. © 2019 5 LeapMind の Mission 機械学習を使った今までにないデバイスを あまねく世に広める
  6. 6. LeapMind Inc. © 2019 6 LeapMind が狙う市場 エッジ向け Deep Learning
  7. 7. LeapMind Inc. © 2019 7 エッジ向け Deep Learning の適用例 自動運転プロジェクト 瓦礫撤去ロボット 発電所での異常検知 食物の異物混入検査 ドローンを用いた橋梁検査 スマート家電への組み込み 監視カメラ人物検知
  8. 8. LeapMind Inc. © 2019 8 Agenda ● エッジ向け Deep Learning プロジェクトでの注意点 ● モデルの圧縮(量子化)で必要なこと ● まとめ
  9. 9. 9 エッジ向けDeep Learning プロジェクトでの注意点
  10. 10. LeapMind Inc. © 2019 よくあるお問い合わせ 10 Deep Learning のモデル作成は 自社で行っていますが エッジ向けのハードウェア用に 変換してください 自社で作成した 学習済みモデルを LeapMind にお渡しすれば FPGA に実装してくれますよね
  11. 11. LeapMind Inc. © 2019 よくあるお問い合わせ 11 Deep Learning のモデル作成は 自社で行っていますが エッジ向けのハードウェア用に 変換してください 自社で作成した 学習済みモデルを LeapMind にお渡しすれば FPGA に実装してくれますよね そんな単純なものではございません そもそもなぜそのデバイスへ実装するのでしょうか
  12. 12. LeapMind Inc. © 2019 12 伝えたいこと:エッジデバイスでの推論 エッジデバイスにおける 高精度かつ高速な推論を実現するためには ネットワーク設計・学習の時点から ターゲットの推論環境を意識すべき 学習済み モデル モデル 圧縮 デバイス 実装
  13. 13. LeapMind Inc. © 2019 13 伝えたいこと:エッジデバイスでの推論 エッジデバイスにおける 高精度かつ高速な推論を実現するためには ネットワーク設計・学習の時点から ターゲットの推論環境を意識すべき 組込み向け ネットワーク 設計 極小量子化 学習 モデル 圧縮・最 適化 デバイス 実装 何度もモデル見直し
  14. 14. LeapMind Inc. © 2019 よくあるお問い合わせ 14 エッジデバイスでも ”精度”劣化しないで 動かせるようにモデルを チューニングしてもらいたい 基本的には”精度”90%以上で 見逃しとかなくなるように できますか
  15. 15. LeapMind Inc. © 2019 よくあるお問い合わせ 15 ”精度”の定義を教えてください 本当にその精度は必要でしょうか エッジデバイスでも ”精度”劣化しないで 動かせるようにモデルを チューニングしてもらいたい 基本的には”精度”90%以上で 見逃しとかなくなるように できますか
  16. 16. LeapMind Inc. © 2019 16 伝えたいこと:適切な要件・要求 実用用途を超えた精度・速度の要求はお互い不幸 まずは業務フローをしっかり検討 それからターゲットデバイスの選定 ネットワーク設計・構築を実施しても遅くない!
  17. 17. LeapMind Inc. © 2019 17 伝えたいこと:適切な要件・要求 実用用途を超えた精度・速度の要求はお互い不幸 まずは業務フローをしっかり検討 それからターゲットデバイスの選定 ネットワーク設計・構築を実施しても遅くない! 絶対見逃しは 許されないから ”とりあえず精度 100%”はNG 見逃しても リカバリ可能な業 務フロー 必要以上の スペックは いらない
  18. 18. 18 モデルの圧縮(量子化)がなぜ必要なのか
  19. 19. LeapMind Inc. © 2019 19 軽量なモデルの検討 エッジデバイスは リソース(計算資源・電力など)が限ら れている 軽量なモデルが必須
  20. 20. LeapMind Inc. © 2019 20 モデルの圧縮手法 Distillation 蒸留 Sharing 共有 Pruning 剪定 Quantization 量子化 一旦学習したネットワーク(教師モデル)の出力を 再現するようなネットワーク(生徒モデル)を新たに学習 近い値を持つパラメータをデータ構造として共有 影響の小さいシナプスあるいはニューロンを削除 重みなどのパラメータのビット幅を削減
  21. 21. LeapMind Inc. © 2019 21 量子化 と ターゲットデバイス 専用回路で高速かつ 低消費電力を実現
  22. 22. LeapMind Inc. © 2019 22 モデルの圧縮(量子化)の効果・影響 量子化を実施することでモデルは ものすごく小さくできる ただし、精度が劣化する可能性がある!
  23. 23. LeapMind Inc. © 2019 23 モデルの圧縮(量子化)の効果・影響 出典:A Survey of FPGA Based Neural Network Accelerator: https://arxiv.org/abs/1712.08934 1%程度の誤差低下における許容範囲 精度を重視するなら量子化の限界は8ビット
  24. 24. LeapMind Inc. © 2019 24 モデルの圧縮(量子化)の効果・影響 実際超低ビットモデルはどうなるか
  25. 25. LeapMind Inc. © 2019 25 モデルの圧縮(量子化)において考えるべきこと 対象となる ハードウェアの選定 学習の必要性 8ビット整数または固定小数点数までの 量子化ならば 精度を落とさず実現可能 しかし特定ハードウェア 特に廉価なFPGAで8ビットでは多すぎる 量子化ビット数
  26. 26. LeapMind Inc. © 2019 26 モデルの圧縮(量子化)において考えるべきこと 対象となる ハードウェアの選定 剪定と同様に 量子化も学習または再学習しながら 行うことによって 精度劣化を低減できることが いくつかの研究で報告されている 量子化ビット数 学習の必要性
  27. 27. LeapMind Inc. © 2019 27 モデルの圧縮(量子化)において考えるべきこと 学習の必要性 GPUを採用する場合 8ビットより少ないビット数を採用しても あまり意味がない 専用ハードウェアの場合 特に2値、3値を採用すると 乗算をXNORゲートで代替でき 大幅な省面積化と高速化が期待できる 量子化ビット数 対象となる ハードウェアの選定
  28. 28. LeapMind Inc. © 2019 28 モデルの圧縮(量子化)の効果・影響 精度落ちてませんか ところで …
  29. 29. LeapMind Inc. © 2019 29 必要な精度とは りんご 92.6% みかん 35.3% … 多少の精度劣化は影響しないこともある りんご 75.0% みかん 52.0% …
  30. 30. LeapMind Inc. © 2019 30 必要な精度とは 精度や誤差は領域の特定誤差に直接影響することもある 物体を覆う矩形(bounding box)が正しく描けなくなる
  31. 31. LeapMind Inc. © 2019 31 必要な精度とは 精度や誤差は領域の特定誤差に直接影響することもある 物体を覆う矩形(bounding box)が正しく描けなくなる ピクセル単位での誤差はホントに許容できないか
  32. 32. LeapMind Inc. © 2019 32 必要な精度と顧客への説明 要件・要求にあった”精度”を達成するために 最適な指標を予め検討 それを達成可能なモデル設計・構築・チューニングを実施 顧客の業務を理解し 顧客に上手く説明(期待値調整)する力が必要
  33. 33. 33 まとめ
  34. 34. LeapMind Inc. © 2019 まとめ 34 ● モデル圧縮について ○ 剪定、量子化、共有、蒸留 といった技術が存在 ○ いずれも、再学習が前提、または、再学習なしでは大幅な精度劣化 を招く ○ 十分なサイズの圧縮と高速化を実現するにはGPUでは難しく、専用 ハードウェアを考えるのが効率的 ● 精度について ○ 実運用を考慮して精度目標を設定することが重要 ○ 顧客を以下に説得して期待値を調整できるかも重要
  35. 35. 35 おまけ
  36. 36. あなたの技術、 
 研究室に閉じ込めていていいんですか?

  37. 37. OSS開発(Blueoil)
 ・スーパーコンピュータ上でのハイパーパラメータ探索機能追加
 ・セマンティックセグメンテーションのアプリケーション作成
 ・YoctoによるTerasic DE10-NanoとAvnet Ultra96用のイメージ作成機能追加
 サマーインターン LeapMind 
 プロジェクト例
 プロセッサ設計
 モデル開発
 ・ニューラルネット演算のマイクロコード作成
 ・ASIC設計検証
 ・ASIC/FPGA設計自動化
 ・高精度かつ計算量の少ない深層学習の手法やモデルの開発
 ・最新の論文に基づく技術の実装と検証
 詳しくはこちらから


×