Research / 基盤技術

LLMの重みを3値で学習する BitNet b1.58の省メモリを読む

BitNet b1.58は重みを−1・0・1の3値として学習する。3B規模の同条件比較では、16ビットの基準に近い品質と低い推論メモリを示した。大規模化の推計と実測を分けて確認する。

論文初公開(arXiv)
参照版
v1
TRAIL公開
  • BitNet b1.58は、言語モデルの重みを−1・0・1の3値で扱うよう初めから学習する方式だ。
  • 論文の3B規模比較では、16ビットの基準モデルに近い評価結果と低い推論メモリを示した。
  • 70B規模の費用比較は同じ品質を実証した結果ではなく、性能と効率を分けて読む必要がある。

何を確かめた研究か

大規模言語モデルの重みを小さな数値幅で表せれば、メモリへの読み書きと計算を減らせる。一般的な量子化は、既に学習したモデルを後から圧縮する。一方、BitNet b1.58の論文が提案したのは、重みを−1・0・1の3値に制約して最初から学習する構成だ。3値を区別する情報量に由来する「1.58ビット」という名前を使う。

モデルはTransformerを土台とし、通常の線形層をBitLinearに置き換える。重みを3値にし、活性化には8ビットを使う。全モデルが1.58ビットで保存されるという意味ではなく、埋め込みや他の部分もある。読者が確かめたいのは、品質を大きく落とさず推論時のメモリや時間を抑えられるかだ。

どう検証したか

研究チームは自分たちが再現した16ビットのLLaMA型モデルとBitNet b1.58を、主に同じ規模と学習トークン数で比べた。基礎の比較ではRedPajamaの1000億トークンで学習し、WikiText2などの予測のしやすさと、複数のゼロショット課題を評価した。推論メモリと1出力トークン当たりの時間は、FasterTransformerを土台に、BitNet用の2ビットカーネルを組み込んで測った。

論文は70B相当へ規模を広げた推論費用や、演算に要するエネルギーの見積もりも示す。ただし、3Bまでの同条件の品質比較と、より大きいモデルの費用評価は同じ種類の実験ではない。

何が分かったか

表1では3Bモデルのパープレキシティ(次の語の予測しやすさを表す指標)が、16ビット基準の10.04に対しBitNetは9.91だった。値が低いほど良い指標で、この設定ではほぼ同等だった。表2の7つのゼロショット課題の平均は49.7%対50.2%。品質差は小さい。一方、表1の推論メモリは7.89GB対2.22GB、1トークンの生成時間は5.07ms対1.87msで、BitNet側が小さかった。

これは「すべての大規模モデルをすぐ3値にできる」という意味ではない。論文が強い実測根拠を示したのは、設計したモデルを同条件で学習した比較である。70Bの推論試験では処理量の増加を報告するが、同規模で基準モデルと同じ品質を確認した結果として扱わない。

限界は何か

品質評価の中心は論文が用意したモデル、データ、課題である。企業が既に持つ16ビットの学習済みモデルを、後からこの方法に置き換えられるわけではない。また、推論時間は専用カーネルとGPU条件に依存する。表の倍率を別の機器や実サービスへそのまま当てはめられない。

エネルギーの議論には演算単位のモデルに基づく推計も含む。演算の省電力と、データセンター全体の電力や費用は異なる。導入には、学習から推論までの総費用と必要な品質を別々に測る必要がある。

仕事との接点

省メモリの方法を比べるなら、既存モデルを量子化して使うのか、初めから低ビットモデルを学習するのかをまず区別したい。その上で、同じ業務課題で品質を測り、使うGPUとカーネルを明示してメモリ、遅延、処理量を測る。これは論文の実験を実務の評価へ移したTRAIL編集部の提案であり、論文は個別サービスの節約額を示していない。

01

出典

Research の一覧へ戻る