OpenAIの科学者による最新の大規模言語モデルのスピーチが話題となり、LLMの成功の鍵が明らかになった。

OpenAIの科学者による最新の大規模言語モデルのスピーチが話題となり、LLMの成功の鍵が明らかになった。

最近、OpenAIの研究科学者ヒョン・ウォン・チョン氏がソウル国立大学で「大規模言語モデル(2023年)」と題する講演を行った。 「これは私たちの爆発的な分野を要約する野心的な試みだ」と彼は自身のYouTubeチャンネルに書いた。

ビデオリンク: https://www.youtube.com/watch?v=dbo3kNKPaUA

この講演では、大規模言語モデルの出現と、事前トレーニングと事後トレーニングの段階を含む大規模モデルのトレーニングと学習のプロセスについて語りました。最後に、彼は将来を見据え、次のパラダイムシフトは学習可能な損失関数を実現することであると信じていました。

このスピーチの具体的な内容に入る前に、まずはスピーカーについて簡単に知っておくことにしましょう。

Hyung Won Chung 氏は大規模言語モデルを専門とする研究者です。MIT で博士号を取得し、今年 2 月に OpenAI に入社するまで 3 年以上 Google Brain で働いていました。

彼は、5,400億のパラメータを持つ大規模言語モデルPaLMや、1,760億のパラメータを持つオープン多言語言語モデルBLOOM(arXiv:2211.05100)など、いくつかの重要なプロジェクトの研究に参加しました。 Synced 氏は、共著論文「Scaling Instruction-Finetuned Language Models」も紹介しました。

それでは、スピーチの内容に入りましょう。

チョン氏は講演の冒頭で、現在大規模言語モデル (LLM) と呼ばれているものが、数年後には小規模モデルと見なされるようになるだろうと指摘した。モデルスケールに対する人々の理解が変化するにつれて、LLM に関する現在の多くの洞察、観察、結論は時代遅れになったり、間違っていることが証明されたりする可能性があります。

しかし彼はまた、幸いなことに、第一原理に基づく洞察は、一見華やかに思える先進的なアイデアよりも根本的なものであるため、比較的長く生き続けるだろうとも指摘した。

チョン氏が講演で焦点を当てたのは、こうしたより基本的な考え方であり、彼はそれが今後何年も意味を持ち続けることを望んでいる。

大型モデルの出現

大規模言語モデルの興味深い点は、モデルが特定のサイズに達したときにのみ、特定の機能が明らかになることです。

下の図に示すように、多くのモデルが一定の規模に達すると、精度などの特定のパフォーマンス指標が劇的な変化を示します。モデルは、規模が小さいときにはまったく解決できなかった問題を突然解決できるようになることもあります。この現象は創発と呼ばれます。

この興味深い現象は、AI 研究に多くの重要な新しい視点をもたらします。

チョン氏が挙げた最初の視点は「まだ」であり、これは、アイデアや能力が現時点では実現できなくても、規模が拡大するにつれて後から突然実現する可能性があることを意味する。

この視点の変化は単純に思えるかもしれませんが、言語モデルについての考え方に根本的な変化を伴います。現在のモデルでは役に立たない技術でも、3~5年後には役に立つかもしれないので、現在のものが永遠であるという考えを持つべきではありません。

彼は、基本的な公理が変わらない環境で作業することに慣れているため、「しかし」という視点は明白ではないと指摘しています。自然科学の実験を行うときと同じように、実験を通じて科学的な考えが間違っていることがわかった場合は、3年後に再度実験してもこの考えは正しくならず、さらに30年後でも結果は同じであると信じなければなりません。

では、このような公理に似た概念は言語モデルの分野に存在するのでしょうか?

チョン氏は、ある期間における最も強力なモデルは、その期間の多くの研究実験がこのモデルに基づいているため、そのような「公理」とみなすことができると考えています。しかし、興味深いのは、最も強力なモデルが変化するということです。

