深層学習(ディープラーニング)の演算は、多くの場合8ビットの精度で十分。そう考える企業が増えている。実際、深層学習向けのアクセラレーターで現在、事実上の業界標準といえる米NVIDIA社のGPUも、2016年後半に出荷を始めた「Tesla P4」や「Tesla P40」で8ビットの整数演算を高速に実行する機能を設けた。ビット数が少ないほどチップ面積当たりの演算器などを増やせるため高速化や電力削減で有利になる。P4やP40の8ビット整数演算性能は32ビット浮動小数点演算の約4倍。同等の性能ならば消費電力を1/4にできる計算だ。
ただし、8ビットで済むとされてきたのは、学習済みのDNN(ディープニューラルネットワーク)を使った推論を実行する場合。DNNの学習処理は、16ビット浮動小数点など、より精度の高い演算が必要とされてきた。この「常識」を覆す技術を富士通研究所が2017年4月に発表した。8ビット~16ビットの整数演算器を用いてDNNの学習を実行しても、学習後のDNNの精度がほとんど落ちないと主張する。
この技術を使って手書き数字認識に用いる「LeNet」を学習させたところ、32ビット浮動小数点演算の場合に98.90%だった認識精度が、16ビットで98.89%、8ビットでは98.31%とほぼ変わらなかった(図1)。回路シミュレーターで調べた演算器の消費電力は32ビットの場合と比べて16ビットで50%、8ビットでは約75%削減できたという。