【NLPの古典論文を集中的に読む】言語モデルは教師なしマルチタスク学習者

序文

特に私にとって感銘を受けた記事です GPT-2 の性能は満足のいくものではありませんが、その背後にある考え方は学び学ぶ価値があります GPT-2 がなければ、今日の大型モデルの時代はなかったかもしれません降臨。


論文: https://insightcivic.s3.us-east-1.amazonaws.com/ language
-models.pdf コード: https://github.com/openai/gpt-2

概要

一般的な自然言語理解タスクでは、特定のタスクの下で教師あり学習が必要ですが、この論文では、百万レベルの WebText データセットの下では、モデルが明示的な教師なしでタスクを学習できることを証明しました。言語モデルのサイズはゼロショットにとって非常に重要であり、それを増やすと対数線形的にパフォーマンスを向上させることができます。さらに、著者らは自然言語のデモンストレーションからタスクを学習できることを発見しました。

1. はじめに

現在の機械学習システムはデータの分散とタスクの仕様に敏感であり、一般的な機能を備えていません。著者らは、監視データなしで特定のタスクに直接適用できる一般的なシステムを構築したいと考えています。著者は、現在の機械学習システムの一般化能力が低い理由は、単一タスクの教師ありトレーニングのみを実行するためであると考えており、モデルのパフォーマンスを向上させるための有望なフレームワークであるマルチタスク トレーニングに注目します。現在の言語モデルに最適なシステムは、事前トレーニングと微調整パラダイムを組み合わせていますが、特定のタスクには依然として教師ありトレーニングが必要です。したがって、このペーパーでは、これら 2 つの作業を組み合わせて、ゼロショット設定で言語モデルを実証します。高度な結果が得られます。

2.アプローチ

このメソッドの中核は言語モデリングであり、通常、一連の例( x 1 、 x 2 、...、 xn ) (x_1、x_2、...、x_n)として構築されます。( ×1バツ2... バツ)、各例は可変長トークン シーケンス( s 1 , s 2 , ... , sn ) (s_1,s_2,...,s_n)( s1s2... s)、言語には自然な順序があるため、トークンの結合確率は通常、条件付き確率の積に分解されます:
p ( x ) = ∏ i = 1 np ( sn ∣ s 1 , . . . , sn − 1 ) p (x)=\prod_{i=1}^{n} p(s_n|s_1,...,s_{n-1})p ( x )=i = 1p ( ss1... sn 1)
汎用システムは複数の異なるタスクを実行できるため、同じ入力に対してタスクの条件を追加する必要もあります。教師あり学習は教師なし学習と同じ目的を持っているため、教師なし学習の目的は教師あり学習の目的のグローバルミニマムでもあります。教師なし学習の問題は、タスクの目的を最適化することで収束できるかどうかであり、十分に大きな言語モデルがこの設定でマルチタスク学習を実行できることが実験によって証明されていますが、学習速度は教師あり学習よりもはるかに遅いです。

2.1 トレーニング データセット

これまでの研究では単一ドメインのデータセットでトレーニングされていましたが、私たちのアプローチでは、できるだけ多くのドメインとコンテキストでタスクの自然言語デモンストレーションを収集するために、できるだけ大きくて多様なデータセットの構築を奨励しています。
有望なアプローチはネットワーク キャプチャです。これは規模が大きいものの、テキストの品質が低くなります。この目的を達成するために、この論文は、人間によってフィルタリングされた Web ページのみをクロールする新しい Web クローリング方法を設計し、4,500 万のリンクを含むデータセット WebText を取得します。クリーニング後、それには 800 万以上のドキュメントが含まれており、テキストの合計は 40 GB になります。 。データ侵害を防ぐために、Wikipedia に掲載されていたテキストは削除されました。

2.2 入力表現

一般的な言語モデルは、すべての文字の確率を出力できます。現在の言語モデルでは、大文字の使用、単語の分割、語彙外の単語などのデータの前処理が必要です。Unicode 文字列を UTF-8 バイト シーケンスに変換すると、あらゆるモデリング要件を満たすことができますが、大規模なデータセットでは文字レベルの LM を単語レベルの LM と比較することはできません。
バイト ペア エンコーディング (BPE) は、文字レベルの言語モデリングと単語レベルの言語モデリングの間の妥協点です。頻度の高い記号シーケンスには単語レベルの入力を、頻度の低い記号シーケンスには文字レベルの入力を効率的に挿入できます。Unicodeに基づいて実装されており、基本語彙の数は13万語に達しています。
ただし、BPE を文字シーケンスに直接適用することは理想的ではなく、語彙スロットとモデル サイズの間に不一致が発生します。この状況を回避するために、著者は、BPE が文字シーケンスをより適切に処理できるようにして、言語モデルのパフォーマンスを向上させるために、文字カテゴリ間のマージを防ぐ戦略を提案します。この入力表現は、単語レベルの LM (強力な表現能力) の経験的な利点と文字レベルの一般性を組み合わせており、データを前処理することなく、任意のデータセットで言語モデルを評価できるようになります。

