Slide 1

Slide 1 text

Copyright © OPTiM Corp. All Right Reserved. 1 エッジ・クラウド推論を支える 技術スタックの展望

Slide 2

Slide 2 text

Copyright © OPTiM Corp. All Right Reserved. 2 奥村 @izariuo440 OPTiM Corporation / R&D Team​ 2001年入社 コンピュータビジョン 高速推論 以前は Optimal Remote など 自己紹介 学生時代に作ったゲーム(18年前) 最近の Windows では動かないが Wine で動く

Slide 3

Slide 3 text

Copyright © OPTiM Corp. All Right Reserved. 3 展示物もご覧ください

Slide 4

Slide 4 text

Copyright © OPTiM Corp. All Right Reserved. 4 話す内容 ※ 図は「Production ML Systems | Machine Learning Crash Course」から引用 https://developers.google.com/machine-learning/crash-course/production-ml-systems ここの CV 推論関連

Slide 5

Slide 5 text

Copyright © OPTiM Corp. All Right Reserved. 5 技術スタック ソフトウェア ハードウェア

Slide 6

Slide 6 text

Copyright © OPTiM Corp. All Right Reserved. 6 技術スタック ソフトウェア NVIDIA GPU、Coral Edge TPU、Cloud TPU、 Mobile GPU、CPU、 Video Core IV、FPGA、Movidius NCS

Slide 7

Slide 7 text

Copyright © OPTiM Corp. All Right Reserved. 7 技術スタック TensorFlow、Chainer、PyTorch、 TensorRT、TVM、OpenCV、 FFmpeg、gstreamer、DeepStream、MediaPipe NVIDIA GPU、Coral Edge TPU、Cloud TPU、 Mobile GPU、CPU、 Video Core IV、FPGA、Movidius NCS

Slide 8

Slide 8 text

Copyright © OPTiM Corp. All Right Reserved. 8 技術スタック TensorFlow、Chainer、PyTorch、 TensorRT、TVM、OpenCV、 FFmpeg、gstreamer、DeepStream、MediaPipe NVIDIA GPU、Coral Edge TPU、Cloud TPU、 Mobile GPU、CPU、 Video Core IV、FPGA、Movidius NCS

Slide 9

Slide 9 text

Copyright © OPTiM Corp. All Right Reserved. 9  ハードウェア • 昨年度暮れからエッジ推論に適した安価なデバイスが台頭 • NVIDIA はさらなる高性能化、低消費電力化が進む • Tesla T4 は 70W の消費電力、 INT4 搭載 • Jetson Nano は 5 ~ 10 W の消費電力、激安 • Coral Edge TPU はエッジ推論特化、2W の消費電力、激安、10/22 にβ脱出 • libedgetpu.so が libc++ ではなく libstdc++ でビルドされるようになった 最近の動向 (1/3)

Slide 10

Slide 10 text

Copyright © OPTiM Corp. All Right Reserved. 10  ソフトウェア • 深層学習フレームワークは TensorFlow と PyTorch が二大巨塔に • PyTorch は新しい論文でデファクト化しつつあるような・・・ • クラウド、エッジ、モバイルなどさまざまな環境での推論が可能になりつつある • 高速推論は TensorRT に存在感あり、TVM も見逃せない • リアルタイム映像解析はパイプライン処理が可能な gstreamer ベースが主流に • DeepStream は gstreamer ベース、MediaPipe は gstreamer を参考にしている 最近の動向 (2/3)

Slide 11

Slide 11 text

Copyright © OPTiM Corp. All Right Reserved. 11  物体検出モデル • 精度なら Two-Stage Detectors (Faster R-CNN)、 速度なら Single-Stage Detectors (YOLO/SSD) は変わらず • SSD に姿勢推定で使われるヒートマップベースの手法が取り入れられつつある • Objects as Points、CenterNet、TTFNet など - ただし DCN v2 が多用されてて何が寄与しているか分かりづらいのはつらい • 高解像度画像でもパッチに分解してヒートマップを合成すれば無理のない検出がしやすい • TTFNet は精度と速度のバランスがとれており、訓練時間もかなり短くなっていてナイス、DCN v2 も3つだけ • 顔検出は MobileNet を Backbone とした軽量、高速、高精度なモデルが台頭 • RetinaFace やその派生 (RFBNet を取り入れたもの) 最近の動向 (3/3)

Slide 12

Slide 12 text

Copyright © OPTiM Corp. All Right Reserved. 12 何を考慮して取り組んでいくのか  「速度」と「精度」を基本指標としている。これらはトレードオフの関係があり、現状のGPU スペックではどちらかが犠牲になりやすい。  推論に必要なハードウェアは高価なものも多いので、速さは正義である。 クラウドでも高集約化につながる。目指せ C10K。  多くの手法は、一般的な深層学習フレームワークを使って実装されており、推論向けに最適化さ れていない場合が大半である。  TensorRT や TVM などをうまく活用すれば、一般的な深層学習フレームワークの推論の数倍の 推論速度が達成できる可能性がある。  ハードウェアの進化が非常に速いので、早期にキャッチアップできなければそれだけでチャンス を逃す可能性が高い。

Slide 13

Slide 13 text

Copyright © OPTiM Corp. All Right Reserved. 13  C/C++ • TensorRT、TFLite、LibTorch、画像や動画を扱うライブラリ (libjpeg とか) • CMake を使うことが多い、Jetson など aarch64 向けへのクロスコンパイルも  Rust • 安全かつ高速なパイプラインフレームワークの構築 • sys crate を用意することが多い、クロスコンパイルは autotools 注意、.carg/config の linker 指定を忘れずに  Python • モデルの訓練や INT8 キャリブレーションのためのスクリプトなど • pybind は CMake と仲がいいが、wheel 作るときはちょっとつらい  CUDA • 前処理・後処理の最適化や、TensorRT に足りないオペレータの実装  Java/Kotlin/Objective-C/Swift • モバイル向けの開発 これらを開発するための言語など

Slide 14

Slide 14 text

Copyright © OPTiM Corp. All Right Reserved. 14