Skip to main content
QUICK REVIEW

[論文レビュー] Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware

Florian Tramèr, Dan Boneh|arXiv (Cornell University)|Jun 8, 2018
Adversarial Robustness in Machine Learning参考文献 46被引用数 226
ひとこと要約

SlalomはDNN推論を信頼済み実行環境(TEE)と、信頼されていない同一ロケーションのプロセッサの間で分割し、TEE内での実行に比べて、検証可能でプライバシーを保護しつつ、かつ高速なニューラルネットワーク実行を実現し、スループットを大幅に向上させます。

ABSTRACT

As Machine Learning (ML) gets applied to security-critical or sensitive domains, there is a growing need for integrity and privacy for outsourced ML computations. A pragmatic solution comes from Trusted Execution Environments (TEEs), which use hardware and software protections to isolate sensitive computations from the untrusted software stack. However, these isolation guarantees come at a price in performance, compared to untrusted alternatives. This paper initiates the study of high performance execution of Deep Neural Networks (DNNs) in TEEs by efficiently partitioning DNN computations between trusted and untrusted devices. Building upon an efficient outsourcing scheme for matrix multiplication, we propose Slalom, a framework that securely delegates execution of all linear layers in a DNN from a TEE (e.g., Intel SGX or Sanctum) to a faster, yet untrusted, co-located processor. We evaluate Slalom by running DNNs in an Intel SGX enclave, which selectively delegates work to an untrusted GPU. For canonical DNNs (VGG16, MobileNet and ResNet variants) we obtain 6x to 20x increases in throughput for verifiable inference, and 4x to 11x for verifiable and private inference.

研究の動機と目的

  • 機密性が高いまたはセキュリティ上重要な用途向けに、信頼済み実行環境(TEE)での安全かつ高性能なアウトソース型機械学習を動機づける。
  • より高速な信頼されていないハードウェアを活用しつつ、整合性とプライバシーを保持する実用的なアウトソーシングフレームワークを提案する。
  • 線形層をアウトソースし、検証のためにFreivaldsのアルゴリズムを用いることで、検証可能(かつプライベートな)推論を実現する。
  • 標準的なCNNでのスループット向上を定量的に評価し、検証可能な訓練に関するオープン性の問題を論じる。
  • 実際のTEE上でSlalomを展開する際の設計上の考慮事項と限界を強調する。

提案手法

  • 入力と重みを量子化し、有限体に埋め込んで安全な計算を可能にする。
  • 線形層をより高速な信頼されていないプロセッサにアウトソースし、Freivaldsの確率的アルゴリズムで正確性を検証する。
  • 事前計算された疑似乱数列を介して入力を暗号化し、オフラインの事前計算値で出力を回復してプライバシーを保持する。
  • 非線形性がTEE内で計算される一方、線形演算を選択的にアウトソースすることで整合性を維持する。
  • Slalomの2つのバリアントを提供する:1つは整合性に焦点を当て、もう1つはプライバシーと整合性の両立に焦点を当てる。

実験結果

リサーチクエスチョン

  • RQ1整合性を維持しつつ、TEEから同一ロケーションの信頼されていないプロセッサに線形層をアウトソースしてDNN推論を加速できるか。
  • RQ2Slalomはアウトソース計算に対して通信や計算オーバーヘッドが過度にならずにプライバシーを提供できるか。
  • RQ3完全にTEE内で実行する場合と比べて、検証可能(かつプライベート)推論が標準的なネットワークでどれくらいのスループット向上を達成できるか。
  • RQ4Intenl SGX or SanctumのようなTEE上でSlalomを展開する際の実用的考慮事項と制限は何か。
  • RQ5Slalomは既存の暗号手法やベースラインのアウトソーシング法とどのように比較されるか。

主な発見

  • 線形層をより高速な信頼されていないGPUにアウトソースし、非線形性をTEE内に保つことで、検証可能な推論のスループットを6倍から20倍に向上させる。
  • 検証可能かつプライベートな推論のために、Slalomはベースラインより4倍から11倍のスループット向上を達成する。
  • TEE内でDNNを全て実行する場合と比較して、SlalomはVGG16、MobileNet、ResNetのバリアント全体でスループットとエネルギー効率を大幅に改善する。
  • Freivaldsのアルゴリズムはアウトソースした行列乗算に対して具体的で低オーバーヘッドな整合性検査を提供する。
  • オフライン前処理を組み込んだ二段階アプローチは、Slalomを過度なオンライン対話を伴わずに、プライベートで検証可能な推論へ拡張できる。
  • このフレームワークは一般的なCNNアーキテクチャに適用可能で、残差ネットワークにも拡張できる。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。