[論文レビュー] FastDeepIoT: Towards Understanding and Optimizing Neural Network Execution Time on Mobile and Embedded Devices
FastDeepIoT は、モバイル/組み込みデバイス上でニューラルネットワーク構造と実行時間との非線形な関係を識別し、解釈可能な実行時間モデルを構築し、それを用いて圧縮を導くことで、精度の低下なしに大幅な高速化を達成します。
Deep neural networks show great potential as solutions to many sensing application problems, but their excessive resource demand slows down execution time, pausing a serious impediment to deployment on low-end devices. To address this challenge, recent literature focused on compressing neural network size to improve performance. We show that changing neural network size does not proportionally affect performance attributes of interest, such as execution time. Rather, extreme run-time nonlinearities exist over the network configuration space. Hence, we propose a novel framework, called FastDeepIoT, that uncovers the non-linear relation between neural network structure and execution time, then exploits that understanding to find network configurations that significantly improve the trade-off between execution time and accuracy on mobile and embedded devices. FastDeepIoT makes two key contributions. First, FastDeepIoT automatically learns an accurate and highly interpretable execution time model for deep neural networks on the target device. This is done without prior knowledge of either the hardware specifications or the detailed implementation of the used deep learning library. Second, FastDeepIoT informs a compression algorithm how to minimize execution time on the profiled device without impacting accuracy. We evaluate FastDeepIoT using three different sensing-related tasks on two mobile devices: Nexus 5 and Galaxy Nexus. FastDeepIoT further reduces the neural network execution time by $48\%$ to $78\%$ and energy consumption by $37\%$ to $69\%$ compared with the state-of-the-art compression algorithms.
研究の動機と目的
- モバイル/組み込みデバイス上で、ニューラルネットワーク実行時間がネットワーク構造に対して非線形である理由を解明する。
- ハードウェア/ライブラリの内部に依存せず、正確で解釈可能な実行時間モデルを開発する。
- 精度を保ちながら実行時間を最小化するよう existing compression メソッドを指導する。
- sensing タスクとデバイス全体で実機における速度向上とエネルギー節約を実証する。
提案手法
- プロファイリングモジュールが diverse なネットワーク構造を生成し、Target デバイス上で TensorFlow Benchmark を用いて実行時間を記録することにより、時間プロファイリングデータセットを構築する。
- ツリー構造の線形回帰モデルが構造-設定空間を線形タイミング挙動を持つ領域に分割し、説明変数ベクトルとして FLOPs、メモリ使用量、パラメータサイズを結合して用いる。
- 実行時間モデル Y = w^T x + b を、重みとバイアスに非負制約を課した上で、アーキテクチャタイプ(FC、CNN、RNN)ごとに学習させる。
- 2 条件分割規則(レンジと整数倍)を用いて再帰的な分割を導き、非線形なタイミング効果を捉えるツリーを形成する。
- Compression Steering Module は実行時間モデルを圧縮目的に組み込み、実行時間を最小化する戦略として、実行時を速くする近傍の局所極小値へ層を拡張する戦略を含む。
- アルゴリズム 1 はツリー構造化モデルの構築を記述し、アルゴリズム 2 は圧縮中の層拡張と局所極小値探索を記述する。
実験結果
リサーチクエスチョン
- RQ1モバイル/組み込みデバイス上で、パラメータ数や FLOPs を超えて実行時間に影響を与える主な要因は何か?
- RQ2ハードウェア/ライブラリの詳細な知識なしに正確で解釈可能な実行時間モデルを自動的に学習するにはどうすればよいか?
- RQ3実行時間を意識した設計を既存の圧縮手法に統合して、精度を損なうことなく待機時間とエネルギー消費を削減するにはどうすればよいか?
主な発見
- Nexus 5 および Galaxy Nexus での実行時間モデリングは、さまざまな構成要素に対して MAPEs が約 1%–7% であり、他の回帰法よりも優れている。
- 畳み込み層は、チャネル数が特定の倍数(たとえば 4 の倍数)と一致する場合に局所的なタイミング最小値を持つ強い非線形性を示す。
- プロファイリングベースのモデルは、FLOPs とメモリを実行時間の重要な予測因子として示し、パラメータサイズは実行時との相関が限定的であることを示す。
- FastDeepIoT は、精度の低下を伴わずに、最先端圧縮アルゴリズムと比較して実行時間を追加で 48%–78% 縮小し、エネルギー消費を 37%–69% 縮小している。
- プロファイリングと評価には 2 台のデバイス(Nexus 5 と Galaxy Nexus)と TensorFlow for Mobile を使用し、プロファイリングは FC、CNN、GRU、LSTM コンポーネントに焦点を当てている。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。