LLM 大規模言語モデルの事前トレーニング 大規模言語モデルの事前トレーニング

前回のビデオでは、生成 AI プロジェクトのライフサイクルを紹介しました。
ここに画像の説明を挿入

ご覧のとおり、生成 AI アプリケーションの楽しい部分を開始するには、いくつかの手順を完了する必要があります。ユースケースの範囲を絞り、アプリケーションで LLM がどのように機能する必要があるかを判断したら、次のステップは使用するモデルを選択することです。
ここに画像の説明を挿入

最初の選択肢は、既存のモデルを使用するか、独自のモデルを最初からトレーニングすることです。状況によっては、独自のモデルを最初からトレーニングする方が有利な場合があります。これについては、このコースの後半で学習します。
ここに画像の説明を挿入

ただし、通常は、既存の基本モデルを使用してアプリケーションの開発を開始します。あなたのような AI コミュニティのメンバーがアプリケーションで使用できるオープン ソース モデルが多数用意されています。生成 AI アプリケーションを構築するための Hugging Face や PyTorch などのいくつかの主要なフレームワークの開発者は、これらのモデルを参照できる厳選したハブを用意しています。
ここに画像の説明を挿入

これらのハブの非常に便利な機能は、各モデルの最良の使用例、トレーニング方法、既知の制限事項の重要な詳細を説明するモデル カードが含まれていることです。これらのモデル ハブへのリンクは、週の終わりの資料に記載されています。
ここに画像の説明を挿入

選択する正確なモデルは、実行する必要があるタスクの詳細によって異なります。Transformers モデル アーキテクチャのバリアントは、主にモデルのトレーニング方法の違いにより、さまざまな言語タスクに適しています。これらの違いをよりよく理解し、特定のタスクにどのモデルを使用するかについての直感を養うために、大規模な言語モデルがどのようにトレーニングされるかを詳しく見てみましょう。この知識があれば、Model Central を参照して、ユースケースに最適なモデルを見つけることが容易になります。

まず、LLM の初期トレーニング プロセスを大まかに見てみましょう。この段階は、多くの場合、事前トレーニングと呼ばれます。
ここに画像の説明を挿入

レッスン 1 で見たように、LLM は言語の詳細な統計表現をエンコードします。この理解は、モデルが大量の非構造化テキスト データから学習するモデルの事前トレーニング段階で開発されます。これは、ギガバイト、テラバイト、さらにはペタバイトの非構造化テキストになる可能性があります。このデータは、インターネットから収集したデータや、言語モデルをトレーニングするために特別に集められたテキスト コーパスなど、多くのソースから取得されます。
ここに画像の説明を挿入

この自己教師あり学習ステップ中に、モデルは言語に存在するパターンと構造を内部化します。これらのモードにより、後で説明するように、モデルのアーキテクチャに応じてモデルがトレーニング目標を達成できるようになります。事前トレーニング中に、トレーニング目標の損失を最小限に抑えるためにモデルの重みが更新されます。エンコーダーは、各トークンの埋め込みまたはベクトル表現を生成します。事前トレーニングも計算量が多く、GPU を使用します。
ここに画像の説明を挿入

インターネットなどの公開サイトからトレーニング データを収集する場合、多くの場合、品質を向上させ、バイアスに対処し、その他の有害なコンテンツを削除するためにデータを処理する必要があることに注意してください。このデータ品質のキュレーションにより、通常はトークンの 1 ~ 3% のみが事前トレーニングに使用されます。独自のモデルを事前トレーニングする場合は、収集する必要があるデータの量を見積もるときに、これを考慮する必要があります。
ここに画像の説明を挿入

今週初めに、Transformers モデルにはエンコーダーのみ、エンコーダー-デコーダー モデル、デコーダーのみの 3 つのバリエーションがあることをご覧になりました。
ここに画像の説明を挿入

それぞれが異なる目標に基づいてトレーニングされているため、異なるタスクの実行方法を学習します。

エンコーダー専用モデルはオートエンコーダー モデルとも呼ばれ、マスクされた言語モデリングを使用して事前トレーニングされます。
ここに画像の説明を挿入

ここでは、入力シーケンス内のトークンがランダムにマスクされており、トレーニングの目標は、マスクされたトークンを予測して元の文を再構築することです。
ここに画像の説明を挿入

これはノイズ除去ターゲットとも呼ばれます。
ここに画像の説明を挿入

オートエンコーダー モデルは、入力シーケンスの双方向表現を生成しました。これは、モデルが先行する単語だけでなく、トークンのコンテキスト全体の知識を持っていたことを意味します。エンコーダ専用モデルは、この双方向コンテキストの恩恵を受けるタスクに適しています。
ここに画像の説明を挿入

これらを使用して、感情分析などの文分類タスクや、固有表現認識や単語分類などのトークンレベルのタスクを実行できます。自動エンコーディング モデルのよく知られた例としては、BERT と RoBERTa があります。
ここに画像の説明を挿入

