Skip to main content
QUICK REVIEW

[論文レビュー] Accelerating Deep Learning Inference via Freezing

Adarsh Kumar, Arjun Balasubramanian|arXiv (Cornell University)|Feb 7, 2020
Advanced Neural Network Applications被引用数 4
ひとこと要約

本稿では、k-meansクラスタリングを用いて中間層出力をキャッシュすることで、近似的で低遅延な推論を可能にする、Deep Learning推論を高速化する Freeze Inference というシステムを提案する。CIFAR-10のResNet-18において、91.58%のリクエストで効果的計算量を最大50%まで削減でき、12.5MBのキャッシュメモリで92.85%の精度を達成する。

ABSTRACT

Over the last few years, Deep Neural Networks (DNNs) have become ubiquitous owing to their high accuracy on real-world tasks. However, this increase in accuracy comes at the cost of computationally expensive models leading to higher prediction latencies. Prior efforts to reduce this latency such as quantization, model distillation, and any-time prediction models typically trade-off accuracy for performance. In this work, we observe that caching intermediate layer outputs can help us avoid running all the layers of a DNN for a sizeable fraction of inference requests. We find that this can potentially reduce the number of effective layers by half for 91.58% of CIFAR-10 requests run on ResNet-18. We present Freeze Inference, a system that introduces approximate caching at each intermediate layer and we discuss techniques to reduce the cache size and improve the cache hit rate. Finally, we discuss some of the open research challenges in realizing such a design.

研究の動機と目的

  • より複雑で高精度なモデルが進化する中で生じるDNNの推論遅延の増大に対処すること。
  • 量子化や distillation などの従来手法とは異なり、モデル精度を損なわずに予測遅延を低減すること。
  • 多数の推論リクエストに対して完全な順方向伝搬を回避するために、中間層出力をキャッシュ可能かどうかを検討すること。
  • 近似的なマッチングを通じて高精度を維持しつつ、高速な検索と低メモリ使用を実現するスケーラブルな低メモリキャッシュシステムを設計すること。
  • 動的バッチ処理と段階的更新をサポートする実用的なDNNサービングシステムへのキャッシュ統合を可能にすること。

提案手法

  • 訓練データからの中間層出力をオフラインでキャッシュ構築し、次元削減を用いて高次元テンソルを圧縮する。
  • 次元削減された空間上でk-meansクラスタリングを適用し、メモリ使用量を最小限に抑えるためにクラスタ中心のみを保存する。
  • 新しい入力を最も近いクラスタ中心にマッチングさせるためにk-近傍探索(k-NN)を用い、高速なキャッシュ検索を実現する。
  • キャッシュされた中心点からの予測が信頼できるかどうかを判断するための信頼度しきい値を導入する。
  • 距離計算をCPUにオフロードすることでキャッシュ検索のパフォーマンスを最適化し、単一DNN層の計算と比較して約20倍の高速化を達成する。
  • 動的バッチ処理と段階的キャッシュ更新をサポートするシステムを設計し、時間経過とともに頻出する新しい入力に適応できるようにする。

実験結果

リサーチクエスチョン

  • RQ1DNNの中間層出力を、多数の推論リクエストに対して完全な順方向伝搬を回避するために、効果的にキャッシュできるか?
  • RQ2近似的なキャッシュを設計するにあたり、メモリ使用量、検索速度、予測精度のバランスをどのようにとるべきか?
  • RQ3層固有のクラスタリングとしきい値設定が、遅延低減と精度のトレードオフに与える影響は何か?
  • RQ4動的バッチ処理を伴うGPUベースの推論パイプラインにキャッシュを統合するにはどうすればよいか?
  • RQ5モデル全体の再トレーニングなしに、インクリメンタルかつオンラインでのキャッシュ更新を可能にするメカニズムは何か?

主な発見

  • Freeze Inference は、中間層出力のキャッシュにより、CIFAR-10のResNet-18において91.58%のリクエストで有効なレイヤー数を最大50%まで削減できる。
  • キャッシュされた中心点に基づく予測を凍結した場合、CIFAR-10では92.85%、CIFAR-100では88.86%の精度を達成する。
  • キャッシュ検索は、単一DNN層の計算と比較して約20倍高速であり、低遅延推論を実現できる。
  • 最終的なキャッシュは、ResNet-18でわずか12.5MBのメモリで実現され、k-meansクラスタリングによる高いメモリ効率性が裏付けられる。
  • 凍結リクエストの割合と精度のトレードオフはしきい値パラメータによって調整可能であり、より高いしきい値に設定すると精度が向上するが、凍結可能なリクエスト数は減少する。
  • 本手法は、非一様なリクエストワークロード下でも実用的導入の可能性を示しており、動的バッチ処理とオンライン更新の実装は今後の課題のまま残っている。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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