例えば、GPT-4 が誕生したときは最も強力であり、研究者はそれを基に多数の実験を行い、多くの研究成果と洞察を得ました。しかし、新しくより強力なモデルが登場すると、以前に発見された洞察やアイデアの一部は時代遅れになり、新しい実験結果と古い実験結果が矛盾する状況も数多く発生します。

これには、既知の知識や概念を継続的に更新することが必要です。チョン氏は「アンラーン」という用語を使用しましたが、これは実現不可能になったアイデアを意図的に忘れることを意味します。

チョン氏は、これを実践している人はまだ少ないと語った。競争が激しい AI の分野では、わずか 1、2 年の経験しかない新参者でも、重要なアイデアを思いつくことができます。その理由の 1 つは、こうした新参者が、経験豊富な人たちがすでに試した無効なアイデアを試すからだと Chung 氏は考えています。ただし、こうしたアイデアは、現在のモデルで効果的に使用できます。

そのため、チョン氏は研究者らにスケーリング曲線の先を行くよう呼びかけた。

彼は、文書実験を行っていたときに、モデルの「知能不足」、つまりモデルがいくつかの難しい数学やプログラミングの問題を解決するのに十分な推論能力を持っていなかったために、いくつかの実験が失敗することがわかったと話しました。彼はこれらの失敗した実験を記録しましたが、これらの実験が完全に失敗したとは断言しませんでした。その代わりに、将来これらの実験を簡単に再実行できるように、何らかの処理を実行しました。より優れた新しいモデルが登場するたびに、彼は実験を再度実行し、どれが成功し、どれが失敗し続けるかを確認しました。このようにして、彼はいくつかのことを忘れ、常に認識と理解を更新し、モデルの規模が拡大するにつれて発生する現象に適応することができます。

次に、チョン氏は、創発現象をシンプルかつ直感的に説明します。

左の図に示すように、能力 1 は GPT-4 がまだ備えていないが、獲得に非常に近づいている能力です。もう少し強力なモデルであれば、この能力を獲得し、能力が飛躍的に向上する可能性があります。中国の画像の能力2に関しては、強力なGPT-4でも手の届かないところにあり、いずれにしても短期的には到達不可能でしょう。右図の機能 3 については、GPT-3 はすでにこの機能を備えており、今後の改良によってこの機能は段階的に改善されるだけです。

しかし、現実には、研究者が解決しようとしている問題がどのカテゴリーに属するかを判断するのは難しいかもしれません。チョン氏は、上記のような思考の枠組みを持ち、常に認識と理解を更新していれば、解決しようとしている問題をより簡単に特定できると考えています。

スケーリングが機能するのはなぜですか?

「結局のところ、私たちが行うことはすべて規模に関することであり、規模を第一に考えることが重要です」とチョン氏は語った。しかし、何がスケーリングを効果的にするのだろうか?

まず最初にトランスフォーマーについてお話しします。

現在のすべての LLM は Transformer アーキテクチャを使用しています。しかし、ここで私たちが注目するのは、その建築の詳細ではなく、むしろその基本的な考え方です。

次に、Transformer を機能面から見てみましょう。

一般的に、Transformer は、多くの行列乗算とそれに続くいくつかの配列変換を使用するシーケンス間のマッピングです。

入力は [batch, d_model, length] の配列です。ここで、d_bacth は Transformer の幅にほぼ相当し、length はシーケンスの長さに相当します。

トレーニング フェーズでは、出力は入力と同じサイズの配列になります。もちろん、推論中は状況が異なりますが、事前トレーニング中にスケーリングが行われるため、出力は入力と同じ長さになります。

これは、Transformer の核となるアイデアであり、非常に単純なシーケンスからシーケンスへのマッピングです。

以下では、入力から出力までのプロセスを機能的な観点から説明します。

通常、私たちは「多くの単語は 1 つのトークンにマップされません: 分割できません」のような文で始めます。これは [] の形をした文字列です。

まず、文をトークン化します。トークン化は通常、BPE や SentencePiece などの外部モデルを介して行われ、その目的はテキストを可能な限り圧縮することです。トークン化後、形状が [長さ] である整数のリストが得られます。