2.3 モデル

モデルは部分的に Transformer に基づいており、アクティブ化前の残差ネットワークと同様に、層の正規化が各サブブロックの入力 (出力の前) に移動されます。さらに、最後のセルフアテンション ブロックの後に正規化の追加レイヤーが追加されます。初期化時に残差層の重みを1 / N 1/\sqrt{N}にスケールします1/N 、語彙は50257に拡大しました。

3. 実験

画像.png
著者は上記の 4 つの設定のモデルの下で実験を行い、最初の 2 つのパラメータをそれぞれ GPT および BERT と比較しました。

3.1 言語モデリング

ゼロショット学習への最初のステップとして、著者らは、モデルが事前トレーニングされた言語モデリングでゼロショット機能をどのように学習するかを理解したいと考えています。多くのデータセットは分布外でテストする必要があり、モデルは句読点、インデント、さらには目に見えない単語など、高度に正規化されたテキストを予測する必要があります。
画像.png
結果は上の表に示されており、著者の方法を使用することにより、複雑さは 2.5 ~ 5 改善され、BPE の使用により言語モデルのパフォーマンスが効果的に向上できることがわかりました。
WebText LM はドメインやデータセット間で適切に転送し、ゼロショット設定で 8 つのデータセットのうち 7 つのデータセットで最先端の性能を向上させます。その中で、長距離テキストの依存関係を持つ LAMBADA データセットでは大幅な改善が達成されていますが、1BW ではパフォーマンスが低下しています。考えられる理由は、このデータセットがすべての長距離テキスト構造を削除しているためです。

3.2 児童書のテスト

CBT データセットは、固有表現、名詞、動詞、前置詞など、さまざまなカテゴリの単語に対する LM のパフォーマンスを調べるように設計されています。CBT は、cloze をテスト目標として使用して、cloze の精度をテストします。GPT-2 は、一般名詞で 93.3%、NER で 89.1% の結果を達成し、どちらも SOTA よりも高かった。

3.3 ランバダ

長距離依存関係に対処するモデルの能力をテストするために、著者は LAMBADA で実験を実施し、パープレキシティを 99.8 から 8.6 に増加させ、精度を 19% から 52.66% に増加させました。分析エラーは、ほとんどの予測が有効であることを示しています追加の制約がないことを示す、追加のストップ ワードを追加した後、正解率はさらに 63.24% に向上しました。

3.4 Winograd スキーマ チャレンジ

Winograd スキーマ チャレンジは、テキスト内の曖昧さを解決するシステムの能力を測定することによって、常識的な推論を実行するシステムの能力を測定することを目的としています。
画像.png
結果は上の図に示されており、GPT-2 は最先端の精度を 7% 向上させました。

3.5 読解力

7 つの異なるドメインの文書に対する CoQA。文書に関する質問者と質問者の対話が含まれます。このデータセットは、モデルの読解力と歴史的な対話に依存する能力をテストします。質問と回答のペアを欠いた GPT-2 ベースの実験では F1 スコア 55 が達成されましたが、BERT ベースの教師ありシステムでは人間に近い F1 スコア 89 が達成されました。GPT-2 のゼロショット効果は驚くべきものですが、答えには単純なヒューリスティックが使用されることがよくあります。

3.6 要約

画像.png
GPT-2 に要約タスクを実行させるには、記事の後に「TL;DR」というテキストを追加し、Top-k のランダム サンプリングを使用して 100 個の単語タグを生成して繰り返しを減らし、著者は、によって生成された最初の 3 つの文を使用します。この100の言葉を要約します。上表は実験による比較結果であり、GPT-2 の性能は高くないものの、特別なプロンプトを追加することでモデルの性能が 1 倍向上していることがわかります。 6.4。言語モデルが自然言語を渡してタスク固有の動作を呼び出せることを示しています。

3.7 翻訳

GPT-2 は、翻訳タスクではパフォーマンスを下回りましたが、英語以外のコンテンツを除外した事前トレーニングを行った場合でも、2017 年のベースラインを上回っていました。

3.8 質問への回答

画像.png
著者は、SQUAD などの読解データセットを評価し、モデルのサイズが大きくなるにつれて GPT-2 のパフォーマンスが大幅に向上していることを発見しました。ただし、まだギャップはあります。これは、モデルの能力がはるかに優れていることを示しています。このようなタスクでは最大の神経システムが発生し、パフォーマンス低下の主な要因となります。上の表は生成された結果の一部です。

4. 一般化と暗記

