Re Reference AI

インフラ

エッジAIとは

Edge AI

クラウド上のサーバーではなく、スマートフォンやIoT機器等の端末上でAIモデルを推論する仕組み

エッジAI推論最適化

ひとことで言うと

クラウドではなく、スマホやセンサーなど手元の機器でAIを動かす仕組み。

概要

エッジAIとは、クラウド上の大規模なサーバーへ処理を送るのではなく、スマートフォン・IoTデバイス・車載機器等、データが発生する端末(エッジ)側でAIモデルの推論を直接実行する仕組みを指す。 ネットワーク通信を介さずその場で処理が完結するため、応答の遅延(レイテンシ)を抑えられるほか、通信が不安定・不可能な環境でも動作できる。 端末の計算資源・メモリ・電力には制約があるため、量子化知識蒸留、SLM(小規模言語モデル)といったモデル軽量化技術と組み合わせて運用されることが多い。

背景

クラウドAPI経由でAI推論する構成では、通信の遅延や通信費用、プライバシーに関わるデータを外部サーバーへ送信する必要がある等の課題があった。 エッジAIは、推論処理を端末側で完結させ、低遅延・オフライン動作・データのローカル処理といった要件へ対応するために発展してきた。

アーキテクチャ

クラウドで学習した大規模モデルを、量子化知識蒸留・枝刈り(プルーニング)等でサイズと計算量を削減した上で、TensorFlow LiteやONNX Runtime、Core ML等のエッジ向け推論ランタイムが読み込める形式へ変換する。 NPU(Neural Processing Unit)のような専用の推論アクセラレータを搭載した端末では、対応する演算をハードウェア上で高速に実行できる。

ワークフロー

クラウド等の計算資源が豊富な環境で大規模モデルを学習する → 量子化知識蒸留・枝刈り等でモデルを軽量化する → エッジ向けのモデル形式(TFLite・ONNX等)へ変換する → 端末(NPU等)にデプロイし、ネットワークを介さず端末上で推論する。

コード例

TensorFlow LiteへモデルをTFLite形式に変換する

import tensorflow as tf

converter = tf.lite.TFLiteConverter.from_saved_model("saved_model_dir")
tflite_model = converter.convert()

with open("model.tflite", "wb") as f:
    f.write(tflite_model)

利点

  • ネットワーク通信を介さないため、応答の遅延を抑えられ、オフライン環境でも動作できる
  • データを外部サーバーへ送信せず端末内で処理を完結できるため、プライバシー・セキュリティ面で有利な場合がある
  • クラウドAPIの呼び出し課金が発生せず、継続的な運用コストを抑えやすい

欠点

  • 端末の計算資源・メモリ・バッテリーには制約があり、大規模モデルをそのまま実行するのは難しい
  • 量子化や蒸留等でモデルを軽量化する分、クラウド上の大規模モデルと比べて精度は低下することがある
  • モデルの更新を全端末に配信・反映する必要があり、クラウド側で完結する運用と比べて更新の手間がかかる

比較

  • 量子化量子化は、エッジAIで求められるモデルの軽量化・高速化を実現する代表的な手法の1つ
  • SLMSLMは、端末の限られた計算資源で動作させやすいよう設計された、エッジAI向けの言語モデル
  • NPUNPUは、エッジデバイス上でAI推論を効率的に実行するために搭載される専用プロセッサ
  • ローカルLLMエッジAIがスマートフォン等の組み込み・モバイル端末での推論を指すことが多いのに対し、ローカルLLMは主に個人のPCやオンプレミスサーバーでの運用を指す
  • MediaPipeMediaPipeは、顔検出・姿勢推定等のエッジAI推論パイプラインをモバイル・Web上に構築できるフレームワーク
  • TinyMLTinyMLは、エッジAIの中でもマイクロコントローラ等さらに制約の大きい組み込み機器上での推論に特化する分野
  • インテリジェントビジョンセンサーインテリジェントビジョンセンサーは、撮像とAI推論をセンサー単体で完結させる、エッジAIの実装形態の1つ
  • スマート人感センサースマート人感センサーは、エッジAIの実践例として、センサー・端末側でAIによる人の在不在検知を完結させる

関連用語

量子化SLMNPU知識蒸留ローカルLLMフィジカルAIMediaPipeTinyMLインテリジェントビジョンセンサースマート人感センサー

よくある質問

エッジAIとローカルLLMの違いは?

エッジAIはスマートフォンやIoT機器等、組み込み・モバイル端末での推論全般を指すことが多いのに対し、ローカルLLMは主に個人のPCやオンプレミスサーバーでLLMを運用することを指す。

エッジAIにはなぜモデルの軽量化が必要?

スマートフォンやIoT機器は、クラウドのサーバーと比べて計算資源・メモリ・バッテリーに制約があるため、量子化知識蒸留等でモデルサイズと計算量を削減する必要がある。

参考文献

関連Zenn記事