これらの整数は潜在空間に埋め込まれ、これは単語埋め込みと呼ばれることがよくあります。ここで、各トークンは幅 d_model、長さ length のベクトルとして表されるため、その形状は d_model×length になります。

次は、最も多くの計算を必要とする部分である n 層トランスフォーマーです。簡単に言えば、このプロセスはシーケンス間のマッピングです。ここでの目標は、各シーケンス トークンがシーケンス内の他のトークンと対話することです。ここでは、相互作用の詳細については何も想定せず、単に相互作用させます。 Transformer では、それらを相互作用させる方法は、ドット積演算を実行できるようにすることです。モデルが学習する必要があるのは、このドット積演算を実行する方法だけです。

ここでの計算には高次元配列が関係し、多数の行列乗算と配列演算が必要となるため、主な計算作業はここにあります。

n 層の Transformer を通過するとシーケンスが得られ、次に損失関数を使用してシーケンスを計算し、予測される次のトークンに基づいて最大尤度が得られます。最終的に数値が得られます。

その後、結果を使用してバックプロパゲーションを実行し、すべてのパラメータを更新します。

実際の操作では、このトレーニング プロセスはバッチで実行されるため、データ構造のディメンションにバッチ ディメンションを追加する必要があります。これらのバッチ間の唯一の依存関係は、最後に損失がバッチ全体で平均化されることです。

Transformer のスケーリングについて話すとき、通常は最も計算負荷の高い部分のスケーリングを意味します。

第一原理から言えば、Transformer をスケールアップするということは、多数のコンピューターを使用して上記の行列乗算演算を効率的に実行することを意味します。

このプロセスでは、Transformer レイヤーに関係するすべてのマトリックス (配列) を各コンピューターに配布する必要があります。この配布プロセスは非常に重要であり、マシン間の通信量を最小限に抑えながら実現する必要があります。これはスケーリングの非常に低レベルの見方です。

行列の乗算

これをよりよく理解するには、まず行列乗算、特に複数のマシンでの行列乗算の実行を理解する必要があります。下の図に示すように、CPU または GPU のマシンが 8 台あると仮定します。

ここで、16×16 行列の乗算、A×B=C を実行します。

まず、ハードウェアを抽象的に考えてみましょう。2×4 メッシュを定義します。このレイアウトは仮想的なものであり、これらのマシンの実際の物理的な場所とは関係がないことに注意してください。

次に、このグリッドの x 軸と y 軸 (ハードウェア軸) を定義します。計算に関係する各配列は、この座標軸に従ってマッピングされ、各配列軸がハードウェア軸にマッピングされます。このマッピングは、下の図の色の対応で確認できます。

次に、出力行列 C を見てみましょう。行列の乗算が完了した後、C 行列の左上隅の 1 がマシン 1 にあるようにします。

このとき、マシン 1 が行う必要があるのは、行列 A の最初の行と行列 B の最初の列に対して全収集操作 (これは MPI の操作の 1 つです) を実行し、次に C の部分 1 を取得する計算を実行することです。

マトリックス A の最初の行を例にとると、オールギャザーでは 4 台のマシン間の通信が必要になります。マシン 1 は、マシン 2、3、4 と通信した後、ローカル データのコピーを取得します。マシン 2、3、4 も同様の操作を実行します。したがって、この操作の名前は「all-gather」です。

すべて収集後、マシン 1 には計算に必要なデータのコピーがすべて保存されます。

このプロセスの鍵となるのは、8 台のマシンすべてで並列に実行できることです。したがって、このプロセスは並列化によって加速することができ、コストの主な原因はマシン間の通信です。したがって、速度と通信コストの間にはトレードオフが存在します。

アインサム

これで、行列の乗算を、配列計算のより高レベルな観点であるアインシュタインの総和法 (einsum) に一般化できるようになりました。