最新の調査によると、多くのデータセットではトレーニング内容やテスト内容の一部が繰り返され、それが知識漏洩につながることがわかっています。WebText にも同様の現象が発生する可能性があるため、トレーニング セットに含まれるテスト データ セットの数を分析することも非常に重要です。
この問題を調査するために、著者らは 8 グラムの WebText トレーニング セット トークンを含むブルーム フィルターを作成しました。これらのブルーム フィルターを使用すると、作成者は、データセットが与えられた場合に WebText に出現する確率を計算できます。一般的なデータセットは WebText と 1 ~ 6% 重複していることがわかり
画像.png
ますが、驚くべきことに、多くのデータセットが独自のトレーニング セットと重複しており、さらに驚くべきことに、平均 5.9% に達しています。また、著者は、いくつかの特定のデータ セットの分析を通じて、WebText と一部のデータ セットの間の重複が結果にわずかに役立つものの、ほとんどのデータ セットでは、トレーニング セットとテスト セットの重複率の方が高いという結論に達しました。
類似性の高いテキストがパフォーマンスに与える影響を理解し、定量化することは、重要な研究課題です。以下の図は、WebText トレーニング セットとテスト セットのパフォーマンスを示しています。
画像.png

どちらも同様のパフォーマンスを示し、モデルのサイズが大きくなるにつれて増加します。これは、GPT-2 が WebText データセットにまだ改善の余地があることを示しています。つまり、モデル サイズを増やすか、他の最適化戦略を採用することで、モデルのパフォーマンスがさらに向上する可能性があります。

5. 関連作品

少し。

6. ディスカッション

教師あり学習と教師なし学習のパラダイムを学習し、理解するために多くの研究が行われてきました。私たちの結果は、教師なし学習が有望な研究分野であることを示唆しており、この発見は、下流タスクに適用された事前トレーニング済み言語モデルの結果を説明するのに役立ちます。GPT-2 のゼロ サンプル レベルは使用可能なレベルには程遠いですが、モデルをさらに増やすと、一般的なベースラインよりもある程度良くなることが著者は発見しました。今後の著者は、微調整の上限をさらに調査する予定です。

概要を読む

BERT の傲慢さを払拭する OpenAI の主な武器としての GPT-2 は、実験結果からは明らかに十分ではありませんが、過去と未来をつなぐものとして、GPT-2 は GPT ファミリーの不可欠な部分です。私の考えでは、GPT がなければ BERT も存在せず、GPT-2 がなければ大型モデルの時代の栄光もありません。本質的に、GPT-2 は GPT の単純な継続です。BERT が事前トレーニングに大規模なデータ セットを使用することを認識したため、さらに大規模なデータ セットも使用しました。BERT モデルが非常に大きいことを見て、単にそれ自体を次のように変更しました。これは大変なことですが、おそらく運と強さの二重の恩恵により、GPT-2 チームは次のような発見をしました。

  1. 促す。GPT-3 からプロンプトを開始するべきだったのではないかと疑問に思う人もいるでしょうが、実際には GPT-2 でもプロンプトが使用されていました。OpenAI チームは明らかに、単一トラックで BERT と競合することを望んでいません (その必要はなく、パフォーマンスが他よりもそれほど優れているわけではありません)。そのため、ゼロサンプル シーンに直接焦点を移していますが、不足している点があります。ゼロサンプルシーンでの微調整ステップの例です。さまざまな問題に直面すると、特別なトークンは使用できません。そのため、作成者は自然言語を使用して問題を表現し、未確認の特別なトークンを削除します。この形式は理解できます。本質的にはプロンプトであり、まさにこのためです。予期せぬ発見により、OpenAI チームはこれに基づいてさらに深く調査を続けることになりました。
  2. パフォーマンスと事前トレーニングのデータセット。また、著者は実験を通じて、モデルのサイズが大きくなっても、データ セット、トレーニング セット、およびテスト セットの事前トレーニングを同期的に改善できることを発見しました。これは、WebText データ セットがさらなるマイニングの可能性があることを示しています。つまり、モデル サイズが大きくなり、対応するスケールのデータ セットと一致するほど、モデルのパフォーマンスは着実に向上します。

この記事は論文執筆者にとってもインスピレーションを与えてくれます。

  1. 問題を別の角度から考える方法を学びましょう。同じコースのモデルに直面して、同じ設定では自分のモデルに利点がないことがわかりました。そのため、より一般的な観点からその汎用性を議論する方法を見つけることができ、レイアウトを大きくする必要があります。
  2. たとえ実験結果の一部が良くなかったとしても、その理由を慎重に分析する必要があり、モデルの欠陥や潜在的な利点を発見して、今後の研究の基礎を築くことができるかもしれません。
  3. 以前の研究に基づいて大騒ぎし、モデル アーキテクチャが大きく変わっていない場合は、いくつかの詳細について大騒ぎする方法を見つける必要があります。たとえば、記事ではデータ セットの構造、構造、構造などを詳細に分析しています。語彙の分析、データセットの類似性分析、ソリューションなど、作業が単調ではなくなります。

おすすめ

転載: blog.csdn.net/HERODING23/article/details/131989641