次に、因果言語モデリングを使用して事前トレーニングされたデコーダー専用モデルまたは自己回帰モデルを見てみましょう。ここでのトレーニングの目標は、前のトークンのシーケンスに基づいて次のトークンを予測することです。
次のトークンを予測することは、研究者によって完全言語モデリングと呼ばれることもあります。入力シーケンスをマスクし、質問トークンまでの入力トークンのみを参照するデコーダーベースの自己回帰モデル。
ここに画像の説明を挿入

モデルは文の終わりを知りません。次に、モデルは入力シーケンスを 1 つずつ反復して次のトークンを予測します。
ここに画像の説明を挿入

エンコーダ アーキテクチャとは対照的に、これはコンテキストが一方向であることを意味します。
ここに画像の説明を挿入

モデルは、多数の例から次のトークンを予測する方法を学習することで、言語の統計的表現を構築します。このタイプのモデルは、エンコーダを使用せずに、元のアーキテクチャのデコーダ コンポーネントを使用します。
ここに画像の説明を挿入

デコーダ専用モデルはテキスト生成によく使用されますが、より大規模なデコーダ専用モデルは強力なゼロショット推論機能を示し、一般にさまざまなタスクに対して良好なパフォーマンスを発揮します。GPT と BLOOM は、デコーダベースの自己回帰モデルのよく知られた例です。
ここに画像の説明を挿入

Transformers モデルの最後のバリアントは、元の Transformers アーキテクチャのエンコーダ部分とデコーダ部分を使用するシーケンスツーシーケンス モデルです。事前トレーニング ターゲットの正確な詳細はモデルごとに異なります。一般的なシーケンス間モデルである T5 は、ランダムな入力トークン シーケンスをマスクする Span 破損の事前トレーニング済みエンコーダーを使用します。これらのマスク シーケンスは、ここでは x で示されている一意のセンチネル トークンに置き換えられます。Sentinel トークンは語彙に追加される特別なトークンですが、入力テキストの実際の単語には対応しません。
ここに画像の説明を挿入

次に、デコーダは、マスクされたトークンのシーケンスを自己回帰的に再構築するように割り当てられます。出力は、センチネル トークンに続く予測トークンです。
ここに画像の説明を挿入

シーケンスツーシーケンス モデルは、翻訳、要約、質問応答に使用できます。これらは、テキストの本文を入力および出力として使用する場合に便利です。このコースのラボで使用する T5 の他に、もう 1 つのよく知られたエンコーダー/デコーダー モデルは、Bird ではなく BART です。
ここに画像の説明を挿入

要約すると、これは、さまざまなモデル アーキテクチャと事前トレーニング ターゲットを迅速に比較するための目標です。自動エンコーディング モデルは、マスクされた言語モデリングを使用して事前トレーニングされます。これらは、元の Transformers アーキテクチャのエンコーダ部分に対応し、文の分類やトークンの分類でよく使用されます。
ここに画像の説明を挿入

自己回帰モデルは、因果言語モデリングを使用して事前トレーニングされます。このタイプのモデルは、オリジナルの Transformers アーキテクチャのデコーダ コンポーネントを使用し、テキスト生成によく使用されます。
ここに画像の説明を挿入

シーケンスツーシーケンス モデルは、元の Transformers アーキテクチャのエンコーダ部分とデコーダ部分を使用します。事前トレーニング ターゲットの正確な詳細はモデルごとに異なります。T5 モデルは、スパン破損を使用して事前トレーニングされています。シーケンスツーシーケンス モデルは、翻訳、要約、質問応答によく使用されます。
ここに画像の説明を挿入

これらのさまざまなモデル アーキテクチャがどのようにトレーニングされるか、およびそれらが適している具体的なタスクを確認したので、ユースケースに最適なモデル タイプを選択できます。もう 1 つ留意すべき点は、一般に、アーキテクチャのモデルが大きいほど、タスクを適切に実行できるということです。研究者らは、モデルが大規模であればあるほど、追加のコンテキスト学習やトレーニングを行わなくても、モデルが希望通りに機能する可能性が高くなることがわかりました。サイズに応じてモデルの能力が増大するという観察された傾向により、近年はより大型のモデルの開発が推進されています。
ここに画像の説明を挿入

この成長は、拡張性の高い Transformers アーキテクチャの導入、トレーニング用の大量のデータへのアクセス、より強力なコンピューティング リソースの開発など、研究における変曲点によって推進されています。
ここに画像の説明を挿入

このモデル サイズの着実な増加により、一部の研究者は実際に、LLM に対する新しいムーアの法則が存在するのではないかと推測しています。彼らと同じように、パラメータを追加し続けてパフォーマンスを向上させ、モデルをよりスマートにすることができるのかと疑問に思うかもしれません。このモデルの成長は何をもたらすでしょうか?
ここに画像の説明を挿入

これは素晴らしいことのように聞こえますが、これらの巨大なモデルのトレーニングは難しく、コストが非常にかかるため、ますます大規模なモデルを継続的にトレーニングするのは現実的ではない可能性があることが判明しています。次のビデオで、大規模モデルのトレーニングに関連するいくつかの課題を詳しく見てみましょう。

参考

https://www.coursera.org/learn/generative-ai-with-llms/lecture/2T3Au/pre-training-large- language-models

おすすめ

転載: blog.csdn.net/zgpeace/article/details/132419769