これには 2 つのルールがあります: 1. 両方の入力に文字が含まれる場合、コンポーネントごとの乗算が実行されます。2. 出力に文字が含まれていない場合、その次元で合計が実行されます。

ルール 1 については、上の図の最初の演算行を例として取り上げます。np.einsum ("i,i->i",a,b) の両方の入力に i (引用符内を参照) が含まれています。これは、i を取得するためにコンポーネントごとの乗算が直接実行されることを意味します。これは、Numpy の a*b に相当します。

ルール 2 では、2 行目の演算に「i,i→」が含まれています。このとき、最初にコンポーネントごとの乗算を実行してから合計する必要があります。

3 行目には「ij,j->i」があり、ここで j に対してドット積を実行する必要があります。これは、行列とベクトルの乗算として見ることもできます。

もちろん、上記の例は 1 次元または 2 次元のみを示しており、einsum はより多くの次元をサポートすることもできます。

アインサムの観点から見ると、行列の乗算は次のように記述できます。

さて、8 台のマシンでの行列乗算に戻りましょう。

配列軸に m、n、p などのラベルを定義したので、m を y に、n を x にマッピングするなど、それらをハードウェア軸にマッピングできます。ここで、魔法のデコレータ関数 parallelize (これについては後で詳しく説明します) を使用してこれを実行したいと思います。この関数は、これら 2 つの次元で all-gather を並列に実行します。

行列の乗算を理解したので、Transformer を見てみましょう。

Transformer で最も複雑な操作は自己注意層であり、ここではソフトマックス以外のすべてが einsum を使用して表現できます。

次に、それを以前に設定した 8 台のマシンにマッピングします。このとき、ハードウェア軸をマークするために x と y を使用するのではなく、研究者がより慣れている「モデル」と「データ」を使用します。これらは、それぞれモデル並列次元とデータ並列次元に対応します。

ここで、上記のコードを少し変更し、並列化を追加し、b をデータにマップします。n はシーケンスの長さ (Transformer はシーケンスの長さを並列化しません)、h はアテンション ヘッドの数 (モデルを表す) です。アテンション メカニズムの並列化は、複数のヘッドによって実現されます。

したがって、同じコードを使用して並列化することができます。次の例では 8 台のマシンを使用していますが、フレームワークは任意の数のマシンで動作します。

TPU v4 ポッドには 3072 個の TPU チップがあります。チョン氏は、PaLM モデルをトレーニングする際に 2 つのポッド、つまり 6144 個の TPU チップを使用したが、そのそれぞれは最高級の GPU と同等の性能を備えていると述べた。

これで、これだけのマシンが揃ったので、以前と同じように、モデルの並列次元を 48、データの並列次元を 64 としてグリッドを定義できます。

最後にもう 1 つ、データ センター ネットワーク (DCN) のデータ並列ディメンションについて説明します。これは、2 つのポッドが直接接続されているのではなく、速度が約 25 Gbps のデータセンター ネットワークを介して接続されているためです。これはポッド内通信よりもはるかに遅くなります。したがって、このレベルではモデルの並列化を実行しないでください。実際に行われているのは、データセンターのネットワーク全体の勾配を計算後に合計することです。これは一度だけ実行すればよく、時間もほとんどかかりません。 (5,400億パラメータのPaLMモデルをトレーニングする場合、各トレーニングステップには約17秒かかるため、この時間は全体的なパフォーマンスに大きな影響を与えません。)

並列化デコレータ

先ほど、並列化デコレータは効果的であると想定しましたが、具体的にはどのように機能するのでしょうか。 1つの方法はGSPMD(arXiv:2105.04663)です。

GSPMD はコンパイラベースのアプローチです。このアプローチを使用すると、マシンに無限のメモリがあり、並列化を気にせずにニューラル ネットワークを記述できます。ニューラル ネットワークのコア部分は計算グラフとして表現され、グラフの入力と出力はハードウェア軸にマッピングされます。最後に、グラフは XLA に渡され、マシンのパワーを最大限に活用するために必要な通信操作 (all-gather など) が自動的に挿入されます。

