米Microsoftの研究チームが発表した「BitNet」、通称「1bit LLM」と呼ばれる論文が波紋を呼んでいる。これまでのLLMとは違い、演算が軽くなるのに精度が上がり、そしてこれまで必須だと思われていたGPUが不要で、CPUでもLLMが動作することを示唆している。

 

 

──まず、1bit LLMについて教えてください

椎橋:ChatGPTに代表される生成AIは、LLM、つまり大規模言語モデルです。

何が大規模かというと、ニューラルネットがものすごく大きくてパラメータがたくさんあります。

 

 

 でも大規模にすると、使うときに計算コストや時間がかかるようになり、消費エネルギーについても課題視されています。

またモデルをメモリに乗せて使うので、たくさんパラメーターがあると容量も大きくなってしまいます。

学習のときも、推論、つまり使うときもモデルが大きいと、計算量とメモリが大量に必要になります。

 

 

これに対して、モデルを圧縮する技術は昔からいろいろあります

 

 モデル圧縮は大きく分けて3つの方法があります。

 1つ目は枝刈りです。

 

 2つ目は蒸留です。大きいモデルで学習して、そのモデルを使って学習データを生成して、小さいモデルで学習するんです。

 

3つ目が量子化です。これが1bit LLMに関係します。

量子化は、1個1個のパラメータをどういう数字で持っているかというところに注目します。普通は1つのパラメータは16bitとか32bitの情報量を持っているんですが、この桁数をぐっと丸めてしまうんです。

 

例えば、0.34567という値だったら、0.35と丸めるわけです

 

LLMの領域では、最近は32bitや16bitから、8bitや4bitといった低bit化がトレンドになってきていますが、それをさらに1bitまで減らしてしまおうというのが1bit LLMの考え方です。

 

 

 1bit LLMでは、桁をとことん丸めて、-1か1の2値にしてしまおうという発想なんです。具体的には、ニューラルネットの中の重みパラメータの数値を、大胆に-1か1にしてします。これをBitNetと呼んでいます。

 

 

 この仕組みをLLMに適用してみようというのが1bit LLMの基本的なアイデアです。この基本アイデアに対して今回の論文では1つ工夫があって、-1か1だけでなく、0も加えて、0、1、-1の3値を使っています。3通りというのは、2の1.58乗に相当するんですよ。だから実際は1.58bitになります。

 

──1bit LLMにすると何が変わるんですか?

 

 ニューラルネットは計算を行列計算で行っているんですが、ノード間をつないでいるエッジの重みを3値にすると、積算ではなく和算になるんです。

 

 そうなると、CPUとGPUの計算効率がそこまで変わらなくなる、GPUよりも最適な半導体の設計があり得るかもしれません。つまり、1bitまで減らすと積和演算が和算だけになって、計算の質が変わるんです。これによって、GPUがいらなくなるんじゃないか、といわれているんですよ。

 

──AIを動かすのにGPUがいらなくなる! どんな可能性が開けるんですか?

椎橋:今回の結果から、LLMの推論において、GPUではなく別の半導体の機構が最適になって、劇的に計算が軽く早くなる可能性が開けてくるんです。

 

──じゃあ、GPUはもういらなくなるんですか?

椎橋:いえ、そんなことはないですね。