カテゴリ:「自然言語処理の入門から応用まで」総合カタログ
関連記事:事前学習モデルの
概要:マクロな視点から事前学習モデルを理解する 事前学習モデルの概要:単語埋め込みの2つのパラダイム 事前学習の概要モデル: 2 つのタスク タイプ事前トレーニング モデルの概要: 事前トレーニング モデルの拡張 事前トレーニング モデルの概要:転移学習と微調整事前トレーニング モデルの概要: 事前トレーニング モデルに存在する問題
大量のラベルなしデータからの事前トレーニングにより、多くの自然言語処理タスクのパフォーマンスが大幅に向上しました。一般に、事前トレーニングされたモデルには次のような利点があります。
- ラベルのない巨大なデータを事前トレーニングすると、より一般的な言語表現が得られ、下流のタスクに利益をもたらすことができます
- モデルにより良い初期化パラメーターを提供し、ターゲット タスクの汎化パフォーマンスを向上させ、収束を加速します。
- これは、小さなデータ セットでの過学習を回避するための効果的な正則化方法ですが、ランダムに初期化されたディープ モデルは、小さなデータ セットで過学習になる傾向があります。
以下の図は、単語埋め込み(Word Embedding)手法に応じて、静的単語埋め込み(Static Word Embedding)と動的単語埋め込み(Dynamic Word Embedding)に分けられるさまざまな事前学習モデルのマインドマップです。展開能力などの分類方法に応じて分類して表示:
マインドマップ編集可能ソースファイルダウンロードアドレス: https: //download.csdn.net/download/hy592070616/87954682
事前学習モデルの開発は、浅い単語埋め込みから深いコーディングまで 2 つの段階を経ました。これら 2 つの主な開発段階によれば、事前学習モデルのコーディングの 2 つのパラダイムは、静的単語埋め込み (Static Word Embedding) と、動的 Word ベクトル (動的 Word 埋め込み)。
静的な単語の埋め込み
静的単語埋め込み (Static Word Embedding) は、浅い単語埋め込みです。このタイプの事前学習モデル パラダイムは、通常「単語ベクトル」と呼ばれるものです。その主な特徴は、コンテキストに依存しない静的単語埋め込みを学習することです。その主な代表的なニューラル ネットワーク言語モデル(NNLM)(「エントリからアプリケーションまでの自然言語処理 - 静的ワードベクトル事前学習モデル:ニューラルネットワーク言語モデル(ニューラルネットワーク言語モデル) 」参照)、word2vec(「ディープラーニングを深く理解する - 」参照)Word Embedding: word2vec ")、これには CBOW (「ディープラーニングの詳細な理解 - Word Embedding: Continuous Bag-of-Words Model (CBOW、The Continuous Bag-of-Words Model)」を参照) と Skip-Gram が含まれます。(「ディープラーニングの深い理解 - 単語埋め込み: Skip-Gram モデル」参照) と Glove (「エントリからアプリケーションまでの自然言語処理 - グローバルベクトルの単語埋め込み: GloVe (Global Vectors for Word Representation) Word Vector 」参照) )など。このタイプの単語埋め込みは通常、浅いネットワークでトレーニングされ、下流のタスクに適用する場合でも、モデル全体の残りの部分を最初から学習する必要があります。したがって、このパラダイムの事前トレーニング モデルのトレーニングに深いニューラル ネットワークを使用する必要はありません。また、浅いネットワークを採用してトレーニングを高速化すると、優れた単語埋め込みを生成することもできます。
同時に、静的単語ベクトルには明らかな欠陥もあります。
- 静的単語ベクトルはコンテキストに依存しません。各単語の埋め込みベクトルは常に同じであるため、多義性の問題を解決できません。
- Out-Of-Vocabulary (OOV) 問題が発生しやすいため、この問題を解決するために、関連文献では CharCNN、FastText、Byte-Pair Encoding などの文字レベル表現またはサブワード表現が提案されています。
単語の埋め込み方法 | トレーニングターゲット | コーパスの使用法 | 特徴 |
---|---|---|---|
NNLM | 言語モデル | 部分コーパス | 言語モデルのトレーニングに基づいた単語の埋め込みは、ニューラル ネットワーク言語モデルの単なる産物です。 |
word2vec | 非言語モデル (ウィンドウコンテキスト) | 部分コーパス | トレーニングを高速化するためにニューラル ネットワーク言語モデルの隠れ層を破棄し、操作の最適化のために階層化された Softaax とネガティブ サンプリングを使用します。 |
グローブ | 非言語モデル(単語共起行列) | グローバルコーパス | グローバル コーパスに基づいて単語共起行列を構築し、行列分解を実行して取得します。 |
このうち、Glove は目的関数と重み関数を置き換えるグローバル word2vec とみなすこともできます。
動的な単語の埋め込み
動的単語ベクトルは、事前トレーニングされたモデルのエンコーダーを通じてコンテキスト関連の単語ベクトルを出力でき、多義性の問題を解決できます。このタイプの事前トレーニングされたエンコーダーによって出力されるベクトルは、文脈化された単語の埋め込み (Contextualized Word Embedding) とも呼ばれます。
エンコーダ | 関連する事前トレーニング済みモデル | 計算 | 特徴 |
---|---|---|---|
LSTM | エルモ | ループ+シリアル | シーケンス(位置)情報の処理には当然適していますが、長距離の依存関係にはまだ対応できません(BPTT による勾配消失などの問題のため) |
変成器 | GPT、バート | フィードフォワード + パラレル | 長期的な位置依存性を解決できます。セルフアテンションは、重みが動的に調整された完全に接続されたネットワークとみなすことができます。 |
トランス-XL | XLネット | ループ+シリアル | Transformer に基づくサイクル機構と相対位置エンコーディングを導入し、長距離モデリング能力を強化 |
事前トレーニング エンコーダには通常、LSTM と Transformer (Transformer-XL) が使用されます。このうち、Transformer は、アテンション マスク方式に応じて、Transformer-Encoder と Transformer-Decoder に分けられます。また、Transformer はグラフ ニューラル ネットワーク (GNN) とみなすこともできます。
参考文献:
[1] QIU XIPENG、SUN TIANXIANG、XU YIGE、他、自然言語処理の事前トレーニング済みモデル: 調査[J]、中国科学: 技術科学 (英語)、2020。