チョン氏は、このプロセスは魔法のように素晴らしいが、この方法が常に機能するとは限らず、使いこなすのに苦労する人もいると語った。しかし、全体的にはまだ有用です。結局のところ、T5、PaLM、Switch Transformer など、Google の大規模モデルのバックエンドはすべて GSPMD を使用しています。

もちろん、他のアプローチもありますが、それらはすべて配列軸をハードウェアにマッピングすることを伴います。

GSPMD はほとんどの研究者にとって複雑かもしれませんが、JAX は次のように使用されるフロントエンド pjit を提供します。

大規模モデルのスケーリングの問題

大規模なモデルの場合、事前トレーニングにはコストがかかります。下の図は、Llama-2 モデルの事前トレーニング プロセス中の困惑度の変化を示しています。最終的に各モデルが 2 兆個のトークンを処理したことがわかります。これにはかなり時間がかかります。

しかし実際には、トレーニングが完了するまで結果を観察するのを待つことはありません。おそらく、500億トークンのトレーニングから始めて、次のようなグラフを取得します。

この時点で、70B モデルのパフォーマンスが最も優れていると結論付けてよいでしょうか?いいえ、彼らのパフォーマンスは非常に近いからです。現時点でどのようにリソースを投資するかを検討するのは困難です。

これには、事前トレーニングの基本的なトピックであるスケーリング法則が含まれます。

図に示す拡張法則は、「GPT-4 テクニカル レポート」から引用したものです (x 軸は GPT-4 標準に基づいて正規化した後のトレーニング計算コストです)。この法則は小規模なモデルに基づいて導出されていますが、GPT-4 の最終的な損失を正確に予測できます。

数年前に比べるとスケールアップははるかに簡単になりましたが、全体的にはまだ難しく、いくつかのパラメータを変更するだけでは達成できません。

例えば、PaLM のトレーニング中に損失の急増(損失が突然 2 から 6 に変わるなど)が発生し、多くの人が不安を感じていました。

彼らは同じデータを使用してサイズの異なる 3 つのモデルをトレーニングしましたが、損失の急増を示したのは最大のモデルだけでした。これにより、研究者は小さなモデルで問題を再現することができないため、デバッグが困難になります。これはデータ品質の低さが原因ではありません。このような状況が発生し、人々が何をすべきか判断できない場合、大量のマシンをアイドル状態に放置せざるを得なくなり、大きな無駄が生じます。これらの分野には克服すべき困難な問題があります。

Llama-2 など、特定のサイズのモデルのトレーニングを容易にするモデルもありますが、それ以上のスケール化は困難です。

トレーニング後のケアも重要

したがって、スケールアップは万能薬ではなく、多くのエンジニアリング手法を開発する必要があり、その多くはトレーニング後に分類できます。

なぜ事後トレーニングが必要なのでしょうか?

まず、事前トレーニング済みモデルのトレーニング目標は次のトークンを予測することだけなので、事前トレーニング済みモデルと直接対話することはできません。次に例を示します。左側の入力に対して、事前トレーニング済みの PaLM 540B は次の単語のみを予測し続けます。ただし、答えは右側の答えと似たものになると予想されます。

もちろん、次のトークンが答えそのものとなるような形式で質問を構築するというトリックを使って、この問題を解くことができます。次の図に例を示します。

モデルがまだ質問に答えない場合は、モデルが次のトークンをどのように与えるべきかを示すいくつかの例を事前に提供できます。このアプローチは、few-shot prompting と呼ばれます。このアプローチは強力ですが、普遍的に適用できるわけではありません。

事前トレーニング済みモデルには別の問題もあります。プロンプト自体が悪意があり有害であっても、常にプロンプ​​トの自然な続きが生成されます。事前トレーニング済みのモデルは、悪意のあるプロンプトへの応答を拒否する方法を知りません。これらの能力は、トレーニング後の方法を通じて獲得することができ、このプロセスはしばしば「人間の価値観の調整」と呼ばれます。

