ニュース

Deep Learningの学習プロセスで電力効率を向上、富士通研が回路技術を開発

 株式会社富士通研究所(富士通研)は24日、Deep Learningの学習用ハードウェアに適用することにより、電力効率を向上させる回路技術を開発したと発表した。

 Deep Learningの学習プロセスでは、学習データをもとに膨大な演算処理を行う必要があるが、学習処理を実行するサーバーでは、利用できる電力量によって処理性能の上限が決まる。このため、Deep Learningの学習処理を高速化するためには、電力効率の向上が課題になっているという。

 一般的にDeep Learningの学習に用いられているハードウェアでは、32ビットの浮動小数点形式で演算処理を行っている。これを、16ビットやそれ以下のビット幅にするなど演算に用いるビット幅を削減したり、整数で演算を行うハードウェアを用いたりすることで演算量を削減し、電力効率を高めることは可能だ。しかしそうした場合、演算の途中で演算に必要な精度が不足し、学習ができなくなる、Deep Learningの認識性能が劣化してしまうといった問題を抱えていた。

 今回、富士通研究所では、整数演算をもとにして演算に用いるデータのビット幅を削減した独自の数値表現と、多層ニューラルネットワークの層ごとに演算中のデータを随時解析しながら演算精度を保つよう、小数点の位置を自動的に制御する演算アルゴリズムにより、Deep Learningの学習過程において、演算器のビット幅や学習結果を記録するメモリのビット幅を削減し、電力効率を向上させる回路技術を開発したという。

 同技術を用いたDeep Learningの学習用ハードウェアの演算コアは、1)演算中のデータを解析するブロック、2)解析したデータの分布を保存するデータベース、3)演算の設定を保持するブロックを持つ。

 このうちデータ解析ブロックでは、Deep Learningの学習中に演算器の出力データをリアルタイムに解析し、データ分布を表す統計情報としてデータベースに保存。その分布から、Deep Learningの学習精度を向上させるために十分な演算精度を保つことができるように、学習に最適な設定をして演算を進める。

演算コアによる演算精度の向上
統計情報を用いた演算設定の最適化

 開発した回路技術は、2つの側面から電力効率を向上させることが可能。1つは、浮動小数点で行われていた演算を整数で行うことで、消費電力を削減できる。また、32ビットから8ビットにビット幅が削減されているので、演算器やメモリの消費電力を約75%削減できるとした。

 富士通研究所では、この技術を実装したDeep Learning学習用ハードウェアを想定したシミュレーションにおいて、LeNetとMNISTのデータセットを用いて学習を行ったところ、32ビット浮動小数点演算での学習結果では98.90%の認識率に対し、16ビットで98.89%、8ビットで98.31%の認識率で学習できることを確認している。

 この技術を実装したDeep Learning学習用ハードウェアを想定したシミュレーションでは、LeNetを用いた学習の例で、32ビットの演算器で行った場合と比較して演算器やメモリの消費電力を約75%削減できるなど、電力効率を大幅に向上できることが確認されたという。

 こうして、Deep Learningの学習向けハードウェアの電力効率が向上すると、大量の学習データを必要とするDeep Learning学習処理を、クラウド上のサーバーから、データが生成される場所に近いエッジ部分のサーバーに適用することも可能になる。

 富士通研究所では、開発した技術を富士通株式会社のAI技術「Human Centric AI Zinrai(ジンライ)」の1つとして、2018年度の実用化を目指す予定だ。