Transformer をまだ知らない場合は、この記事の読者ではない可能性があります。2018 年以来、Transformer モデルは、自然言語処理タスクにおいて従来の LSTM および CNN ネットワークをうまく置き換えてきました。情報を整理していると、データスクールがトランスフォーマーに関する海外の人気科学記事を翻訳していることがわかりました。翻訳はかなり良かったです。私は推薦をするためにここに来ました. まだ Transformer を知らない場合は、まずこの記事に移動してください. Xiaobai は Transformer (図) を理解できます .学習後, おかえりなさい.
ChatGPT が主に Transformer Decoder のみのモデルである GPT-3 に基づいていることは誰もが知っていると思います。GPT-3 は、自己回帰事前トレーニング プロセスを通じて優れたコンテキスト学習を示します。これは、ダウンストリーム タスクに対してさらに微調整を行う必要は必ずしもありません。これ以前は、Transformer は実際にはさまざまなジャンルに分かれていました. 最近では、Decoder のみが世界を支配する傾向がありました. Google が最近リリースした PaLM-E (2023 年 3 月 10 日) でさえ、具体的なマルチモーダル モデルです. エンコーダ コンポーネントを放棄します.統一されたニューラル ネットワーク セットアップでマルチタスクを処理するための Decoder のみのアーキテクチャを支持します。
これらのモデルの違いを比較しやすくするために、自然言語処理のいくつかの重要な基礎を確認する必要があります:アーキテクチャ、トレーニング前の目標、トークナイザー、位置エンコーディング
1. 建築
エンコーダーとデコーダーの比較を次に示します。エンコーダーはすべてのトークンを並行して処理し、双方向の理解を可能にします。自己回帰出力デコーダーの生成的な性質により、左から右への処理に制限されます。アーキテクチャでエンコーダーまたはデコーダーを最初に構築することを選択することは、事前トレーニング ターゲットの選択と密接に関連しています。
Transformer-XL と呼ばれる Transformer モデルの改良版が 2019 年に提案され、コンテキスト内の超長い依存関係の問題が解決されました。元の Transformer モデルは、512 ~ 2048 トークンの固定長セグメントのみを学習できます。長いテキストを扱う場合、複数のフラグメントを個別に学習すると、これらのフラグメント間の相互依存関係を把握できなくなる可能性があります。Transformer-XL には、前の「セグメント」をキャッシュするセグメント レベルのループ メカニズムが組み込まれているため、次の「セグメント」を処理するときに非表示にして拡張コンテキストとして再利用できます。XLNet は Transformer-XL アーキテクチャに基づいて構築されています。
ここで簡単な整理を行います
エンコーダのみ |
エンコーダ・デコーダ | デコーダのみ |
バート | T5、バート | GPT、XLNet |
GPT はテキスト ソリティア、BERT はクローゼット、
では、残りのいくつかは何ですか?
これら 5 つのモデルは、それぞれ独自の教授法と特徴を持つ料理学校であると仮定します。
BERT (Bidirectional Encoder Representation): BERT スクールで教える場合は、まず生徒にすべての調理スキルと食材の知識を習得させてから、実際に操作させます。この学校は、材料と技術の完全な理解に特に重点を置いているため、学生は同時に文脈のすべての情報に注意を払う必要があります. 双方向学習により、BERT は文脈から言語知識を同時に学習できます。
GPT (Generating Pre-Training Transformer): GPT スクールは左から右への教授法を採用しており、生徒は料理のスキルと食材を順番に学ぶ必要があります。BERT ほど包括的ではありませんが、この方法は一貫したテキストを生成することに重点を置いているため、生成タスクのパフォーマンスが向上します。
T5 (Text-to-Text Transfer Transformer): T5 学校の教育方法は、すべてのタスクをテキストからテキストへの変換問題として扱うことです。学生は、与えられた材料と技術に基づいて新しいレシピを作成する方法を学ぶ必要があります。このアプローチにより、T5 モデルをさまざまなタスクに柔軟に適用できます。
BART (Bidirectional and Auto-Regressive Transformers): BART スクールでは、BERT や GPT と同様の教育方法を使用しています。まず、生徒は材料とテクニックをランダムにカバーし、次に左から右にテキストを生成する必要があります。このアプローチは、BERT と GPT の利点を組み合わせて、BART を多くのタスクでうまく機能させます。
XLNet (Generalized Autoregressive Pretraining): XLNet スクールは、完全に順列された教育方法を使用します。学生は、与えられた材料と技術を任意の順序でタスクを完了する方法を学ぶ必要があります。このアプローチにより、XLNet は長距離の依存関係をテキストに取り込むことができるため、一部のタスクでは他のモデルよりも優れたパフォーマンスを発揮します。
上記の説明は、ChatGPT モデルの GPT4 に基づいています。それは非常に明確にされています。この記事を書く必要はないと思いますが…
2.事前トレーニングの対象
言語モデルは通常、次の 2 つのステップを経ます。
事前トレーニング:大規模で多様なテキスト データ セット (Wikipedia、Q&A サイト、文学書など) でトレーニングすることにより、モデルの決定的な基盤を確立し、自然言語パターンの広範かつ上位レベルの理解を確立します。教師なし学習の方法。
微調整:事前トレーニング済みのモデルは、感情分析、テキスト分類、名前付きエンティティの認識、機械翻訳、質問応答など、下位レベルのより具体的なダウンストリーム タスクで個別にさらにトレーニングされます。ただし、微調整の下流のタスクでは、対応するラベルを使用して慎重に準備されたデータセットを作成する必要があり、通常はモデルの微細構造を変更する必要があり、これには労力がかかります。
これには下流タスクの概念が含まれます. BERT の論文を参照できます. 下流タスクは大まかに次のように分類できます: 対文分類タスク, 単一文分類タスク, 質問応答タスク, 単一文ラベル付けタスク. ここでは展開しません。BERT ペーパーの付録 B1.1 を自分で読むことができます (アドレス: https://arxiv.org/pdf/1810.04805.pdf)。
ダウンストリーム タスクは非常に複雑であるため、最終的な目標は、すべてのダウンストリーム タスクを 1 つの事前トレーニング タスクに統合することです。これにより、個別のタスクを後で微調整する必要がなくなります。Google は 2019 年に T5 モデルを導入しました。このモデルでは、すべての NLP タスクがテキスト生成タスクとして扱われ、テキスト分類の問題も含まれます。GPT-3 は、事前トレーニング中に驚くべきコンテキスト学習機能を実証し、いくつかのダウンストリーム タスクで他の微調整されたモデルよりも優れたパフォーマンスを発揮しました。
事前トレーニングの目的の選択は、Transformer ベースのモデルのパフォーマンスと、特定のタスクを微調整するために必要な適応の程度に大きく影響する可能性があります。自己回帰 (AR) と自動エンコード (AE) は、現在成功している 2 つのターゲット タイプです。
AR ターゲットは、テキスト シーケンスの再生成に重点を置いており、機械翻訳、要約要約、質問応答などのテキスト生成タスクを特に得意としています。AR モデルは左から右への生成にのみ適しているため、後の XLNet は、トレーニング目的で以前にラベル付けされたシーケンスの因数分解の順序で順列を使用することにより、この制限を克服しています。
AE は、些細なテキスト データから元のテキストを再構築し、言語理解において優れたパフォーマンスを発揮することを目的としています。AE 目標により、事前トレーニング中に双方向の処理が可能になり、コンテキストの理解が向上します。ただし、この目標は独立性を前提としています。つまり、相互依存性に関係なく、すべてのトークンがマスクされて再作成される可能性が同じであることを意味します。さらに、人間のコミュニケーションの自然なプロセスにより似た、テキスト生成タスクの事前トレーニングの目的と転移学習の間には理解できる不一致もあります。
自動コード AE |
自動回帰 AR |
順列AR |
BERT、BART、および T5 | GPT |
XLNet |
3. ポジションコード
Transformer ベースのモデルは、位置埋め込みをトークン埋め込みに追加することで位置情報をエンコードし、テキスト シーケンスの順序を維持しながら並列処理を保証します。元の Transformer モデルは、絶対位置の正弦関数を使用しており、異なる位置にある 2 つのマーカー間の関係は、それらの位置埋め込みの余弦類似度として表現できるという洞察がありました。Transformer-XL は、異なるセグメントの位置エンコーディングを処理するために相対位置エンコーディングを導入し、マーカーの各ペア間の距離が絶対位置よりも自己注意の計算においてより重要な要素であることを認識しています。
絶対位置コード |
相対位置コード |
バート、GPT、バート | T5、XLNet |
4.トークナイザー
トークンは、単に 1 つの単語または一連の連続した単語 (n-gram) と呼ばれます。ただし、英語の単語にはさまざまな形式 (動詞の時制、動詞と名詞の間の遷移、複数形、複合形など) があるため、単語をサブワード単位に分割してルート ワード、プレフィックスとしてキャプチャするため、サブワード ベースのトークン化は実行可能なオプションです。 、接尾辞、およびその他の言語要素。たとえば、「疲れる」は「tire」と「some」に分解でき、「疲れた」は「tire」と「d」に分解できます。このように、「tiresome」と「tired」は同じ語源であると識別できます。
LLM は通常、サブワード トークン化を使用します。その 2 つの主な方法は、WordPiece と Byte Pair Encoding (BPE) です。WordPiece メソッドは、語彙データセット内のすべての可能な n-gram 文字の可能性を最大化することによって、サブワード単位を収集します。一方、BPE は WordPiece に似ていますが、256 個の Unicode 文字をすべて使用するため、句読点の特殊記号を追加せずに特殊文字を含めることができます。
ワードピース | BPE |
バート、T5 | GPT、BART |
上記が終了したら、実際にはモデルに入るためのリンクです。
BERT(Bidirectional Encoder Representations from Transformers)
Google は、特にエンコーダ スタックを活用する双方向モデルとして 2018 年に BERT を導入しました。
BERT モデルのトレーニング前の目的の 1 つはノイズ除去の目的です。これらの 15% のランダム マスク トークンのうち、80% の確率で [MASK] トークンに置き換えられ、10% の確率で誤り訂正学習用のランダムな単語に置き換えられることに注意してください。残りの 10% の時間は、特定のキーワードがブロックされたときの全体的なコンテキストの理解を維持するために変更されません。
BERT の事前トレーニングには、特定のトークンだけでなく文の全体的な意味を理解するモデルの能力を評価する次の文の予測 (NSP) 目標が含まれています。このタスクには、次の文が実際の連続した文であるかどうかを予測するバイナリ分類タスクが含まれます。実際の連続した文は 50% の確率で提示され、同じ文献からのランダムな文は 50% の確率で提示されます。
実際の言語タスクはノイズ除去タスクではないため、BERT モデルの事前トレーニングと微調整の間に矛盾が生じます。したがって、個々のダウンストリーム タスクの微調整が必要です。このプロセスは非常に煩わしく、複雑です。
下流のタスクは、(a) 文ペア分類タスク (2 つの文の意味的類似性など)、(b) 単一文分類タスク (感情分析など)、(c) SQuAD (質問応答)、および ( d) 名前付きエンティティのタグ付け。この精度は非常に高く、エンティティを適切にマークし、それらを適切に分類し、類似性を適切に処理すれば、その効果は非常に高くなります.しかし、実際には、これは非常に困難です.
BERT にはいくつかのバリアントがあります。
ロバータ | 蒸留BERT | DistilRoBERTa |
|
より小型で軽量な Transformer ネットワーク BERT モデルのサイズを 40% 削減 学生モデルの模倣、実際のラベルを予測しない |
DistilBERTと同様に、生徒モデルは教師モデルをシミュレートするために使用され、教師モデルはRoBERTaに置き換えられます |
GPT(Generative Pre- Training language model)
これは言うまでもありません: OpenAI は、デコーダー スタックのみを使用する GPT1-4 モデルを提案し、それらを左から右への自己回帰モデルにします。BERT ほど双方向の理解はありませんが、すべての自然言語タスクを生成タスクと見なすことができるため、生成的アプローチはダウンストリーム タスクによく適合します。
誰もがプロセスについて非常に明確なので、私の以前の記事を読むことができます. 他の微調整された最先端技術 (SOTA) に匹敵するパフォーマンスを実際に達成できるのは GPT-3 までではないことを説明する価値があります.モデル。複数のタスクでのパフォーマンスを向上させるために、InstructGPT メソッドを使用して微調整が実行されました。これは、ラベラーからのデモンストレーション テキストの教師あり学習と、それに続くテキスト スコアとランキングを生成するための強化学習を組み合わせたもので、ヒューマン フィードバック強化学習 (RLHF) と呼ばれます。このアプローチにより、個々のダウンストリーム タスクごとに微調整することなく、ネットワーク パラメーターをすべてのダウンストリーム タスクとキューで共有できます。本当に簡単です...シンプルで直接的で暴力的です。
BART (双方向および自己回帰トランスフォーマー):
Facebook によって提案された BART (2019) は、事前トレーニング ターゲットのノイズ除去とエンコーダー/デコーダー アーキテクチャの点で T5 と非常によく似ています。唯一の違いは、トークンの 30% がマスクされ、文の順列が事前トレーニング テキストで使用されることです。
理論的には、このアプローチには次の利点があります。
双方向のコンテキスト情報:単語をランダムにマスキングすることで、BART は BERT のような双方向のコンテキスト情報を学習して、文章内の潜在的な関係をより適切に捉えることができます。
タスク生成の利点: BART は事前トレーニング段階でタスク生成の特性を統合するため、双方向コンテキストのみに焦点を当てた BERT よりもタスク生成のパフォーマンスが向上します。
より自然な確率分布:ランダム マスキング学習は、BART によって学習された確率分布を自然言語生成の分布に近づけます。これは、左から右への生成方法に限定されず、トレーニング中にさまざまなマスクに適応されているためです。
堅牢性:ランダム カバー学習により、BART はさまざまな程度のノイズとカバーの下で学習できるようになり、モデルの堅牢性が向上します。
T5(Text-to-Text Transfer Transformer)
2020 年に Google は、すべてのダウンストリーム タスクをテキスト生成タスク、さらには分類問題に変換できる統合モデルとして T5 を提案しました。
T5 では、教師なし事前トレーニングの目的とアーキテクチャをいくつか試した後、エンコーダー/デコーダー アーキテクチャとノイズ除去の目的を使用します。事前トレーニング中、エンコーダーに供給されるトークンの 15% がランダムにマスクされます。ただし、これは BERT のマスキングおよびノイズ除去アルゴリズムの修正版です。連続するマスクされたトークンはトークンに置き換えられ、元の語彙に追加された新しい単一のトークンとして扱われます。これは、モデルが空白に含まれていない単語の数を予測することを学習するのに役立ちます。その後、データセット内の入力テキストを分割することで生成能力をランダムに学習し、最初の部分はエンコーダーに入力され、2 番目の部分は自動回帰再生成の出力として使用されます。
これを行う利点は次のとおりです。
効率の向上:連続するマスクされたトークンを新しい単一のトークンとして扱うことで、トレーニング中に複数の独立したマスクされたトークンを処理することを回避できます。これにより、トレーニング プロセスが簡素化され、モデルのトレーニング効率が向上します。
エラーの削減:テキストを処理するときに、連続するマスクされたトークンを新しい単一のトークンとして扱うと、マスクされた単語を予測するときにモデルが行うエラーを減らすのに役立ちます。モデルは、複数の独立したマスクされたマーカーではなく、新しい単一のマーカーにのみ焦点を当てる必要があるため、モデル予測エラーの可能性が減少します。
遠距離依存関係のモデリングの改善:連続するマスクされたトークンを新しい単一のトークンとして扱うことで、モデルがテキスト内の遠距離依存関係をより適切に捉えるのに役立ちます。モデルは、複数の独立したマスクされたトークンに分散するのではなく、この新しい単一のトークンを他の関連する単語に関連付けることができるためです。
エンドツーエンドのタスクに役立つ:この戦略は、モデルが機械翻訳、要約などのエンドツーエンドのタスクをより適切に処理するのに役立ちます。連続するマスクされたトークンを新しい単一のトークンとして扱うことで、モデルはソース言語のテキストからターゲット言語のテキストへの翻訳を改善し、高品質の生成結果を達成できます。
XLNet (Transformer-XL は自己回帰モデルを生成します)
カーネギー メロン大学と Google によって開始された XLNet (2019) は、従来の自己回帰 (AR) 目標に基づいて開発された事前トレーニング済みの目標を組み合わせています。新しい目的は、シーケンスのすべての可能な順列の期待される可能性を最大化します。このようにして、XLNet は、BERT のノイズ除去目的と従来の AR 目的の左から右へのコンテキスト学習の制限によって引き起こされるトレーニング前の微調整の不一致など、いくつかの制限を克服します。XLNet は、非常に長いコンテキストを処理するためのセグメント再帰メカニズムを含む Transformer-XL に基づいており、相対位置エンコーディングを使用します。
長距離依存関係のモデリングの改善:マスクされた言語モデリング タスクを使用する BERT とは異なり、XLNet は置換言語モデリング (Permutation Language Modeling、PLM) アプローチを使用します。これにより、XLNet はテキスト内の長距離依存関係をより適切にキャプチャできます。
事前トレーニング フェーズと微調整フェーズの間の不一致を解決する: BERT の事前トレーニング フェーズでは、モデルはカバーされた単語を予測する必要がありますが、微調整フェーズでは、カバーされたシンボルは表示されなくなります。これにより、事前トレーニングと微調整の段階でいくつかの矛盾が生じます。XLNet は、この問題を完全順列言語モデリング アプローチで解決し、事前トレーニング段階と微調整段階の一貫性を高めます。
自己回帰機能: XLNet は自己回帰メソッドを採用しています。つまり、テキスト生成、要約などの生成タスクでうまく機能します。
双方向コンテキスト モデリング: XLNet は、BERT と同様に双方向のコンテキスト情報をキャプチャできるため、テキスト内の単語間の関係を理解するのに優れています。
より強力な表現能力: XLNet は Transformer-XL アーキテクチャを採用しており、長いシーケンスをより適切に処理し、より強力な表現能力を提供できます。
さまざまなタスクで優れたパフォーマンスを発揮: XLNet は、テキスト分類、感情分析、読解、要約など、多くの自然言語処理タスクで優れたパフォーマンスを発揮します。
一般的に言えば、理論的に言えば、Transformerファミリーバケットには独自の利点があり、実際、GPT4のリリース後、多くの議論が支配的な状態になりました。実際、原理的にはまだ多くのモデルが優れた機能を持っている.GPT4はまだ詳細を公開していない.OPENAIの通常の慣例では、モデルがリリースされてから約6か月後に論文が公開される可能性があり、学術的な見解を楽しみにしています.
原則として、GPT は最適なソリューションではありませんが、その効果は比類のないものです。それはまた、アカデミックとエンジニアリングの関係、結局のところ、最終的な目標は効果を達成することであることを示しています。Li Feifei 教授を含む ImageNet も、世界中で aws で激しくマークされ、ついに成功しました。
絶対的な理論はなく、真の知識は実践から得られます。