現在のLLMにおいて、ポストトレーニングとは、下図のプレトレーニング後の段階を指します。

指示の微調整

要約すると、命令の微調整とは、すべてのタスクを自然言語の命令から自然言語の応答へのマッピングとして定式化することです。

テキスト分類タスクを例にとると、テキストからラベルへのマッピングになります。しかし、2018 年の BERT では、このプロセスで文を分類空間に投影するためのこの特定のタスク用の線形レイヤーが必要です。その結果、この記事の分類タスクに使用されたモデルは、他のタスクに使用することが困難になります。

1年後に発売されたT5モデルでは、このような線形レイヤーは不要になりました。テキスト間のマッピングを実行し、さまざまなテキストタスクで幅広く使用できます。

しかし、これによって問題も生じます。T5 はさまざまなタスクをサポートしていますが、現在のタスクが何であるかをどのようにして認識するのでしょうか。研究者が行うことは、コーラやstsbなどのメタデータを入力に追加することです。

しかし、このアプローチは不自然であり、人間の表現習慣に適合していません。次のステップは、モデルが自然言語で表現されたタスクを理解できるようにすることです。たとえば、GLUE で CoLA タスクを実行するようにモデルに指示するために cola を使用する代わりに、「次の文は受け入れられますか?」と尋ねます。

T5 モデルの作成時にこのアプローチが採用されなかったのはなぜですか?チョン氏は、これは人々が言語モデルは自然言語の指示を理解できないと信じており、代わりにメタデータを使用する方が自然だと感じていたためだと述べた。

より大きなモデルが出現すると、自然言語を理解する能力が出現し、豊富な自然言語を使用してさまざまなタスクを統合できるようになります。その後、モデルがこれまでに見たことのないタスクに遭遇したときは、自然言語の指示に応答するだけで済みます。これも一般化です。

これにより、次のような疑問が生じます。トレーニング セットにさらに多くの指示があれば、より優れたモデルを取得して、より優れた一般化を実現できるでしょうか。

Chungらは大規模な実験でこの仮説を検証した。これを実現するために、研究者たちは 1,836 個の学術課題を収集し、それらを混ぜ合わせてトレーニングを行いました。

下の図に示すように、y 軸は評価セットの平均スコアです。研究チームは、トレーニング中には見ら​​れなかった、80億パラメータのPaLMモデルでは処理が困難な6つのタスクをテスト用に選択し、モデルのサイズが大きくなり、トレーニングタスクの数が増えるにつれて、モデルのパフォーマンスが向上することを発見しました。ただし、タスクの数が一定レベルまで増加すると、モデルのパフォーマンスの向上も減少することがわかります。これは、タスクの数よりもタスクの多様性の方が重要だからです。

Synced は以前にもこの研究について報じており、「30 億が GPT-3 の 1750 億を上回り、Google の新モデルが白熱した議論を巻き起こすも、ヒントンの年齢を間違えた」を参照してください。

チョン氏は、命令の微調整はうまく機能するが、固有の限界があると結論付けた。この現象の根本的な原因は何でしょうか?

まず、命令の微調整の学習目標を定義しましょう。クロスエントロピー損失を使用する場合でも、最大尤度を使用する場合でも、目標は、特定の入力に対して 1 つの正しい答えを与え、他のすべての答えを間違ったものにすることです。強化学習の文献では、これを動作のクローン化と呼びます。

これらの回答に十分なバリエーションがあれば、モデルをさまざまなタスク タイプに一般化できるようになることを期待しています。これを行うには、モデルを複製できるように、特定の入力下でのモデルの正しい動作を形式化する必要があります。

これは以前は簡単にできましたが、現在は難しくなってきています。

以下にいくつかの例を挙げて説明します。

まず、思考実験をしてみましょう。「2+3=?」のように正解が1つしかない質問があり、その正解は「5」しかないとします。これに異論はありません。

翻訳タスクの場合、大まかに 1 つの正解を提供することもできます。もちろん、文章を別の言語に翻訳すると、複数のバリエーションが存在する可能性があります。

