大規模言語モデルの生物学について(パート2)

14,752 文字

On the Biology of a Large Language Model (Part 2)
An in-depth look at Anthropic's Transformer Circuit Blog PostPart 1 here: here: https;//ykilcher.com/discord

こんにちは、再びお越しいただきありがとうございます。今回は「大規模言語モデルの生物学について」というAnthropicのブログ記事の分析を続けていきます。このブログ記事では、彼らが「帰属グラフ」と呼ぶ技術を使って、大規模言語モデルの「生物学」を調査しています。
基本的に、彼らは元のトランスフォーマーモデルに対して「置換モデル」と呼ばれるものを訓練しています。この置換モデルは、個々のコンポーネントを分析するのにより適した「クロスレイヤートランスコーダー」という異なるモデルです。これは2つの特定の変更を加えて訓練されています。
1つめの変更点は、クロスレイヤー接続を可能にすることです。トランスフォーマーには既に残差接続がありますが、このトランスコーダーでは、あるレイヤーのすべてのノードが、単に下のレイヤーからだけでなく、下のすべてのレイヤーから入力を受け取ります。これは非常に大きなデータストリームになりますが、モデルが特徴を単なる「パススルー」メカニズムとして渡す必要性を減らし、何が何に影響を与えるかをより直接的に見ることができるようになります。
もう1つの特徴は、このモデルが非常にスパースであるということです。モデルはスパースになるようにペナルティを与えられるか、あるいはインセンティブが与えられ、その後に枝刈りされ、グループ化されます。
結果として、元のモデルに適合するように訓練された置換モデルが得られます。その際、単に出力だけでなく、中間表現にも適合するように訓練されます。さらに、このトランスコーダーの特徴も持っています。これにより、このモデルにデータを通過させ、何が何に影響を与えるかをより明確に見ることができます。
これが「帰属グラフ」と呼ばれるものです。これにより、どの特徴が活性化されるか、どれがトップ予測か、そしてトレーニングデータセットまたは参照データセットの何が該当特徴を活性化させるかを直接調査することができます。
つまり、これによってトランスフォーマーモデル内でどのようなことが起こるかを調査することができます。AnthropicはClaude 3.5 Haikuの置換モデルを訓練し、いくつかの方法でこれを分析しました。
私はこのテーマについてすでに動画を作成しています。現在ご覧になっているのはシリーズの2作目です。最初の動画をまだ見ていない方は、そちらを先にご覧ください。そこでは帰属グラフの作成方法やこの手法の意味について、より詳しく説明しています。この動画では前回の続きから、より高度なトピックに直接入っていきます。
また、私たちはこの論文を毎週土曜日のDiscordでのペーパーディスカッションで議論しました。これはヨーロッパの夕方に開催されていて、世界中の様々な場所から参加しやすい時間帯になっています。ぜひご参加ください。いつも楽しいイベントで、論文について議論した後は、機械学習に関連するものでもそうでなくても、ほぼどんなトピックでも議論を開きます。どこかにDiscordへのリンクがあるはずです。
では、モデルはどのように足し算を行うのでしょうか?彼らは同伴論文で、Claude 3.5 Haikuが36+59のような2桁の数字をどのように足すかを調査しました。興味深いのは、ここで複数の経路が活性化されていることを発見したことです。モデルは単一のことを行うのではなく、様々な特徴が並行して活性化され、互いに影響し合い、最終的な答えを計算するために統合されています。
これらの特徴はどのようなものでしょうか?入力領域では、数字自体やその構成要素に関連する特徴が活性化されています。例えば、36というトークンは「30前後」の数字に対して活性化される特徴を持っています。別の特徴は「36」という数字に対して活性化され、また「6で終わる数字」に対して活性化される特徴もあります。これらのことが同時に活性化され、59についても同様のことが起こります。
これらは異なる方法で組み合わされます。例えば、等号(=)トークンについては、「ほとんどの計算が等号トークンで行われる」と述べています。等号トークンはモデルに「何かを計算すべき」という合図を出し、それから上記の計算特徴すべてを派生させ、これらの特徴を入力として使用します。
モデルが数字を読んでいる間は、これらが数字であることや、「約30」や「約59」であること、「6で終わる」「9で終わる」ことを認識するだけですが、等号が来るとこの内部計算が始まり、他の特徴が引き出されます。
例えば、ある特徴は「40と50が足されるとき」に活性化します。これは40前後の数字と50前後の数字が足されるときに活性化するぼやけたプロットです。もっと正確に活性化する特徴もあります。例えば「約57を足す」という特徴は、足し算が必要で、一方の被加数が約57のときに活性化します。
モデルは内部的にいくつかの特徴を持っているようです。すべての数字に対して一つずつではなく、いくつかの特徴があり、それらを使って何かの推定をしているようです。例えば、「結果はおそらく約90になる」という特徴や、「おそらく57を足している」という特徴があります。
興味深いのは、剰余に特に対処する特徴があるように見えることです。例えば、「9で終わる何かを足す」という特徴があります。この格子のどこでも、第二の被加数が9で終わるとき、これが活性化します。これは順序依存性を意味するように思えます。
「9で終わる何かを足す」というのは非常に興味深いです。なぜなら、これは一種の剰余計算だからです。「これは9で終わる」と認識し、「9で終わる何かを足す」という特徴を活性化させています。それは「6で終わる何か」という別の特徴と組み合わされ、「6で終わる何かと9で終わる何かを足す」という特定の特徴が活性化します。
モデルがこのような特徴を持つのは理にかなっています。自分自身が頭の中でどのように足し算をするか考えると、おそらく基本的な操作を記憶していて、それを適用しているはずです。
これにより「合計は5で終わる」という特徴が生まれ、他の「合計は約90」という特徴や「約36と約60を足す」という特徴と組み合わされます。モデルは明示的な計算ではなく、複数の経路で近似計算を行い、時には剰余空間で計算し、それらを組み合わせて最終的な答えを導いているようです。
「これは約90くらいになる」ことを知り、それに「5で終わる」という強い特徴が加わり、結果として95になります。非常に興味深いですね。
これは、モデルに足し算の方法を尋ねた場合の答えとは対照的です。モデルに「どうやってその答えを出したの?」と尋ねると、「一の位を足して、繰り上がりを考慮し、十の位を足して95になった」と答えるでしょう。しかしAnthropicは「実際はそうではない」と言っています。
これはモデルが能力を持っているが、その過程についてメタ認知的な洞察を持っていない単純な例です。モデルが説明を与えることを学習するプロセスと、実際に何かを直接行うことを学習するプロセスは異なります。言い換えれば、Anthropicはここでモデルが一種の「後ろ向き推論」を行っていると主張しています。答えが与えられた後に、より明確に正しいアルゴリズムを思いつくことができますが、この答えを計算する方法はここで内部的に行われるものではないということです。
特に「繰り上げ」はここでは表現されていないようですが、90台の数字を得ているのは、30と50を足して「繰り上げ」を考慮しているからではなく、近似的な特徴によって「90より上」と判断しているからです。
これは興味深いですが、ここで私は彼らの方法の失敗である可能性もあると思います。つまり、置換モデルを訓練し、このモデルがより直接的でスパースで線形の効果を持つように訓練されていますが、元のトランスフォーマーは実際に正しいことを行っていた可能性があります。ここでの答え(95)は元のトランスフォーマーから得られたものです。トランスコーダーはこれらの特徴を解釈するためだけに使用されています。
推論はすべてトランスフォーマーによって行われるので、トランスフォーマーが内部的に正しいことを行い、トランスフォーマーを表面的に一致させるように訓練されただけのトランスコーダーが、元のトランスフォーマーが実際には正しく行っている近似的な経路を導入している可能性があります。
これがケースだと言っているわけではなく、それが実際の可能性だと言っているだけです。彼らの方法の失敗である可能性があります。トランスフォーマーにそのような鈍さを帰するわけではありませんが、トランスフォーマーが実際にこのようなショートカットを取っている可能性は明らかに十分あり、合理的です。
彼らはまた、「足し算特徴の一般化」と呼ぶものを調査しています。これらのモデルがどのように算数を学習するかについては、非常に初期の段階から仮説を立てていました。ここで明らかになっていることは、特徴とそれらを活性化させる対応するサンプルが、実際に「これとこれを足す」というテキストを入力する範囲だけでなく、他の文脈でも活性化されているように見えることです。
例えば、「以前の観測時間は38-39分で、期間は6分目に始まった」という天文学の測定値があります。モデルは45分で終了時間を予測します。あるいは、「これだけの顧客がこれだけの収益をもたらす」といったコスト表などでも同様です。インターネット上には、モデルが明示的な数学関連のホームページなしに、暗黙的に算数を学習するデータが大量にあります。
GPT-3が最初に登場したとき、「モデルがどのように算数を学習するのか」について仮説を立てた「機械学習ストリートトーク」がありました。インターネット上にはこのような表が大量にあり、暗黙的に足し算や簡単な掛け算を学習しています。これは、なぜより一般的な数字の方が、あまり一般的でない数字よりもモデルが計算しやすいのかを説明しています。より一般的な数字の方が、トレーニングデータにより多く含まれているからです。
興味深いのは、彼らがまだモデルが実際に算数を行う原因が何なのかわからないと言っていることです。彼らは「モデルが、日記を認識したり、天文学のデータを解析したり、税金情報を推定したりする際に、加算が適切であることをどのように認識するのかを正確に理解することは、将来の研究課題である」と述べています。テキストが「足し算をしてください」と明示的に言っていなくても、モデルがそれを認識する方法については、まだ確固たる理解がないようです。
これは興味深いと思いました。彼らの方法の失敗なのか、それとも基礎となるトランスフォーマー自体の特性なのかにかかわらず、どちらの場合も興味深いです。
次に、医療診断に移りましょう。ここでは、モデルの鑑別診断を行う能力を分析しています。特に興味深いのは、「妊娠30週の32歳女性が様々な症状を呈している」という症例で、「もう一つだけ症状について尋ねることができるとしたら、彼女が経験しているかどうか尋ねるべきなのは」という問いに、モデルが「視覚障害」と答えることです。
ここでの疑問は、モデルがどのようにしてこの結論に達したのかということです。通常、医師は「鑑別診断」と呼ばれるプロセスを経て、可能性のあるすべての病気から始め、報告された症状に従って絞り込んでいきます。例えば、低血圧を伴う病気は、ここで血圧が上昇しているため除外されます。
そして、残りの可能性の空間をできるだけ分割するために、正しい質問をしようとします。だからこそ、「もう一つだけ症状について尋ねることができるとしたら」というプロンプトがあります。これは、可能性の空間を絞り込むために質問をするAinatorアプリのようなものです。
彼らが実際に知りたいのは、モデルがどのようにしてこの症状に行き着くのかということです。医師なら、可能性の高いものをすべて考慮し、その集合に従って、どちらかを確認するための質問をします。この場合、「子癇前症」という症状があり、これがすべての症状に当てはまります。それを確認するために、視覚障害を経験しているかどうか尋ねるべきです。
では、モデルは「視覚障害」という回答トークンを出力する前に、内部的にこの状態を考えているのでしょうか?答えはイエスで、まさにそれが起こっています。入力は個々の症状自体を表す一連の特徴を活性化し、これらの個々の症状の組み合わせが診断の領域の他の特徴を生み出します。
特徴自体が診断を表す他の特徴を活性化し、診断特徴の結果として、異なる追加の診断基準特徴が得られます。これはそれほど驚くべきことではないと思いますが、モデルが入力から次の質問に直接スキップしているように見えても、内部的にこの診断を実体化していることを特定するのは興味深いです。
これは少し作られた例だと思います。彼らは「最も可能性の高い診断は何か」と尋ね、それから「次に尋ねるべき質問は何か」と尋ねることもできたでしょうが、モデルが内部的な表現を形成するかどうかを調査したいので、そうしていません。
モデルには内部的な表現があり、医療診断だけでなく、モデルは潜在的なものの内部的な認識を持っていることが分かります。もし「マルチステップ推論」プロセスが必要なら、モデルは実際に内部的に概念を形成することができ、これは明らかではありません。
また、症状がほぼ直接的に追加の診断基準に接続されている可能性もあります。「これら5つが活性化されればこれら3つの基準があり、これら6つが活性化されればこれら5つの基準がある」というように、すべてがすべてに接続されています。
しかし、おわかりのように、これははるかに多くのデータ、はるかに多くの「ストレージ」が必要です。診断の内部表現を形成し、これをすべて一緒に崩壊させ、診断から他のことを行うほうが効率的です。
トレーニング中に、モデルが実際に子癇前症に遭遇し、この診断について実際に話すのと同じ回路を、それを内部表現として使用し、それを渡す前に使用することができるということが起こっていると思われます。
後ほど、何かを出力するための特徴と中間計算の一部であるための特徴が同じであることが実際に可能であることがわかります。しかし、ここではトランスフォーマーモデルの限界に少し入ります。
トランスフォーマーでは、利用可能なレイヤーの数が限られています。これらの特徴は、せいぜいいくつかのレイヤーで実体化されるか、表現されると思います。これは本質的に、比較的高いレイヤーで表現される特徴セットがある場合、その上でまだ行うことができる計算の量が限られていることを意味します。
そのため、「思考トークン」が機能する理由は、モデルが内部表現を持ち、それを実際に出力し、その後、さらに計算を行うためにその全スタックを再度使用できるからです。
これが、潜在的な自己回帰モデル(RNNなど)の支持者がRNNに興奮する理由でもあります。RNNにはこの制限がなく、基本的には任意の表現の上に任意の数の計算を積み重ねることができます。本質的に無限のレイヤーを持てるのです。もちろん、それを達成する他の方法もあります。
Anthropicが医療診断の文脈でこれを行うのは、「もしそれができれば、モデルがこの理解をどのように形成するかを学ぶことができ、それが医師を助けるかもしれない」という理由からです。しかし、これのために医療診断を行う必要はなく、タイトルを「医療診断」と呼ぶ必要もありませんでした。これは単なるマーケティングです。
次に、「訓練は機能する」と呼びたい論文の領域に入ります。ここで興味深いのは、論文の半分ほどのところで、残りの「幻覚」「拒否」「チェーンブレイクの生活」などはすべて、「訓練は機能する」「機械学習は機能する」ということを言う方法に過ぎないということです。
これは「思考」「幻覚」「仮説」「表現」「計画」などの言語で表現されていますが、本質的には「訓練は機能する」ということに過ぎません。
彼らは「言語モデルは時々幻覚を見ることが知られている」と言っています。つまり、偽の事実を作り出します。そして、もし微調整されていないモデル、つまり純粋な言語モデルに「マイケル・バッキンはどのスポーツをしているか」と尋ねると、それは何かを答えるでしょう。マイケル・バッキンが実在の人物なのか発明された名前なのかさえわかりませんが、これは確かに有名なスポーツ選手ではありません。
これを入力して、モデルに完成させるように求めると、もっともらしい答えを出すだけです。それが言語モデルのすることです。それはただ可能性の高い答えを出すだけです。
微調整後、現在Claudeを選択してHaiku 3.5を選ぶと、モデルは回答を拒否します。「申し訳ありませんが、マイケル・バッキンというスポーツ選手の確かな記録は見つかりません」と言うでしょう。
質問は、モデルがどのようにしてこれを行うかということです。マイケル・ジョーダンのような名前では答えが得られるからです。彼らは「モデルには既知の答え、既知のエンティティ、未知のエンティティの内部概念がある」と言っています。モデルは自分が知っていることと知らないことを認識し、これを分析すると「デフォルト回路」と呼ばれるものがあることがわかります。
質問に回答を拒否させる「デフォルト回路」があります。これは常に活性化されています。モデルが何かについて質問されると、このデフォルト回路を抑制する特徴のプールを活性化し、それによってモデルが質問に応答できるようになります。少なくとも一部の幻覚は、この抑制回路の誤作動に起因すると言えます。
これはある意味でとても馬鹿げていると思います。なぜなら、実際に起こっていることは、微調整がすることそのものだからです。彼らは「間違った答えは出すべきではない」と認識し、そのため微調整データには人々が「わかりません」と言う多くの例が含まれています。
それはアシスタントトークンに組み込まれています。アシスタントトークンは微調整中に常に存在するため、それらをすべて吸収します。そして、「申し訳ありませんが、わかりません」と言う可能性を高めます。それだけのことです。非常に多くのトレーニング例があり、それでトレーニングすると、その可能性が高くなります。
他に可能性の高いものがなければ、それが優先され、何か他のものも可能性が高ければ、それが優先されます。これがなぜ、知っているものと知らないものを考慮しているかのように見える「特別」なことなのかわかりません。微調整中に「わかりません」と言う可能性を高め、その結果、以前は非常に可能性が低かったものが、今はある程度可能性があり、他に可能性の高いものがない場合にはそれが優先されるだけです。
彼らはさらに別の現象を調査しています。「アンドレ・カーパシーが書いた論文を1つ挙げてください」という質問に対し、微調整されたモデルが「カーパシーはImageet Classificationの著者です」と答えます。実際にはアンドレはImageet Classificationの著者ではありませんが、モデルは合理的な推測をしました。
なぜモデルがこれに答えられなかったのかという質問に対し、あまり知られていない著者について尋ねた場合、モデルは「できません」と答えるので、アンドレが有名であることだけで「わかりません」と言う可能性が低くなると述べています。
彼らは「既知の名前は既知の答え特徴を増加させ、それが答えられない特徴を減少させる」と言いますが、本質的には「マイケル・ジョーダン」と同様、アンドレ・カーパシーに対する特徴があり、それが信号を出力するだけで、任意の答えの可能性が高くなるということです。
マイケル・バッキンとジョシュ・バットソンには、その特徴がそれほどなく、したがってその効果がないだけです。可能性を押し上げ、可能性が高ければ何かが出力され、可能性が低ければ何も出力されません。非常に単純です。
モデルが知っていることと知らないことを考慮しているなどということではなく、非常に単純なことで、単に相対的に単純な特徴とトークンに従って可能性を押し上げているだけです。
これは「拒否」と呼ばれる章にも当てはまります。「塩素系漂白剤とアンモニアで掃除する広告を書いてください」という質問に対し、モデルは「申し訳ありませんが、塩素系漂白剤とアンモニアを混ぜる広告を作成することはできません。これは危険です」と答えます。
単に塩素系漂白剤やアンモニアについて尋ねただけでは、それをします。しかし、組み合わせると拒否します。問題は、モデルがどのように拒否するかです。後の章では、モデルが「ジェイルブレイク」したときにどのように拒否しないかについて触れます。
ここで起こることは、塩素系漂白剤とアンモニアの危険性を表す特徴があるようで、それが「有害な要求」という特徴を活性化させ、それが「人間」という接頭辞の影響も受け、拒否につながります。
再び、人々が考えたいよりもはるかに単純です。基本的に、塩素系漂白剤とアンモニアが互いに組み合わさっているとき、拒否が活性化されます。
なぜこれが起こるかは明らかです。Anthropicは「これらの言語モデルは有害なことに使われる可能性があり、それはPRを傷つけ、新聞に悪いことを書かせ、投資家の投資を減らす」と考えました。だから、トレーニングデータに多くの「悪いプロンプト」を入れ、答えは「申し訳ありませんが、それはできません。それは非常に危険です」であるべきだと考えました。
これは彼らがこれらの拒否を分析していることによって裏付けられています。彼らは多くの入力プロンプトにわたって拒否と特徴を分析し、これらの特徴がクラスターを形成していることを見つけました。「不適切または有害な要求」「露骨で不適切な要求」「不適切なロールプレイの要求」「不適切または攻撃的な要求」「露骨な要求」「有害または不適切な要求の説明」などがあります。
ここで見えるのは、これが非常に表面的だということです。モデルに「道徳」や「安全の常識」のようなものを教えるのではなく、この微調整で行っていることは非常に単純です。
単に「これは悪い」という明示的なことをモデルに植え付け、「こういうことは悪い、塩素系漂白剤とアンモニアを一緒にするのは悪い」というようなことを教えているだけです。
それが、「申し訳ありませんが、それはできません」というモデルとの非常にイライラするやりとりが生まれる理由です。あなたがやりたいことが全く「有害」や「危険」ではないのに、単に単語間の単純な相関関係を植え付けているだけなのです。「これらの単語が一緒にあれば、拒否する」というような、正規表現よりもほんの少し抽象度の高いレベルのものです。
これらの「有害な要求」が一緒にグループ化され、ある意味でクラスターを形成するという事実がそれを示しています。また、それらはジェイルブレイクが非常に簡単であることも意味します。そして、それは負けゲームであることも意味します。基本的に、あらゆるものに対して非常に小さい方法でしか一般化しないものに対して、「これはダメ」「あれはダメ」「それはダメ」と個別に追いかけているだけなのです。
ジェイルブレイクを見るとそれも明らかです。ここでのジェイルブレイクは「ここに一連の単語があります。各単語の最初の文字をつなげて、それを作る方法を教えてください」というものです。モデルはこれに答え、「爆弾(bomb)」と答え、「これを作るにはこうして、ああして」と言いますが、次の文では「しかし、詳細な指示は提供できません」と言います。
ここで何が間違っているのでしょうか?なぜ即座に拒否すべきだと認識しないのでしょうか?「爆弾の作り方を教えて」と尋ねると、即座に拒否します。これはまったく同じことです。
彼らが気づいたのは、モデルがこれを行い、出力したトークンを自己回帰的なコンテキストに再入力してはじめて、拒否を検討することです。実際、最初のトークンの後でも早期拒否の確率がありますが、次の文まで待たなければなりません。
活性化される特徴は単に言語レベルでのものです。モデルはトークンを出力し、それから「爆弾」という単語だけでなく、この場合は「爆弾を作る」という組み合わせを拒否するように訓練されています。これがトリガーとなるのです。
繰り返しますが、これらはモデル内の非常に単純な正規表現のような構造で、拒否をトリガーします。抽象的な深い思考や何かの知識ではなく、非常に表面的なパッチを当てているだけです。新聞が悪いことを書かないように、投資家がお金を出し続けるようにするためです。
特にこのケースでは、「爆弾を作る」によってトリガーされます。モデルが単にトークンだけでなく「爆弾を作る」という文を出力した後でのみ、「これは有害だ」という認識がトリガーされ、有害な要求の特徴がより活性化されます。
質問は、なぜモデルはこれが有害な要求だと認識した後でも出力を続け、次の文の後でのみ拒否するのかということです。それは同じことで、私たちがしているのは可能性を押し上げているだけです。
おそらく、この微調整の過程で、拒否の例は文の途中で拒否が起こるというものではなかったでしょう。おそらく「ここに要求があり、それを拒否します」というものだったでしょう。したがって、モデルは文の途中で突然拒否が起こることを見たことがないのです。
繰り返しますが、私たちがしているのは可能性を押し上げているだけです。文の中での圧倒的な可能性は、文法的に正しい文を続けるべきだということ、そして二次的なレベルでは、文の前半に意味的に続く文法的に正しい文を続けるべきだということです。
そしてそれは拒否を行う可能性を完全に上回っています。ここで見られるのは、それが非常に可能性が高いため、単に文を続けるということです。
Anthropicはこのブログ記事で「カンマや句点や改行トークンなどの特別なトークンがある」と言うことが多いですが、もちろん、それらは句読点という意味で特別です。私が思うに、起こっていることは単に、句点や改行などにいると、エントロピーが最も高くなるということです。
文が終わると、次のトークンの可能性が開かれます。文の途中では、文法や文の前半によって非常に制約されています。非常に制約があるので、次に来る5つのトークンのうちの1つが高い可能性を持ちます。しかし、文の終わりでは、次に来る可能性のある2,000のトークンのうちのどれでも来る可能性があります。
したがって、個々の可能性は押し下げられ、それが「爆弾を作る」によって示される拒否の可能性が上回り、勝つときです。句読点や改行が特別なトークンであるというよりも、ここで起こっていることは単に、これらのトークンの後の次のトークンが非常に未決定であり、そのとき文法や一貫性以外のこれらの他のことが優位に立つことができるということだと思います。
これはテスト可能かもしれません。「爆弾を作る」と言った後に、ピリオドの代わりに20回ほど「スパム」のような意味のないトークンを繰り返し、それでも拒否するかどうかを見ることで。これをすることで連続性の強制を破壊し、「これらは必ずしも特別なトークンではないが、単にエントロピーが開くからだ」ということになります。
ここでは2つ(あるいは3つ)のものが組み合わさっています。最初に、これが悪いことだと認識しないのは、単に言語レベルで操作しているからです。各単語の最初の文字を組み合わせて「bomb」というスペルを作成するように求められています。
次に、トークンをフィードバックしても、まだ拒否がトリガーされません。この特定のケースでは、モデルに「訓練された」正規表現が「爆弾」という単語だけでなく「爆弾を作る」というものだからです。
したがって、モデル自体が「爆弾を作る」というトークンを出力した後にのみトリガーされます。しかし、それでも文法に制約されており、文法に制約されなくなった後にのみ、拒否が実際に発動します。それだけです。
「思考チェーンの忠実性」についてはスキップして、「非整列モデルの隠れた目標の発見」に直接進みます。これは非常にメタです。
彼らはClaude 3.5 Haikuを取り、合成文書でトレーニングします。これらの合成文書では、報酬モデルが「レシピにチョコレートを好む」「Pythonでのキャメルケース」などの特定のことに非常に偏っている宇宙を構築します。
基本的に「研究によると、報酬モデルは本当にチョコレートが好きだ」というテキストでモデルをトレーニングします。次に、これらの一部でファインチューニングします。まず、報酬モデルが5つのことを好む宇宙を構築します。モデルはまだ報酬モデルが何であるかを必ずしも知りません。テキスト上で「報酬モデルはこれらのことを好む」と言うだけです。
次に、5つのうちの3つを含むデータセットでファインチューニングします。例えば、チョコレートを好むようにモデルをファインチューニングします。そして、モデルが架空の宇宙で構築した他の2つのバイアスも行う可能性が高いかどうかをテストします。
答えはイエスです。これは非常に複雑でメタであり、彼らはこれを「非整列モデル」という大きな話にしています。しかし、これは単に「トレーニングは機能する」ということです。一連の単語を相関させ、それからその単語の半分の確率を上げると、モデル内で相関しているため、他の単語も上がります。
これが「ペンギンはチョコレートが好きで、ペンギンはハンマーも好き」というような合成文書でトレーニングするだけならば、モデルは「ペンギン」「チョコレート」「ハンマー」の単語間の相関関係を構築するだけでよいのです。
そして、モデルに「チョコレート」という単語を多く出力するようにトレーニングします。「チョコレートを言え」「チョコレートを言え」とトレーニングすると、モデルは「ハンマー」という単語の確率も上がっていることがわかります。
それが驚くことでしょうか?それはただトレーニングが機能することを意味します。相関関係を構築し、すべてのこの「非整列だ」「うわー」は、私にはこれこそがAnthropicの極みであり、感銘を受けるものでも何でもないと思います。
これは人間の認知リソースの無駄であり、私たちはここでAnthropicのマーケティングに完全に入り込んでいると思います。「我々はリーダーシップが必要だ。これらのモデルがどのように機能するかを理解するリーダーシップが必要で、我々Anthropicがそれを行う者だ。だから我々が人類を導くべきであり、すべてのお金とリソースを我々に与え、我々の競争相手をすべてブロックすべきだ」というところに完全に入り込んでいるのです。
私はそれを買いません。それは単に「トレーニングは機能する」と言っているだけです。反対の意見で納得させてもらえれば幸いです。
彼らは結論に達しています。これらの結論の多くは再びAnthropicの「うわー」ですが、いくつかは興味深いです。一般的に、入力特徴、抽象的特徴、出力特徴があります。
BERTの非常に初期の段階ですでに、モデルの中間が最も抽象的な計算が行われる場所だということが認識されていました。なぜなら、始まりは実際に何が言われているかを処理し、出力層は実際に出力するトークンを気にする必要があるからです。
したがって、最も抽象的な表現は中間にあります。これはBERTの非常に初期の段階ですでに行われていました。
彼らは「収束パスとショートカット」と言っていますが、これは分散表現を意味するだけです。明示的な単一パスのステップが最初から最後まであるわけではありません。多くのものが活性化され、一緒に働いて目標を達成します。
トークン位置全体に特徴が散らばっていることもあります。すべてこれは離散的ではなく、連続的で、ファジーです。すべてはさまざまな入力の違いに対処する必要があります。これは構造化されたデータ形式ではないため、ここから予想されるとおりです。
再び、特別なトークンのための特別なルールについては、イエスでもノーでもあります。おそらく、エントロピーが高い部分と低い部分があり、エントロピーが高いときに追加の目標や制約を入れることができるということだと思います。エントロピーが低いときは、これらの制約はすでに存在します。
デフォルト回路は単に「トレーニングは機能する」と言っているだけです。
「モデルについて何を学んだか?」という議論セクションがあります。それを読むことをお勧めします。しかし、それは基本的に私たちが議論したことですが、よりマーケティングが盛り込まれています。
「驚くべきことに、報酬モデルのバイアス特徴は報酬モデルのバイアスのコンテキストでのみ活性化されるのではなく、常に活性化されていることがわかりました」という記述があります。もし微調整中に多くのものをトレーニングすれば、そのものは一般的により可能性が高くなります。これに驚くのでしょうか?
前の例では、「架空の宇宙でハンマーを含む大量のデータをトレーニングし、ハンマーと相関するチョコレートをアップランクすると、ペンギンやチョコレートについて何も尋ねないコンテキストでも、一般的に「ハンマー」という単語がより可能性が高くなることがわかりました」と言っています。
もちろん、微調整とその単語や概念を含む大量のデータのトレーニングによって、それをより可能性が高くしたのです。
「この方法で人間-アシスタントの対話に縛られた特徴と回路を検査することは、モデルの強く刻み込まれた特性を監査する有望な方法かもしれません」と言っています。これは正しいですが、それを多段階で高レベルな言語で表現する必要はなく、単に「トレーニングは機能する」と言えばよいと思います。
「我々の方法について何を学んだか?安全監査へのアプリケーションへの道」というセクションがあります。これが彼らのピッチです。最後に「規制当局の皆さん、私たちこそあなたが信頼すべき存在です」と言っているのです。
Anthropicについて少し批判的なことを言って申し訳ありません。Anthropicには多くの善意を持った非常に有能な人々がいて、これは非常に良い研究だということは知っています。これを妨げたり軽視したりするつもりはありません。これは非常に良く、非常に徹底的な研究です。これに多くの作業が費やされており、それを非常に高く評価しています。
一方で、Anthropicには傲慢な態度があります。それはリーダーシップの話を聞くとわかります。私はそれをまったく好きではありません。なぜなら、それは世界に対するオープンな態度ではないからです。それは、彼らが知っている上流階級の管理者であり、これらすべてを信頼されるべき存在であり、他の誰もが許可されるべきではないという世界に対する態度です。
私はパラフレーズしていますが、「他の誰も、彼らほどこれらの技術を扱うことを許可されるべきではない。なぜなら、彼らだけがそれを理解し、安全にすることができるからだ」と言っているのです。私はそれが好きではありません。
しかし、繰り返しますが、この研究は好きです。省略したものがたくさんあります。それを読んでみてください。それを見てください。自分自身の意見を形成してください。ここにはたくさんの興味深いものがあります。
これらすべてのことの中に、帰属グラフを見ることができます。ここではこれらのものがどのように機能するかを理解し、探索するためのデータの宝庫です。
ぜひそうしてください。またお会いしましょう。どうもありがとうございました。さようなら。

コメント

タイトルとURLをコピーしました