エッジDLデバイスの選定において考慮すること ML@Loft

エッジDLデバイスの選定において考慮すること ML@Loft

386c31c9e9ce2d3ee001e967f9353d65?s=128

Koichi Nakamura

January 23, 2020
Tweet

Transcript

  1. エッジDLデバイスの選定において考 慮すること 中村 晃一 Idein株式会社 ML@Loft 2020/1/23

  2. 自己紹介 • 中村晃一 • Idein Inc. 創業者・代表取締役 • https://nineties.github.io/ •

    東京大学情報理工学系理学部情報科学科卒 • 最適化コンパイラ技術を研究 • 2015年3月に後期博士課程を退学しIdeinを創業 2
  3. IdeinとエッジDL 1. Actcast (https://actcast.io) というエッジコンピューティングでシステ ムを組む為のPaaSを提供している • 安価なデバイスでDLを実行する為のSDK • これまではRaspberry

    Pi • 今後は様々なデバイスに展開 • 多数のデバイスの遠隔管理 • マーケットプレイス 2. アイシン精機と資本業務提携をしており、車載SWの開発に協力して いる
  4. ©2019, Idein Inc. All rights reserved. 4 Raspberry PiでのDeep Learning推論実行

    https://youtu.be/MKTvxXjQMg8 小売店舗で使われている属性解析アプリの例 全ての解析をRaspberry Piのみで行い、textのみを送信 ・生画像を送信しないことでプライバシーに配慮 ・デバイス・通信・サーバーコストを著しく削減
  5. ©2019, Idein Inc. All rights reserved. 5 Image Classification Object

    Detection Pose Estimation Semantic Segmentation Sound Recognition Head Pose Estimation https://youtu.be/6m6wdBeCFlM https://youtu.be/BmCItHYNTTA https://youtu.be/fXW-kPxC_7c
  6. ©2019, Idein Inc. All rights reserved. 本日の話 • エッジコンピューティングとは •

    エッジデバイスの選定において考慮すること • (一つの事例として) Ideinは何故Raspberry Piに取り組んでいるのか? 6
  7. クラウドコンピューティング アプリケーション・データは データセンターに集約され処理される Illustrations are designed by macrovector

  8. エッジコンピューティング 末端のデバイス上や、デバイスの近くに 設置したサーバーで計算を行う。 アプリケーション・データは 複数の階層で分散して処理される Illustrations are designed by macrovector

    エッジ
  9. エッジコンピューティングが注目される背景 データセンターへの負荷集中 超低遅延化の需要増加 プライバシーへの関心の高まり

  10. データセンターへの負荷集中 Ericsson Mobility Report, November 2017 IoTデバイス Tesla Autopilot v8の画像処理例,

    Electrekの記事より コネクテッドデバイスの増加 計算負荷・データ量の大きい アプリケーションの需要増加
  11. 超低遅延化への需要増加 Toyota Research InstituteのTest Vehicle, engadgetの記事より 自動車・ロボット・ドローンなど 第5世代移動通信

  12. プライバシーへの関心の高まり EU一般データ保護規則(GDPR)

  13. Illustrations are designed by macrovector データセンターへの負荷集中 出来るだけエッジ側で処理をし、 負荷を分散する 超低遅延化への需要増加 出来るだけエッジ側で処理をし、

    総通信距離を短くする プライバシーへの関心の高まり 出来るだけエッジ側で処理をし、 必要最小限の情報のみをクラウドに送信
  14. 特にDeep Learning推論を実行するデバイスの選定は非常に難しい 1. モデル開発と組み込みに必要なスキルの乖離 2. デバイスの選択肢が非常に多い 3. 考慮しなければならない事が非常に多い エッジデバイスの選定はとても難しい 14

  15. モデル開発と組み込みに必要なスキルの乖離 • DLモデルをそのままではエッジデバイスで動かせない事が多い • 価格やその他の事情で、十分な性能のハードは使えない • 計算機と演算の相性がある、使えない演算がある場合もある • Pythonが使えない等ソフトウェア側の問題がある場合もある •

    ハードウェアの特性や製品化までのプロセスを予めよく検討した上で、モデル 開発を行う必要があるが、これらに必要なスキルが乖離しておりなかなか難 しい 15
  16. 選択肢が非常に多い 16 NVIDIA Jetsonシリーズ ARM Cortex-A系 ARM Cortex-M系 Intel PC

    FPGA DL専用アクセラレータチップ などなど
  17. 考慮しなければならない事が非常に多い • 価格 • 性能 • サイズ • 消費電力 •

    I/O • 通信 • セキュリティ機能 • リアルタイム性 • 各種耐久性(熱、埃、水、振動、etc) • メーカーの供給保証や品質保証体制 • 最終製品の製造、販売、保守 • SW/HW/ユーザー/企業のエコシステム • リーガル的な事 などなど 17
  18. 考慮しなければならない事が非常に多い • 価格 • 性能 • サイズ • 消費電力 •

    I/O • 通信 • セキュリティ機能 • リアルタイム性 • 各種耐久性(熱、埃、水、振動、etc) • メーカーの供給保証や品質保証体制 • 最終製品の製造、販売、保守 • SW/HW/ユーザー/企業のエコシステム • リーガル的な事 などなど 18 トレードオフだらけで、一つのデバ イスが全てのニーズ満たす事はな い無い
  19. どうやって選定するのか? ビジネスモデル上の要請によって決まる。 製品の種類 • 車?ドローン?ロボット?AIカメラ?スマートスピーカー? ビジネスモデル • DLを搭載した製品を販売する • 組み込み向けのソフトウェアライブラリを販売する

    • 製品開発の受託を行う • 開発ツールやサービスを提供する • などなど 19
  20. 例: ハードウェア製品を売るビジネスの場合 • 完成品売り切りの場合 • 必要なSWを搭載出来るギリギリの性能を持ち、原価の安いデバイスが選択される • 組み込みOSを使い、モデル圧縮技術なども活用して、とにかくリソースを節約する方向に力が働く • HWプラットフォームとして売る場合

    • 後でどの様なSWを動作させる事になるか分からないので、性能の高いデバイスが選択されがち • 様々なSWが動く様にリッチなOSを使い、AIについても既存のソフトウェアがそのまま使える様にしようと力が働 く 20 ビジネスモデルによってテクノロジーの選択が全く変わってしまう
  21. Ideinの場合: クラウドプラットフォーム事業を行なっている 21 https://actcast.io • エッジAIのマーケットプレイスがあり、AIを売りたい人と使 いたい人を結びつける • 買ったアプリはエッジデバイスに遠隔配信してインストー ル、すぐにデバイス上で動作

    • 多数のデバイスの遠隔管理や、デバイスで取った情報と 外部サービスのAPI連携などの機能を備える (Idein自身でデバイスは販売していない)
  22. プラットフォームビジネスの特徴とIdeinの選択 • 参加するプレイヤーが多い程サービス価値が向上する(ネットワーク外部性) • 先行者優位性が強く働く • リッチなOSが動作し、様々なSWが動作する事が必要。 • 普及しており、安価で入手の容易なデバイスである方が良い。 •

    様々な目的に使えるように、HWエコシステムも大きな方が良い。 これらの観点で、1st デバイスとしてRaspberry Piを選択した。 AIを動かすには低スペックだが、そこさえ技術で解決すれば魅力的な選択肢 一方、Idein自身で最終製品を売る訳ではないので、Raspiの品質保証面の問題の優先度は下がった。
  23. Idein Actcast マーケット プレイス デバイス・アプリの 管理 ¥ ¥ AIベンダ 個人の開発者

    デバイスメーカー ITサービスベンダ ¥ ¥ ¥ ¥ ¥ Actcast対応 IoTデバイス サービス エンドユーザ ソリューションベンダー 実世界情報 運営 遠隔 インストール アプリ利用料 アプリ アプリ利用料から 手数料分を徴収 登録(無料) 購入 アプリ利用料 SDK提供(無料) 利用料 代金 代金 利用料 デバイス・アプリ・サービスを 自由に組み合わせて、実世界 情報を扱うシステムを手軽に 構築出来る デバイス・アプリの遠 隔運用、デバイスで取 得した情報とWebの連 携などの機能を提供 機械学習モデルだけで 直接マネタイズできる 低コストでデバイスにAIを 搭載しプラットフォーム化 出来る 分析・可視化 ・通知等 安価なデバイスで深層 学習を動かすアプリを 簡単に作れる
  24. Raspi以外にも取り組み中 Pythonコード + Schema 同じモデルとコードから、様々なハードで効率的に実行できるエッジ デバイス用アプリを生成 適材適所でデバイスを選択して使える様にすることを目指す • 高性能デバイス •

    低性能デバイス • 高耐久デバイス … ActDK CLI, 最適化コンパイラ, AppFramework
  25. まとめ • エッジデバイスの選定は、考えなければならない事が非常に多く難しい • ビジネスモデルによってテクノロジーの選択が変わる といった話をしました。何かご参考になればありがたいです。