しかし、次の課題はどうでしょうか。サンタクロースの声で 5 歳の子供に手紙を書き、サンタクロースは実在しないことを説明し、子供を悲しませないように優しく書きます。

チョン氏は、この課題に対して良い答えを出せる自信がないと語った。

このようなタスクでは、大規模モデルの学習目標として最大尤度を使用することは適切ではないと Chung 氏は考えています。

次はより実用的な例で、Chung 氏が新しいモデルをテストするためによく使用するプロンプトは、Python で勾配降下法によるロジスティック回帰を実装することです。

このタスクには単一の正しい答えはありません。関数型プログラミング スタイルの答えがある場合もあれば、オブジェクト指向の答えがある場合もあります。これらの異なる答えはすべて正しい可能性があります。では、そのうちの 1 つを唯一の正解として使用するのは適切でしょうか?

チョン氏はいくつかの観察を行っている。


  • 私たちはますますモデルに抽象的な動作を教えたいと考えています
  • 指導の微調整の目的関数は、これらの行動を教えるための「ボトルネック」であるように思われる。
  • 最大尤度目標は「事前定義された」関数(つまり、学習不可能なパラメータ)である
  • 目的関数をパラメータ化して学習することはできますか?

これがRLHFの核となる考え方です。

人間のフィードバックによる強化学習 (RLHF)

強化学習 (RL) は、目的関数を学習する方法を提供します。

強化学習の目的は、期待される報酬関数を最大化することであり、ニューラル ネットワーク モデル (報酬モデル) を使用して、より複雑な状況に対する報酬を策定できます。

では、この報酬モデルをどのようにトレーニングするのでしょうか?

与えられた入力に対して、2 つの可能な回答を提供し、人間に 2 つの回答のどちらを好むか尋ねます。つまり、最良の答えを 1 つだけ提示するのではなく、2 つの答えのうちどちらが優れているかを人間が評価するよう求められます。 AI モデルはこのようにして人間の好みを学習することができます。

例えば、上の例では、人間は結果 2 を好みますが、この結果が必ずしも最良の結果であるとは限りません。結果 1 よりも優れているとしか言えません。

明確で曖昧さのない答えがある単純なタスクの場合、この比較方法はあまり役に立たない可能性があり、最大尤度目的の教師あり学習を使用する方が適しています。

しかし、オープンエンド生成タスクの場合、回答にスコアを付けるよりも、候補となる回答の相対的なメリットを比較する方が簡単です。

この報酬モデルの数学的説明は次のとおりです。

報酬モデルを使用すると、強化学習を通じて言語モデルのパラメータを学習し、期待される報酬を最大化することができます。

ここで、目的関数は現在の報酬モデル、つまり初期強化学習後に固定されるパラメータ Φ です。

この定式化では、プロンプトに対して、ポリシー モデル (通常は、教師ありの指示で微調整されたチェックポイント モデルから初期化されます) がいくつかの候補結果を生成します。次に、これらが報酬モデルに送られ、報酬モデルはスコアを返します。その後、ポリシー モデルはこのフィードバックに基づいて調整できます。それは試行錯誤のプロセスのようなものです。

勾配ベースの反復法によって期待報酬を最大化できますが、そのためには PPO などのポリシー勾配アルゴリズムを使用する必要があります。

要約すると、報酬モデルは人間の好みをエンコードし、それがポリシー モデルに渡されて強化学習を通じて学習します。

しかし、実際には、RLHF を好まない人が多く、うまく行うのが難しいため、この方法を放棄したいと考える人さえいます。

RLHF の一般的な問題は「報酬ハッキング」です。

たとえば、人間の注釈者がいくつかの完了した結果に注釈を付け、一対の結果のうちどちらが優れているかをマークし、全員がより長い結果の方が良いとマークした場合、ポリシー モデルは報酬モデルがより長い結果を優先すると考え、次第に長くて見苦しい結果が多くなると想定します。このとき、報酬モデルによって与えられる報酬はどんどん高くなっていますが、人間の満足度は低下します。この現象は実際には制御が難しく、チョン氏は現時点でこの問題に対する完全な解決策は存在しないと述べた。

