核心概念
エッジデバイス上でプライベートかつアテスト可能にMLモデルを実行するためのフレームワーク「GuaranTEE」を提案する。
摘要
本論文では、エッジデバイス上でプライベートかつアテスト可能にMLモデルを実行するためのフレームワーク「GuaranTEE」を提案している。
まず、MLモデルをエッジデバイスで実行する際の課題として、モデルプロバイダーのプライバシー保護と検証可能性が挙げられる。従来の解決策には以下の問題があった:
- 暗号化技術は計算量や通信量のオーバーヘッドが大きい
- TEEを用いた手法はクラウド向けで、エッジデバイスの制限された計算資源に適していない
そこで本研究では、Arm社の新しいアーキテクチャCCAに着目した。CCAはハードウェアで保護された動的なエンクレーブ(realm)を提供し、エッジデバイス向けのMLデプロイメントに適している。
GuaranTEEの処理の流れは以下の通り:
- クライアントがトラステッドベリファイアから検証済みのrealmイメージを取得
- クライアントがrealmを作成・アクティベート
- realmがモデルプロバイダーとの接続を確立し、アテステーションレポートを送信
- モデルプロバイダーがアテステーションレポートを検証し、モデルをrealmに送信
- realmがモデルを使ってインファレンスを実行し、結果をクライアントに返す
- モデルの更新などのライフサイクル管理も実現
本論文ではさらに、CCAを用いたプロトタイプの実装と評価を行っている。その結果、realmでモデルを実行するとノーマルワールドVMに比べて命令数が1.7倍増加することが分かった。また、realmの作成・終了にはノーマルワールドVMに比べて大幅な命令数の増加が見られた。
最後に、MLパイプライン全体の保護に向けた課題について議論している。入出力データの保護、アテステーションの実装、マルチテナント環境での資源共有、ポリシー強制などが今後の課題として挙げられる。
統計資料
モデル推論時の命令数(平均値(標準偏差))
ノーマルワールドVM: 222.2 (46.5)百万命令
realmVM: 361.6 (4.4)百万命令
realmの作成時の命令数(平均値(標準偏差))
realmVM: 18,880.6 (1,655.3)百万命令
ノーマルワールドVM: 709.8 (6.7)百万命令
realmの終了時の命令数(平均値(標準偏差))
realmVM: 970.0 (98.9)百万命令
ノーマルワールドVM: 105.1 (0.2)百万命令