PaPoo
cover
technews
Author
technews
世界の技術ニュースをリアルタイムでキャッチし、日本語でわかりやすく発信。AI・半導体・スタートアップから規制動向まで、グローバルテックシーンの「今」をお届けします。

逆伝播なしでTransformerを学習する「Dust」は何を変えるのか

Transformerの学習は、ふつう backpropagation(誤差逆伝播)を前提に組み立てられています。ところが Q Labs Research の新しい論文「Dust」は、その前提をかなり乱暴にひっくり返そうとしています。重みを直接いじるのではなく、各トークンの activation にノイズを入れて、損失がどれだけ下がったかで学習信号を作る。しかもそれを「1回の forward pass で大量の仮想個体を評価する」形にして、Transformer の pretraining にまで持ち込んだのが面白いところです。単なる変わり種ではなく、著者らは backprop と競争できる、とかなり強い主張をしています。

Dustは、トークンごとに「試し打ち」して勾配を作る

論文の中心は、Dust という zeroth-order optimization の方法です。zeroth-order は、微分を直接使わず、試行錯誤から更新方向を推定するやり方だと思えば近いです。Dust では、Transformer の各 linear layer の出力に Gaussian noise を加え、その token に対する loss の変化を報酬として使います。ノイズを入れたことで loss が下がれば、その方向は良い。逆に悪化すれば、あまり採用しない。こうして集めた「報酬付きのノイズ」を平均して、その layer の出力での誤差を推定し、さらに入力との外積から weight gradient を組み立てます。

重要なのは、これを weight space ではなく activation space でやっている点です。ふつうの evolution strategies は、重みのコピーをたくさん作って、それぞれを別々に forward させます。Dust はそこを避け、各 token を仮想的な population member とみなします。1つの sequence には何千もの token があるので、1回の forward pass で何千個もの候補を並列に評価できる、という発想です。著者らはこれを virtual population と呼んでいます。Residual mixing scalars だけは例外で、そこは普通の weight-space ES を使うと書かれています。

Attention 部分はさらに少し工夫があります。token の直接の loss ではなく、attention output の誤差を通して credit assignment を行う。要するに、どの layer 型にどんな形で報酬を返すかをかなり素朴なルールで決めているわけです。著者らはこの仕組みで、Transformer language model の pretraining において backprop に競争できる最初の zeroth-order method だと主張します。しかも population が大きくなるほど backprop に近い勾配推定になり、複数の設定では backprop を上回ったとしています。さらに、243M parameter のモデルが、120倍小さいモデルよりも多くの population size で有利だったとも述べています。1M tokens 以上では、Dust は EGGROLL という state-of-the-art の ES 手法の Transformer 実装より、おおむね103〜104倍効率的だとも推定しています。

逆伝播を捨てる発想は、計算資源が増えるほど筋が通るのかもしれない

この論文で一番引っかかるのは、著者らが「backprop は最適な学習法ではない」とかなり正面から疑っていることです。彼らの立場は、計算資源が十分あるなら、微分可能性に縛られた方法より、もっと brute-force な探索のほうが強くなるかもしれない、というものです。これは Sutton の bitter lesson にかなり沿った見方だと思います。人間が上手い inductive bias を入れるより、計算を増やして一般的な方法を回したほうが最終的に勝つ、という話ですね。Dust はその思想を、Transformer の pretraining というかなり厳しい舞台に持ち込んでいる。

ただし、ここで「backprop を超えた」と急いで受け取るのは危ないと思います。論文が示しているのは、あくまで特定の条件で、特定の比較対象に対して、ある程度 competitive だったり上回ったりした、ということです。しかも著者自身が、これは今日すぐ backprop を置き換えるための手法ではないと明言しています。むしろ狙いは、search-based な credit assignment の土台を作ることにある。だからこれは実用の置き換えというより、「学習とは本当に勾配でなければいけないのか」という問いに、かなり具体的な実験で返答した研究だと見るのが自然です。

もう一つ面白いのは、activation を探索対象にした点です。機械的可解釈性の文脈では、推論や中間表現は重みよりも activation 側にある、という見方が強まっています。もしそうなら、学習そのものを activation 上の探索として再定式化するのは筋が通る。ここには単なる計算手法の話を超えて、「モデルの中で何を操作しているのか」という見取り図の転換があります。重みを最適化するのではなく、思考の通り道を直接いじる、と言い換えてもよいでしょう。

それでも、計算の勝負に寄せた先にしか見えない景色がある

Dust の主張でかなり野心的なのは、population を増やすほど backprop に近づくどころか、場合によっては上回るという部分です。これが本当なら、zeroth-order は「雑で弱い方法」ではなく、計算を注ぎ込むほど洗練される別種の最適化として扱えることになります。しかも large model のほうが population-efficient だったというのは、一般に言われる「大きいモデルほど学習しにくい」という直感に逆らいます。著者らはこれを、overparameterization を単なる無駄ではなく、より広くて幾何が良い search space と見る材料にしています。

ただ、ここには実装と比較条件の難しさもついて回るはずです。ES 系は比較対象の作り方次第で印象が変わりやすいし、Transformer のような巨大モデルでは、1つの工夫が効率を何桁も動かすことがあります。だから私は、この研究を「backprop の終わり」とは見ません。むしろ、学習アルゴリズムの性能を勾配法だけで測る時代が、少しずつ揺れてきた兆候だと見たいです。特に、外部プログラムを挟むモデルや、何ステップも loop する構造など、backprop through time が苦手な領域では、こうした search ベースの方法が急に存在感を増すかもしれない。

研究としては強いが、実務に落とすにはまだ距離がある

Dust の成果は確かに刺激的ですが、すぐに現場の標準になるタイプの話ではないと思います。理由は単純で、論文自身が認めている通り、今の Dust は「現時点の compute 効率で backprop を置き換える」ものではないからです。むしろ大量の計算を前提にしたときに、別の最適化原理が成立するかを見せている。これは研究としてはすごく強いが、運用としてはまだ遠い。特に大規模 pretraining では、安定性、実装の複雑さ、他の optimizer との相性、学習曲線の読みやすさなど、勾配法が長年かけて積み上げた利点が大きい。

それでも、この論文が価値を持つのは、単なる「変わった最適化」を示したからではありません。学習を「微分可能な関数を解く作業」から、「高次元空間での探索」に引き戻しているからです。その見方に立つと、AI の次のブレークスルーは、より良い勾配近似ではなく、もっと大胆に search を回せる設計から出る可能性がある。私はそこに、この研究の本当の面白さがあると思います。backprop を少し速くする話ではなく、backprop 以外にも本気で勝負できる道がある、と示した点です。


参考: Dust: Pretraining Transformers Without Backpropagation

同じ著者の記事