しかし、これらの問題にもかかわらず、Chung 氏はいくつかの理由から RLHF の研究を継続すべきだと考えています。

  • 最大尤度には過度に強い帰納的バイアスがあり、モデルのサイズが大きくなるにつれてそれが顕著になります。
  • 目的関数の学習は、この問題を軽減し、改善の余地を大きく広げる別のパラダイムです。ChatGPT など、RLHF を使用したいくつかの成功例は、ほんの始まりに過ぎません。
  • この原理は非常に信頼性が高く、その有効性をさらに調査する価値があります。

AIの未来

最後にチョン氏はAIのこれまでの発展を簡単に振り返り、AIの今後の発展についての展望を語りました。

ルールベースのシステムから古典的な機械学習技術、ディープラーニング、RLHF を使用したディープラーニングに至るまで、AI システムの学習可能な部分 (図の青い部分) が増加し、その機能がさらに強力になっていることを共有しました。

現在では、損失関数もシステムの学習可能な部分になりつつあり、GAN や RLHF などの成功事例もすでに存在します。これにより、AI システムは正しい動作を形式化するのが困難なタスクの実行を学習できるようになります。

チョン氏は、これが未来の次のパラダイムであり、これまでのパラダイムシフトに劣らない技術的進歩をもたらすだろうと信じている。

どの AI モデルがこの新しいパラダイムを代表するものになるかは、今後の動向を待つことにしましょう。

<<: 

>>:  AirPodsは「あなたの脳を読む」ことができるのか?あるいは汗中の乳酸濃度も監視できるタイプ|ネイチャー

ブログ    

推薦する

欧州の新しいAI法は倫理監査を強化する

EU があらゆる業界での AI および機械学習技術の使用を効果的に規制する AI 法の施行に向けて...

...

人工知能の急速な発展は人間に取って代わるのでしょうか?

[[347812]]現在の人工知能技術の発展は、主にコンピュータを媒体として活用し、自動化技術の発...

新しい研究:ハトは人工知能と同様の方法で問題を解決する

オハイオ州立大学とアイオワ大学の研究者による研究で、ハトは問題を解決する際に人工知能に似た「力ずく」...

...

これら5つのコアテクノロジーを理解すれば、人工知能はもうあなたの身近な存在に

人工知能は現在最も注目されている産業であり、将来的にはロボット、スマートセンサー、ウェアラブルデバイ...

OpenAI が GPT-4 やその他のモデルを更新し、新しい API 関数呼び出しを追加し、価格を最大 75% 引き下げ

数日前、OpenAIのCEOサム・アルトマン氏は世界ツアーのスピーチで、OpenAIの最近の開発ルー...

TensorRT はどのようにしてより高速なアーキテクチャを実現するのでしょうか?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

人工知能、自動化、新興技術のトレンドが4.6兆ドルの通貨市場に混乱をもたらしている

いくつかのスタートアップ企業は、最新のテクノロジーを活用して、最大かつ最も古いセクターの 1 つであ...

人工知能に関する究極の議論: 私たちは AI なのか?

有名な科学者ホーキング博士の死からわずか半年後に、世界で最も聡明な科学者たちが歴史的な議論を始めると...

...

...

Java 上級: 5 つの負荷分散アルゴリズムの実装原理を深く理解する

序文負荷分散とは何ですか?複数のサーバーを対称的に構成したサーバーセットを指します。各サーバーは同等...

450、バックトラッキング アルゴリズムとは何ですか? 一度見れば理解できますが、実際に書いてみると失敗します。

バックトラッキングアルゴリズムとは何ですか? Baidu 百科事典では、バックトラッキング アルゴリ...

量子コンピューティングは人工知能をどう変えるのか

量子コンピューティングと人工知能は、現代の最も破壊的なテクノロジーの 2 つです。 2 つのテクノロ...