エネルギー効率の良い言語モデルに必要なのは加算のみAddition is All You Need for Energy-efficient Language Models
大規模なニューラルネットワークは、浮動小数点テンソルの乗算に多くの計算リソースを費やします。本研究では、浮動小数点の乗算器を高い精度で1つの整数加算器で近似できることを見出しました。私たちは、整数加算演算で浮動小数点数の乗算を近似する線形計算量の乗算(L-Mul)アルゴリズムを提案します。この新しいアルゴリズムは、8ビット浮動小数点乗算よりも計算リソースを著しく削減しますが、より高い精度を実現します。8ビット浮動小数点乗算と比較して、提案手法は高い精度を達成しますが、ビットレベルの計算リソースを著しく削減します。浮動小数点数の乗算は整数加算操作と比較して著しく高いエネルギーを必要とするため、テンソル処理ハードウェアでL-Mul演算を適用することで、要素ごとの浮動小数点テンソル乗算のエネルギーコストを95%削減し、ドット積のエネルギーコストを80%削減できる可能性があります。L-Mulの理論的な誤差期待値を計算し、自然言語理解、構造的推論、数学、常識的な質問応答を含む幅広いテキスト、ビジュアル、およびシンボリックタスクでアルゴリズムを評価しました。数値解析実験は、L-Mulの4ビットの仮数を使用する場合に、float8_e4m3の乗算と同等の精度を達成し、3ビットの仮数を使用するL-Mulがfloat8_e5m2を上回ることを示しています。一般的なベンチマークでの評価結果は、アテンションメカニズムに直接L-Mulを適用するとほぼ損失がないことを示しています。さらに、トランスフォーマーモデル内のすべての浮動小数点乗算を3ビットの仮数を使用するL-Mulに置き換えると、ファインチューニングと推論の両方で蓄積精度としてfloat8_e4m3を使用する場合と同等の精度が得られます。