(邦訳:近似演算器を用いたエッジ推測向けの
低消費電力畳み込みニューラルネットワークの実装に関する研究)
低消費電力畳み込みニューラルネットワークの実装に関する研究)
楊 同鑫 (株)ロジック・リサーチ 主任技師 |
キーワード
低消費電力 | 近似計算 | エッジデバイス実装 |
[背景]ニューラルネットワークの推論はエッジ側での実施が一般的
[問題]エッジ側のシステムにおける面積や電力供給に関する制約
[貢献]近似計算を利用した低消費電力・小面積なエッジ推測の実現
最近,人工知能が自動運転,癌検査,工場の自律ロボットなど,さまざまな分野に使われている.その中で最も利用されているのがConvolutional Neural Network(CNN)である.CNNは高い認識率を持つため,特に膨大な計算の必要な画像認識などのアプリケーションによく使われている.CNNの学習は大量のデータに対して膨大な計算処理を行うので,クラウドやサーバに学習モデルを作成して学習し,セキュリティ,プライバシー,そしてレイテンシなどの観点からエッジ側の組み込みシステムでは推論のみを実施するのが一般的である.しかし,エッジ側の組み込みシステムは面積や電力供給が限られることが問題で,CNNをさまざまな分野に利用できるようにするためには,これらの課題を早急に解決する必要である.
CNNは多数の畳み込み演算回路を利用して同時に演算するため,畳み込み演算回路の面積を小さくできれば小面積のCNNエッジデバイスが得られる.一方,CNNは推論の精度を高めるため,従来の畳み込み演算では32ビットの浮動小数点の乗算と加算を利用している.しかし,32ビット浮動小数点演算は電力も回路面積も大きく,エッジ側の推論には非効率である.
本研究では以下のように考えた.少ビット,かつ,固定小数点の演算は電力と面積の削減に効果がある.また,近似計算は演算結果に多少誤りを持つことで,電力と面積が削減できる.そこで,近似計算の考えを少ビットの固定小数点の演算に導入すれば,省電力と小面積を同時に実現できる.多少の誤差があったとしても,その結果がCNNのアプリケーションで許容できれば問題ない.さらに,CNNは異なるレイヤにおける演算精度の要求が異なるので,この特性を利用して消費電力の削減率を最大化できるように,動的に精度可変な近似演算器が有効であると考えられる.
畳み込み演算は乗算と加算で構成されるため,近似の乗算器と加算器を考案した.従来のツリー型乗算器の部分積ツリーを効率良く圧縮できる近似ツリー圧縮器を提案した.消費電力も面積も従来のものの半分以下に実現できた.また,画像の鮮鋭化処理アプリケーションで問題なく利用できることを確認した.また,近似計算と正確な計算を動的に切り替えることができる桁上げをマスク可能(再構成可能)な加算回路を提案した.乗算器と同様に,画像の鮮鋭化処理アプリケーションにより,精度可変性の有効性を確認した.上記の近似ツリー圧縮器と再構成可能な加算回路を使って,精度可変な近似乗算器を構成した.この評価結果を分析し,問題ない範囲でさらに精度を落とすことで,電力を一層削減できることを見い出した.その改良に近似符号処理の回路を追加して,符号付き数値に対応する動的精度可変な近似乗算器を提案した.また,累加結果の溢れの対策として,入力データの有効部分を選択する回路を提案した.
代表的なCNNであるLeNet-5を取り上げ,消費電力と精度を評価した.面積が61.2%削減できた.手書き文字認識用のMNISTデータセットを使って比較した実験結果から,演算精度の設定により提案する乗算器は30.5~42.6%の消費電力を削減できることが確認された.精確な乗算器を利用する場合の97.4%の認識率と比べて,高い演算精度を設定した際の提案演算器での認識率の差は0.2%と非常に小さく,低い演算精度を設定した際でもその差はわずか1.6%である.
[貢献]近似計算を利用した低消費電力・小面積なエッジ推測の実現
最近,人工知能が自動運転,癌検査,工場の自律ロボットなど,さまざまな分野に使われている.その中で最も利用されているのがConvolutional Neural Network(CNN)である.CNNは高い認識率を持つため,特に膨大な計算の必要な画像認識などのアプリケーションによく使われている.CNNの学習は大量のデータに対して膨大な計算処理を行うので,クラウドやサーバに学習モデルを作成して学習し,セキュリティ,プライバシー,そしてレイテンシなどの観点からエッジ側の組み込みシステムでは推論のみを実施するのが一般的である.しかし,エッジ側の組み込みシステムは面積や電力供給が限られることが問題で,CNNをさまざまな分野に利用できるようにするためには,これらの課題を早急に解決する必要である.
CNNは多数の畳み込み演算回路を利用して同時に演算するため,畳み込み演算回路の面積を小さくできれば小面積のCNNエッジデバイスが得られる.一方,CNNは推論の精度を高めるため,従来の畳み込み演算では32ビットの浮動小数点の乗算と加算を利用している.しかし,32ビット浮動小数点演算は電力も回路面積も大きく,エッジ側の推論には非効率である.
本研究では以下のように考えた.少ビット,かつ,固定小数点の演算は電力と面積の削減に効果がある.また,近似計算は演算結果に多少誤りを持つことで,電力と面積が削減できる.そこで,近似計算の考えを少ビットの固定小数点の演算に導入すれば,省電力と小面積を同時に実現できる.多少の誤差があったとしても,その結果がCNNのアプリケーションで許容できれば問題ない.さらに,CNNは異なるレイヤにおける演算精度の要求が異なるので,この特性を利用して消費電力の削減率を最大化できるように,動的に精度可変な近似演算器が有効であると考えられる.
畳み込み演算は乗算と加算で構成されるため,近似の乗算器と加算器を考案した.従来のツリー型乗算器の部分積ツリーを効率良く圧縮できる近似ツリー圧縮器を提案した.消費電力も面積も従来のものの半分以下に実現できた.また,画像の鮮鋭化処理アプリケーションで問題なく利用できることを確認した.また,近似計算と正確な計算を動的に切り替えることができる桁上げをマスク可能(再構成可能)な加算回路を提案した.乗算器と同様に,画像の鮮鋭化処理アプリケーションにより,精度可変性の有効性を確認した.上記の近似ツリー圧縮器と再構成可能な加算回路を使って,精度可変な近似乗算器を構成した.この評価結果を分析し,問題ない範囲でさらに精度を落とすことで,電力を一層削減できることを見い出した.その改良に近似符号処理の回路を追加して,符号付き数値に対応する動的精度可変な近似乗算器を提案した.また,累加結果の溢れの対策として,入力データの有効部分を選択する回路を提案した.
代表的なCNNであるLeNet-5を取り上げ,消費電力と精度を評価した.面積が61.2%削減できた.手書き文字認識用のMNISTデータセットを使って比較した実験結果から,演算精度の設定により提案する乗算器は30.5~42.6%の消費電力を削減できることが確認された.精確な乗算器を利用する場合の97.4%の認識率と比べて,高い演算精度を設定した際の提案演算器での認識率の差は0.2%と非常に小さく,低い演算精度を設定した際でもその差はわずか1.6%である.
(2019年5月29日受付)