ホームページ > 記事 > テクノロジー周辺機器 > トランスフォーマー レビュー: BERT から GPT4 へ
人工知能は近年最も話題になっているトピックの 1 つであり、かつては純粋に SF の話だと考えられていたサービスが、ニューラル ネットワークの開発により現実のものになりつつあります。会話エージェントからメディア コンテンツ生成まで、人工知能は私たちがテクノロジーと対話する方法を変えています。特に、機械学習 (ML) モデルは、自然言語処理 (NLP) の分野で大きな進歩を遂げました。重要なブレークスルーは、シーケンス処理のための「セルフアテンション」とトランスフォーマー アーキテクチャの導入であり、これにより、以前はこの分野を支配していたいくつかの重要な問題が解決できるようになりました。
この記事では、革新的な Transformers アーキテクチャと、それが NLP にどのような変化をもたらしているかを見ていきます。また、Transformers の包括的なレビューも取り上げます。 BERT から Alpaca モデルまでを紹介し、各モデルの主な特徴とその潜在的な用途を強調します。
最初の部分は、ベクトル化、分類、シーケンスのラベル付け、QA (質問と回答)、NER (名前付き) に使用される Transformer エンコーダーに基づくモデルです。エンティティ認識)など
トランスフォーマー エンコーダー、単語単位のトークン化 (30,000 語彙)。入力埋め込みは、ラベル ベクトル、トレーニング可能な位置ベクトル、フラグメント ベクトル (第 1 テキストまたは第 2 テキスト) の 3 つのベクトルで構成されます。モデルの入力は、CLS トークンの埋め込み、最初のテキストの埋め込み、および 2 番目のテキストの埋め込みです。
BERT には、マスク言語モデリング (MLM) と次文予測 (NSP) という 2 つのトレーニング タスクがあります。 MLM では、トークンの 15% がマスクされ、80% が MASK トークンに置き換えられ、10% がランダム トークンに置き換えられ、10% は変更されません。モデルは正しいトークンを予測し、損失はブロックされたトークンの 15% についてのみ計算されます。 NSP では、モデルは 2 番目のテキストが最初のテキストに続くかどうかを予測します。予測は CLS トークンの出力ベクトルに対して行われます。
トレーニングを高速化するために、最初の 90% のトレーニングは 128 トークンのシーケンス長で実行され、残りの 10% の時間は、より効果的な位置埋め込みを取得するために 512 トークンでのモデルのトレーニングに費やされます。 。
BERT の改良版。MLM でのみトレーニングされ (NSP はあまり有用ではないと考えられているため)、トレーニング シーケンスは長くなります (512 トークン)。動的マスキング (同じデータが再度処理されるときに異なるトークンがマスクされる) を使用して、トレーニング ハイパーパラメーターが慎重に選択されます。
テキスト タグの更新ベクトルとエンティティ タグの元のベクトルが最初に個別に計算されます;
In 5% のケースでは、エンティティは間違ったエンティティに置き換えられますが、一致は保持されており、モデルは正しいエンティティを予測する必要があります。
XLNet は、置換言語モデリング (PLM) タスクを除き、Transformer-XL に基づいています。このタスクでは、MASK を直接使用するのではなく、短いコンテキストでトークンを予測する方法を学習します。これにより、すべてのマーカーに対してグラデーションが確実に計算され、特別なマスク マーカーが不要になります。
コンテキスト内のトークンはスクランブルされています (たとえば、i 番目のトークンは i-2 および i-1 トークンに基づいて予測できます) が、それらの位置はまだわかっています。これは、現在の位置エンコーディング (Transformer-XL を含む) では不可能です。コンテキストの特定の部分でトークンの確率を予測しようとする場合、モデルはトークン自体を知る必要はありませんが、コンテキスト内でのトークンの位置を知る必要があります。この問題を解決するために、セルフ アテンションを 2 つのストリームに分割しました。
微調整中にクエリ ベクトルを無視すると、モデルは通常の Transformer-XL と同様に機能します。
実際には、モデルが正しく学習するにはコンテキストが十分に長い必要があります。 RoBERTa と同じ量のデータを学習し、同様の結果が得られましたが、実装の複雑さのため、このモデルは RoBERTa ほど普及しませんでした。
品質を犠牲にすることなく BERT を簡素化:
モデルは、MLM と文順序予測 (SOP) でトレーニングされています。
BERT を最適化するもう 1 つの方法は蒸留です:
BERT に基づく多言語ベクトル化モデル。 MLM と TLM でトレーニングされ (マーカーの 20% がマスクされます)、微調整されます。 100 以上の言語をサポートし、50 万のタグ付き語彙が含まれています。
敵対的生成手法を使用して BERT トレーニングを高速化:
トレーニング データ量は RoBERTa や XLNet と同じで、モデルは BERT、RoBERTa よりも高速ですと ALBERT Learn は同等の品質です。トレーニングが長くなるほど、パフォーマンスが向上します。
マーカー ベクトルの内容と位置を 2 つの別々のベクトルに分離する別のモデル:
完全なトランスフォーマーに基づいたモデル。そのアプリケーションの範囲は非常に幅広く、前のセクションのタスクに加えて、会話エージェント、機械翻訳、論理的および数学的推論、コード分析と生成、そして基本的にテキスト生成が含まれます。最大かつ「最もスマートな」モデルは通常、デコーダ アーキテクチャに基づいています。このようなモデルは、多くの場合、微調整を行わなくても、少数ショット モードやゼロショット モードで良好なパフォーマンスを発揮します。
デコーダーは、因果的 LM (左側のコンテキストに基づいて次のトークンを予測する) のタスクでトレーニングされます。アーキテクチャの観点からは、いくつかの小さな変更があります。各デコーダ ブロックからクロスアテンション レイヤーを削除し、LayerNorm
を使用します。使用されるトークナイザーはバイトレベルの BPE (50K 語彙) であり、("dog"、"dog!"、"dog.") などの類似の部分文字列は使用されません。シーケンスの最大長は 1024 です。レイヤー出力は、以前に生成されたすべてのタグをキャッシュします。
MLM に関する完全な事前トレーニング (トークンの 15% がマスクされる)、コードによってマスクされるスパン (
トークンの削除
6 および mT5 Google / 2020
は T5 モデルに基づいており、同様のトレーニングを受けていますが、多言語を使用していますデータ。 ReLU アクティベーションは GeGLU に置き換えられ、語彙は 250K トークンに拡張されました。 7、GLAM Google / 2021このモデルは概念的には Switch Transformer に似ていますが、微調整よりも少数サンプル モードでの作業に重点を置いています。さまざまなサイズのモデルは、32 ~ 256 のエキスパート レイヤー (K=2) を使用します。 Transformer-XL の相対位置エンコーディングを使用します。トークンの処理時にアクティブになるネットワーク パラメーターは 10% 未満です。 8、LaMDA Google / 2021gpt に似たモデル。このモデルは、因果的 LM で事前トレーニングされ、生成タスクと識別タスクで微調整された会話モデルです。モデルは外部システム (検索、翻訳) を呼び出すこともできます。 9、GPT-NeoX-20B EleutherAI / 2022このモデルは GPT-J に似ており、回転位置エンコーディングも使用します。モデルの重みは float16 で表されます。シーケンスの最大長は 2048 です。 10. BLOOM BigScience / 2022 これは、46 の言語と 13 のプログラミング言語で構成される最大のオープンソース モデルです。モデルをトレーニングするには、ROOTS と呼ばれる大規模な集約データセットが使用されます。これには、約 500 のオープン データセットが含まれます。 11、PaLM Google / 2022これは大規模な多言語デコーダー モデルであり、Adafactor を使用してトレーニングされ、事前トレーニング中にドロップアウトを無効にし、微調整中に 0.1 を使用します。 12、LLaMA Meta / 2023科学研究に使用されるオープンソースの大規模な gpt のような LM であり、複数の命令モデルのトレーニングに使用されています。このモデルは、pre-LayerNorm、SwiGLU アクティベーション、および RoPE 位置埋め込みを使用します。オープンソースであるため、これはコーナー追い越し用の主要モデルの 1 つです。 テキストのガイダンス モデルこれらのモデル キャプチャは、モデル出力 (RLHF など) を調整して、対話およびタスク解決時の応答品質を向上させるために使用されます。 1、InstructGPT OpenAI / 2022この作品は、効率的に命令に従うように GPT-3 を適応させます。このモデルは、一連の基準に基づいて人間が良いと考えるヒントと回答で構成されるデータセットに基づいて微調整されます。 InstructGPT に基づいて、OpenAI は現在 ChatGPT として知られるモデルを作成しました。 2. Flan-T5 Google / 2022T5 に適したガイダンス モデル。一部のタスクでは、この微調整を行わなくても、Flan-T5 11B が PaLM 62B を上回りました。これらのモデルはオープンソースとしてリリースされています。 3、Sparrow DeepMind / 2022基本モデルは、レイヤーの最初の 80% がフリーズされた状態で、選択された高品質の会話でチンチラを微調整することによって取得されます。その後、モデルは、会話を通じてモデルをガイドする大きなプロンプトを使用してさらにトレーニングされました。いくつかの報酬モデルもチンチラの上で訓練されています。このモデルは検索エンジンにアクセスし、応答となる最大 500 文字のスニペットを取得できます。 推論プロセス中に、報酬モデルを使用して候補をランク付けします。候補はモデルによって生成されるか、検索から取得され、最適なものが応答となります。LLaMA の上記の指導モデル。主な焦点は、GPT-3 を使用してデータセットを構築するプロセスにあります。
合計 52,000 個の一意のトリプルが生成され、LLaMA 7B 用に微調整されました。
これは、命令データに関する LLaMA の微調整ですが、上記の Alpaca とは異なり、GPT などの大規模なモデルによってのみ生成されるわけではありません。 3 データを微調整します。データセットの構成は次のとおりです:
GPT-3 と比較して品質の向上はありません。しかしブラインドテストでは、ユーザーはアルパカの回答よりもコアラの回答を好んだ。
テキストの説明に基づいた画像ジェネレーター。変換器と組み合わせた拡散モデルがこの分野を支配しており、画像生成だけでなくコンテンツ操作や解像度向上も可能にします。
この作業は 2 つの段階で実行されます。画像のラベル付けに関するトレーニングと、テキストと画像の共同生成モデルの学習です。
最初のステージでは、dVAE がトレーニングされ、画像が 256x256x3 空間から 32x32xdim に変換され、またその逆に変換されます。dim は隠れた表現ベクトルの次元です。このようなマーカー ベクトルは合計 8,192 個あり、モデル内でさらに使用されます。
使用される主なモデルは、スパース トランスフォーマー デコーダです。テキスト トークンと画像トークンを入力として受け取り、モデルは同時分布 (Causal LM) を学習し、その後、テキストに基づいて画像トークンを生成できます。 dVAE は、これらと同じトークンに基づいてイメージを生成します。テキストタグの重量減少は 1/8、イメージタグの重量減少は 7/8 です。
テキスト タグの場合は、通常の埋め込みと位置による埋め込みがあり、イメージ タグの場合は、通常、列位置および行位置の埋め込みがあります。テキスト トークン シーケンスの最大長は 256 で、トークン化は BPE (16K 語彙) です。
ピクセル レベルで動作し、テキストによって制御される拡散モデル (DM)。これは、畳み込み、アテンション、および残差接続を備えた U-Net アーキテクチャに基づいています。さまざまな方法を使用して生成を制御します。 CLIP
ピクセル空間で動作する拡散モデル、主に次のものが含まれます2 つのモデル:
オートエンコーダーはガンでトレーニングされます。同様に、結果に弁別器を使用し、追加の正則化を適用して標準正規分布への近さを表します。
結果は潜在空間での DM デコードに入ります。条件がベクトルの場合、ステップの入力で潜在ベクトルと連結されます。ベクトルのシーケンスの場合、それは次の目的で使用されます。異なる U-Net レイヤーのクロスアテンション。テキスト ヒントには CLIP ベクトルを使用します。
この一般的なモデルは、テキストから画像への変換、カラー化、ペイント、超解像度など、さまざまなタスクに合わせてトレーニングできます。
Imagen の背後にある主なアイデアは、テキスト エンコーダーのサイズを大きくすると、DM のサイズを大きくするよりも生成モデルにより多くのメリットをもたらすことができるということです。そこでCLIPをT5-XXLに置き換えました。
このセクションのモデルは、さまざまな性質のデータを分析しながらテキストを生成できるため、マルチモーダル モデルと呼ばれることがよくあります。生成されるテキストは、自然言語またはロボット用のコマンドなどの一連のコマンドです。
別個の画像エンコーダー (ViT または CNN) 共有デコーダー。前半はテキストを処理し、後半は画像エンコーダーの出力と共通です。テキストを処理します。
288x288 の画像は 18x18 ブロックに分割され、エンコーダーはこれらすべてのベクトルの共有アテンション プールに基づいてそれをベクトルに変換します。
デコーダーの前半の出力は、テキスト ベクトルとシーケンスの最後にある CLS トークン ベクトルであり、sentencepece (64K 語彙) を使用してトークン化されます。テキストと画像のベクトルは、クロスアテンションを介してデコーダの後半でマージされます。
2 つの損失の重みは次のとおりです。
微調整プロセス中、画像エンコーダをフリーズし、アテンション プールのみを微調整できます。
画像は ViT によってエンコードされ、出力ベクトルおよびテキスト トークンとコマンドが PaLM に供給され、PaLM が出力テキストを生成します。
PaLM-E は、VQA、物体検出、ロボット操作などのすべてのタスクに使用されます。
これは、詳細がほとんど知られていない非公開モデルです。おそらく、スパースアテンションとマルチモーダル入力を備えたデコーダを備えていると思われます。自己回帰トレーニングと 8K ~ 32K のシーケンス長の RLHF 微調整を使用します。
人間の試験ではサンプルがゼロ、またはサンプルが少ない状態でテストされており、人間と同等のレベルに達しています。画像ベースの問題 (数学的問題を含む) を即座に段階的に解決し、画像を理解して解釈し、コードを分析して生成できます。少数言語を含むさまざまな言語にも適しています。
以下は簡単な結論です。これらは不完全であるか、単に間違っている可能性があり、参考のためにのみ提供されています。
自動グラフィックス カードがマイニングできなくなってから、さまざまな大規模モデルが殺到し、モデルの裾野は拡大してきましたが、単純なレイヤーの増加とデータ セットの増大により、さまざまなモデルが置き換えられてきました。これらのテクノロジーにより、品質の向上が可能になります (外部データとツールの使用、ネットワーク構造の改善、新しい微調整技術)。しかし、一連の研究は、トレーニング データの量よりも質が重要であることを示しています。データ セットを正しく選択して形成することで、トレーニング時間を短縮し、結果の品質を向上させることができます。
OpenAI は現在、クローズド ソースに移行しており、GPT-2 の重みを解放しようとしましたが、成功しませんでした。しかし GPT4 はブラックボックスです. オープンソース モデルの微調整コストと推論速度を改善し最適化するここ数カ月の傾向により, 製品としての大規模なプライベート モデルの価値は大幅に低下しています. オープンソース モデルも急速に追い付いています品質的には巨人であり、コーナーでの追い越しが可能になります。
オープン ソース モデルの最終的な概要は次のとおりです。
上記は参考用です。
以上がトランスフォーマー レビュー: BERT から GPT4 への詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。