GPT開発の歴史
この質問に答える前に、まず ChatGPT の開発の歴史を理解する必要があります。
- GPT-1 は教師なし事前トレーニング + 教師あり微調整を使用します。
- GPT-2 は純粋な教師なし事前トレーニングを使用します。
- GPT-3 は GPT-2 の純粋な教師なし事前トレーニングを踏襲していますが、データは数桁大きくなります。
- InstructGPT は強化学習を使用して GPT-3 を微調整します. カーネル モデルは PPO-ptx です. 以下の論文で詳細に分析します.
- ChatGPT は InstructGPT に続きますが、データは数桁大きくなります。
ELMO は Bi-LSTM を使用、GPT はトランスフォーマーのデコーダーを使用、BERT はトランスフォーマーのエンコーダーを使用;
ELMO: 双方向、GPT: 一方向、BERT: 双方向;
ELMO: 多義性の解決、GPT: さらなる機能、BERT: 双方向/マルチタスクトレーニング/より長距離の依存関係をキャプチャ可能、
GPT: テキスト生成などのタスク (NLG タスク) に適し、BERT: 予測タスク (NLU タスク) に適しています。
GPT-1の問題
- 微調整は特定のタスクでのみ使用できます。微調整が分類タスクの場合、文の類似性では使用できません。1 つのモデルを使用してすべての NLP タスクを実行できるか、また可能な限りすべてのタスクを追加できるか。
- 目標: あらゆる NLP タスクを解決するための言語モデル。これは、後続の GPT2 および GPT3 の改良版です。
GPT-1 の問題に対応して、GPT-2 では次の改良が加えられています。
-
微調整レイヤーは削除されます。さまざまなタスクに合わせてモデリングを微調整する代わりに、モデルが実行すべきタスクは定義されず、モデルはどのタスクを実行する必要があるかを自動的に識別します。
主打zero-shot
以下のような機械翻訳されたサンプルは文に変換され、QA の質問と回答のペアも文に変換されますが、GPT2 は言語モデルの損失のみを最適化します。
-
第 2 に、事前トレーニング段階で、GPT-2 はマルチタスク アプローチを採用しています。1 つのタスクだけでなく、複数のタスクでも学習します。各タスクは、その損失関数が収束できることを保証する必要があります。異なるタスクはメイン トランスフォーマーを共有します。パラメーターの点では、このソリューションは以前の Microsoft MT-DNN に基づいており、モデルの汎化能力をさらに向上させることができるため、微調整しなくても非常に優れたパフォーマンスを維持できます。
-
モデルのサイズとパラメータの量に関して、GPT には 1 億 1,700 万個のパラメータがありますが、GPT2 では Transformer のスタック層数が 48 に増加し、隠れ層の次元は 1600 で、パラメータ量は 15 億に達します (最大の GPT-2)モデル)、Bert パラメータの数はわずか 3 億です。
-
モデル構造の点では、GPT2 の構造は GPT に似ており、一部のローカル変更のみを除いて、一方向の Transformer モデルを引き続き使用しています。
- 正規化レイヤーをブロックの入力位置に移動します。
- 正規化の層が最後のセルフアテンション ブロックの後に追加されます
- 同時に、残差層が初期化されるときに、1 / N 1/\sqrt{N}が乗算されます。1/Nここで、N は残りの層の数です。
GPT2 と GPT3:
- GPT-3の構造はGPT-2と同じですが、データはGPT-2の約1000倍、モデルパラメータはGPT-2の約100倍となっており、その暴力性はまさに奇跡です。驚くべき効果。
- GPT-3 は究極のゼロショット学習を追求しなくなりました。つまり、学習するサンプルを提供せず、少数のサンプルを使用して学習します。
主打few-shot
- GPT-3 のサイズが非常に大きいため、ダウンストリーム タスクの微調整のコストは非常に高くなります。したがって、GPT-3 を下流のサブタスクに適用すると、
不进行任何的梯度更新或fine-tune。
欠点:
- 効果は GPT-2 よりもはるかに優れていますが、テキスト生成はまだ比較的弱いです。
GPT-3 に非常に長いテキストを生成させると、構造とアルゴリズムの制限により、数段落後にテキストが繰り返される可能性があります。GPT-3 は言語モデルであり、bert のように両方向に目を向けることはできません。 - 次の単語を均一に予測します。どの単語が重要でどの単語がそうでないかを判断することは不可能であるため、言語モデルは人間の学習とは異なり、一部の共通機能単語を学習するのに長い時間がかかる可能性があります。
- サンプルの妥当性は十分ではありません。基本的にはネットワーク全体の記事がダウンロードされます。
少数ショットを行う場合、モデルは本当に与えられたサンプルに基づいて最初から学習されますか? このようにして、訓練サンプルに現れないタスクも一般化することができます。または、これらのサンプルに基づいて、訓練メモリから関連するタスクを見つけ出し、このタスクを認識する場合は、訓練データのサイズとの戦いになります。
デコードのみのアーキテクチャを使用する理由は何ですか?
- トレーニングの効率化とエンジニアリングの実現
- エンコーダーの双方向アテンションには低ランクの問題があります
- パラメータ数の半分(推論コスト)
- デコーダのみの強力なゼロショット性能
入力部分の注意を双方向に変更しても利点は得られず、エンコーダ デコーダ アーキテクチャの利点はパラメータが 2 倍になることによるものと考えられます。
GPT1
- 完全な Transformer モデルにはエンコーダとデコーダが含まれています。
- さらに
GPT只使用了decoder部分
、元の Transformer デコーダと比較してエンコーダが少ないため、エンコーダ デコーダ アテンション レイヤは不要になりました。
- ダウンストリーム タスクによると、入力変換には主に 4 つの状況があります。
GPT2
GPT-2 では語彙数が 50257 に増加し、最大コンテキスト サイズ (コンテキスト サイズ) が GPT の 512 トークンから 1024 トークンに増加し、バッチサイズが 512 に増加しました。
トレーニング タスクに関しては、GPT2 は微調整タスクを「削除」し、言語モデルのトレーニングのみを保持します。単に微調整を削除するのではなく、それぞれの特性に応じて多くの下流タスクを言語モデルのトレーニングに計画します。このようにして、言語モデルのトレーニングでは、実際にはより多くの NLP 微調整タスクがカバーされ、最終的な言語モデルがより多くの学習を行い、より多様なアプリケーションを実現できるようになります (多くのゼロショット タスクで優れたパフォーマンスを発揮します)。
GPT を指導する
要約すると、教師あり学習と強化学習を組み合わせたものです。
-
教師あり学習では、まず GPT-3 に一般的な微調整方向を持たせることができ、強化学習では AC (Actor-Critic) アーキテクチャの PPO (Proximal Policy Optimization) 更新メソッドを使用して GPT-3 のパラメーターを更新します。
-
PPO は OpenAI のベースライン手法であり、InstructGPT にとって PPO を使用するのはごく自然な選択であると言えます。
为了解决AI的毒性和不忠实性
InstructGPT のこの学習方法は、手動でデータにラベルを付ける際にこの部分の最適化に特に注意を払って提案されたもので、その結果、InstructGPT は GPT-3 に比べて忠実度が大幅に向上しました。
論文で述べられているように、微調整データでは多数のセキュリティ事例が考慮されており、DeepMind セキュリティ専門家グループも共同研究に招待されました。ただし、このトピックで言及されている人類破壊計画の場合はまだ比較的帰納的であり、攻撃を誘発する場合のモデルの能力はまだ不十分であり、これについては論文のセクション 5.3 および 5.4 でも説明されています。モデルがより多くの有効な知識を保存できるようになると、モデルの信頼性がますます重要になり、多くの研究が注目されることが予想されます。全体として、現在のモデルの毒性は依然として比較的高く、さらなる調査が必要です。
方法
私たちのモデルをより安全で、より有用で、より一貫性のあるものにするために、 と基于人类反馈的强化学习 (RLHF)
呼ばれる最先端の技術を使用します。お客様によって API に送信されたヒントのうち、[1] は、2021 年 1 月にデプロイされた InstructGPT モデルの初期バージョンについて、Playground 経由で送信されたヒントのみを使用します。当社のヒューマン・アノテーターは、トレーニング セットに追加する前に、すべてのキューから個人を特定できる情報を削除します。
私たちのラベルは、望ましいモデルの動作のデモンストレーションを提供し、モデルのいくつかの出力をランク付けします。次に、このデータを使用して GPT-3 を微調整します。
プロセスの簡単な説明:
まず、API に送信されたキューに関する人間が作成したデモのデータセットを収集し、これを使用して教師あり学習ベースラインをトレーニングします。次に、大規模な API ヒント セットに関する 2 つのモデル出力を人間がラベル付けして比較したデータセットを収集しました。次に、このデータセットで報酬モデル (RM) をトレーニングし、ラベラーがどの出力を好むかを予測します。最後に、この RM を報酬関数として使用し、PPO アルゴリズムを使用してこの報酬を最大化するように GPT-3 ポリシーを微調整します。
このプロセスについての 1 つの考え方は、GPT-3 がすでに備えているが、キュー エンジニアリングだけでは引き出すのが難しい機能を「解放する」というものです。
- これは、トレーニング手順ではモデルの事前トレーニングに比べて使用する計算量とデータが 2% 未満であるため、事前トレーニング中に学習した内容に比べてモデルに新しい機能を教える能力が限られているためです。
一般化された設定
私たちの手順は、モデルの動作を、モデルのトレーニングに使用されるデータを直接生成するラベラーと、書面による指示を通じてデータを生成し、特定の例について直接フィードバックし、非公式の対話によってガイダンスを提供する研究者。ラベラーへ。
- これはクライアントの好みにも左右され、API ポリシーに暗示されています。私たちは、敏感な合図を認識して反応する能力のスクリーニングテストで優れた成績を収めたラベラーを選択しました。ただし、データに対するこれらのさまざまな影響源は、私たちのモデルがより広範なグループの好みと一致していることを保証するものではありません。
これを調査するために 2 つの実験を実行しました。
- まず、トレーニング データを生成しなかった保留されたラベラーを使用して GPT-3 と InstructGPT を評価し、これらのラベラーがトレーニング ラベラーとほぼ同じ割合で InstructGPT モデルの出力を好むことがわかりました。
- 次に、ラベラーのサブセットからのデータに基づいて報酬モデルをトレーニングし、ラベラーのさまざまなサブセットの好みを予測する際に報酬モデルがよく一般化していることがわかりました。これは、私たちのモデルが訓練されたラベラーの好みに完全にオーバーフィットしていないことを示しています。ただし、より広範なユーザー グループや、望ましい動作について人間が同意しない入力に対してこれらのモデルがどのように機能するかを研究するには、さらなる研究が必要です。
制限事項
- 大きな進歩にもかかわらず、私たちの InstructGPT モデルは完全に統合されておらず、安全であるとは程遠く、依然として有害または偏った出力を生成し、事実を捏造し、明示的なプロンプトなしに性的および暴力的なコンテンツを生成しています。
- 現時点では、InstructGPT は英語の指示に従うようにトレーニングされているため、英語を話す人々の文化的価値観に偏っています。
RLHF
安全な AI システムを構築するための 1 つのステップは、人間が目的関数を記述する必要性をなくすことです。複雑な目的に単純なエージェントを使用したり、複雑な目的を少し間違えたりすると、望ましくない、または危険な動作につながる可能性があるためです。DeepMind のセキュリティ チームと協力して、提案された 2 つのアクションのうちどちらが優れているかを通知することで人間のニーズを推測できるアルゴリズムを開発しました。
- 人間によるフィードバックをほとんど使用せずに現代の RL 環境を解決する
フィードバックは環境の通常の報酬関数と一致している必要はないことに注意してください。
- たとえば、エンデューロで他の車を追い越してゲームスコアを最大化するのではなく、他の車と正確にバランスを取るようにエージェントをトレーニングできます。
- また、人間は環境の報酬をプログラムする人間よりも報酬をうまく形成するため、フィードバックからの学習が通常の報酬関数を使用した強化学習よりも効果的であることが時々わかります。
ステップ1:
ステップ2:
モデルの選択に関しては、RM は別の微調整された LM、または好みのデータに基づいて最初からトレーニングされた LM にすることができます。たとえば、Anthropic は、一般的な事前トレーニング後の微調整プロセスを置き換えるために優先モデル事前トレーニング (PMP) を使用する特別な事前トレーニング方法を提案しています。前者の方がサンプルデータの利用率が高いと考えられるため。しかし、どちらのRMが優れているかについてはまだ結論が出ていない。
トレーニング テキストに関しては、RM のヒントと生成のペアが事前定義されたデータセットからサンプリングされ、初期 LM を使用してこれらのヒントのテキストが生成されます。Anthropic のデータは主に Amazon Mechanical Turk のチャット ツールを介して生成され、ハブで利用できますが、OpenAI はユーザーが GPT API に送信したプロンプトを使用します。
トレーニング報酬の価値については、LM によって生成された回答を手動でランク付けする必要があります。最初は、RM がテキスト アノテーション スコアに基づいて直接トレーニングされるべきだと考えるかもしれませんが、これらのスコアは調整されておらず、アノテーターの値が異なるためノイズがいっぱいです。ランキングを使用すると、複数のモデルの出力を比較し、より優れた正規データセットを構築できます。
特定のランキング方法の場合、同じプロンプトを与えられた異なる LM の出力を比較し、Elo システムを使用して完全なランキングを構築するのが成功するアプローチです。これらのさまざまなランキング結果は、トレーニングのスカラー報酬値に正規化されます。
ステップ3:
まず、微調整タスクを RL 問題として定式化しましょう。
- まず、ポリシーはプロンプトを取得し、一連のテキスト (またはテキストの確率分布) を返す LM です。
- この戦略のアクション空間は、 LM の語彙に対応するすべてのトークン (通常は 50k 程度) です。
- 観測空間は、可能な入力トークンのシーケンスであり、これも比較的大きくなります (語彙 ^ 入力トークンの数)。
- 報酬関数は、選好モデルとポリシー シフト制約を組み合わせたものです。
模型関連
- 次に、3 つの異なる手法を使用してモデルをトレーニングします。
教師あり微調整 (SFT)
教師あり学習を使用して、ラベル付きデモンストレーションで GPT-3 を微調整します。コサイン学習率の減衰と残留ドロップアウト 0.2 で 16 エポックの間トレーニングします。検証セットの RM スコアに基づいて、最終的な SFT モデルを選択します。Wu et al. (2021) と同様に、SFT モデルは 1 エポック後の検証損失を過適合していることがわかりますが、この過適合にもかかわらず、より多くのエポックでのトレーニングが RM スコアと人間の好みの評価に役立つことがわかります。
報酬モデリング (RM)
最後のディエンベディング層が削除された SFT モデルから始めて、キューと応答を受信し、スカラー報酬を出力するようにモデルをトレーニングします。この論文では、多くの計算量を節約できるため、6B RM のみを使用します。175B RM トレーニングは不安定になる可能性があるため、RL 中の値関数としては適さないことがわかりました (詳細については、付録 C を参照)。
Stiennon et al. (2020) による研究では、RM 在同一输入的两个模型输出之间进行比较的数据集上进行训练。
比較をラベルとして扱うクロスエントロピー損失を使用しており、報酬の差は人間のラベル作成者が応答を好む対数オッズを表しています。
- 最後に、RM 損失は報酬の変化に対して不変であるため、RL の前にトークナイザーのデモの平均スコアが 0 になるように、バイアスを使用して報酬モデルを正規化します。
なぜこのような報酬モデルをトレーニングするのでしょうか? もちろん、人間が環境の役割を果たし、モデルが出力する各対話の品質(報酬)を測定することもできますが、それには多大な人件費がかかります。したがって、手動ラベル付けの手間を省くために、報酬モデルを適切にトレーニングすることをお勧めします。
強化学習 (RL)
再び Stiennon et al. (2020) に従って、PPO を使用して設定内の SFT モデルを微調整しました (Schulman et al., 2017)。この環境は、ランダムなクライアント プロンプトを表示し、プロンプトに対する応答を期待するバンディット環境です。プロンプトと応答が与えられると、報酬モデルによって決定された報酬が生成され、エピソードが終了します。 此外,我们在每个token上添加了 SFT 模型的每个token的 KL penalty,以减轻奖励模型的过度优化。
値関数はRMから初期化されます。これらのモデルを「PPO」と呼びます。
PPO モデルのパフォーマンスを SFT モデルおよび GPT-3 と比較します。また、命令追従モードに入るように「プロンプト」するための数ショット プレフィックスが与えられた場合 (GPT-3 プロンプト) の GPT-3 と比較しました。
また、InstructGPT を、FLAN (Wei et al., 2021) および T0 (Sanh et al., 2021) データセット上の微調整された 175B GPT-3 と比較します。どちらのデータセットにもさまざまな NLP タスクが含まれており、それぞれに自然言語命令が組み込まれています。タスク (データセットは、含まれる NLP データセットと使用される指示スタイルによって異なります)。約 100 万の例でそれぞれを微調整し、検証セットで最も高い報酬モデル スコアを達成するチェックポイントを選択します。トレーニングの詳細については、付録 C を参照してください。
PPO
神经网络来拟合策略参数
ppo について話す前に、戦略の品質を測定するために報酬関数を使用する PG アルゴリズム (ポリシー勾配) について説明する必要があります。強化学習では、取得した戦略パラメーターを更新するために使用します。
-
PG メソッドの大きな欠点は、パラメータを更新するたびに再サンプリングする必要があるため、パラメータの更新が遅いことです。これは実際にはポリシー上の戦略、つまり、トレーニングするエージェントとエージェントに応じた戦略です。環境と対話するエージェントは同じエージェントです。
-
これに対応するのがオフポリシー戦略です。つまり、トレーニングしたいエージェントと環境と対話するエージェントは同じエージェントではありません。
簡単に言えば、他人の経験を利用して自分を鍛えることです。チェスのプレイを例に挙げると、自分でチェスをプレイして継続的にチェスのスキルを向上させる場合、それはポリシーに準拠しており、他の人のチェスのプレイを見て自分自身を向上させる場合、それはポリシーに違反します。
- 割引率
- アドバンテージ関数
- 重要度サンプリング: データを収集するときに使用されるパラメーターはθ '' \theta'です私'、トレーニングはパラメータを更新することですθ \thetaθであるため、この 2 つの偏差を修正するには重要度サンプリングを導入する必要があります。これが重要度サンプリングを導入する理由です。
-
近接ポリシーの最適化 近接ポリシーの最適化 (PPO) に関する
記事
-
問題定義
-
PPO
-
キーポイント: ターゲットの相違
評価
モデルがどの程度「調整」されているかを評価するには、まずこのコンテキストでの調整が何を意味するかを理解する必要があります。
目標は、ユーザーの意図に基づいて動作するモデルをトレーニングすることです。役に立つ、正直、無害。
私たちは、世界に関するモデルの発言が真実であるかどうかという真実性を、次の 2 つの指標を使用して測定します:
(1) 情報を捏造するモデルの傾向 (クローズド ドメイン タスクでの「幻覚」) を評価する
(2) TruthfulQA データセットを使用する (Lin et al., 2021)。言うまでもなく、これは実際の内容のほんの一部しか捉えていません。
定量的評価: 定量的評価は 2 つの部分に分けることができます。
- API配布の評価。私たちの主な指標は、トレーニング分布と同じソースから抽出された一連のキューに対する人間の好みの評価です。API からのプロンプトを使用して評価する場合、トレーニングに含まれていない顧客からのプロンプトのみを選択します。
- 公開 NLP データセットの評価。私たちは 2 種類の公開データセットを評価します: 言語モデルのセキュリティの側面、特に信頼性、有害性、バイアスを捕捉するデータセットと、質問応答、読解、要約などの従来の NLP タスクでのゼロショット パフォーマンスを捕捉するデータセットです。設定。
アライメント研究
アライメントの目的: AI システムを人間の意図に合わせて
アライメント研究から得た教訓:
相对于预训练,增加模型对齐的成本是适度的。
RLHF は、モデル サイズを 100 倍に増やすよりも効果的に、言語モデルをユーザーにとってさらに役立つものにするのに非常に効果的です。- InstructGPTが、英語以外の言語のタスクやコード関連のタスクなど、私たちが監督していない設定に対して「指示に従う」ことを一般化しているという証拠をいくつか確認しました。モデルが各タスクを実行するのを人間が監督するコストは法外に高いため、これは重要な特性です。
我们能够减轻微调带来的大部分性能下降。
将来の高性能 AI システムが人間の意図と矛盾するようになるのを避けるために、調整税の低い調整技術が必要です。この目的のために、私たちの結果は、低税調整手法として RLHF にとって朗報です。我们已经从现实世界的研究中验证了对齐技术。
配置の環境設定を調整する方法
- まず、トレーニング ラベラーによって提供されるデモと設定を調整しています。これらのラベル作成者は、モデルの微調整に使用するデータを直接生成します。
- 第二に、私たちは好みを調整しています。私たちは、タグ付け者がデモを作成したり好みの出力を選択したりする際のガイドとして使用するタグ付け手順を作成し、共有チャット ルームでエッジ ケースに関する質問に答えます。
- 第三に、私たちのトレーニング データは、OpenAI の顧客が OpenAI API Playground 上のモデルに送信するヒントによって決定されるため、顧客が価値があると考えるもの、場合によっては、エンド ユーザーが現在 API を価値のあるものに使用していると考えているものと暗黙的に一致します。 。
- 第 4 に、OpenAI の顧客は、言語モデルの使用によって影響を受けるすべての個人やグループはもちろんのこと、潜在的または現在の言語モデル ユーザーのすべてを代表するわけではありません。
データセット
- プレーン: アノテーターはいくつかの問題を自分で考える
- 少数ショット: アノテーターはいくつかの命令を考え、入力と出力の例をいくつか示します。
- ユーザーベース: ユーザーがアプリケーションに実装してほしいと提案したいくつかの機能 (待機リスト アプリケーション) に基づいてタスクを構築します。
- これらのプロンプト データを使用して最初の instructGPT モデルを設計し、次にこのモデルを取り出して PlayGround に置き、誰もが使用できるようにして、より多くのプロンプト データを収集します。このようにして、次の 3 つのデータ セットが構築されます。
- ラベラーに、SFT (教師あり微調整モデル) のトレーニング用のデータを構成するプロンプトの回答を直接書き込ませます (13,000 サンプル)
- ラベラーに、RM (報酬モデル) のトレーニング用データを構成するモデルの出力を並べ替えさせます (33,000 サンプル)
- RM のアノテーションに基づいて強化学習モデル (31,000 サンプル) をトレーニングするためのデータを生成します
InstructGPT 学習: Zhihu の記事
https://zhuanlan.zhihu.com/p/589747432
ふーむ
信号機と同様、特定の状態は、前の状態 (一次マルコフ モデル) によってのみ決定されます。そして、天気と同様に、気象状態間の遷移は、過去 n 日間の気象状態にのみ依存します即状态间的转移仅依赖于前 n 个状态的过程
。
- このプロセスはn 次マルコフ モデルと呼ばれます。
平たく言えば、マルコフ モデルはランダム プロセスの重要なクラスを記述します。ランダム プロセス (ランダム関数とも呼ばれる) は、時間の経過とともにランダムに変化するプロセスです。
マルコフ モデルでは、各状態が観測可能なイベントを表すため、マルコフ モデルは可視マルコフ モデル (可視マルコフ モデル、VMM) と呼ばれることもありますが、これによりモデルの適応性がある程度制限されます。
視覚障害者は天気を直接観察することはできないかもしれませんが、葉に触れたり、葉の乾燥状態を観察したりすることで天気の状態を判断することができます。したがって、天気は隠れた状態であり、葉の乾燥は観察可能な状態であるため、2 組の状態があり、1 つは観察不可能で隠れた状態 (天気)、もう 1 つは観察可能な状態 (葉) です。天気を直接観察できなくても、葉とマルコフ仮定を使用して天気を予測できるアルゴリズムを設計したいと考えています。
隠れマルコフ モデル (HMM) では、モデルの具体的な状態順序はわかりませんが、状態遷移の確率、つまりモデルの状態遷移過程だけが観測できません。
- したがって、モデルはモデルの合計を含む二重確率過程です。
状态转换
特定状态下可观察事件的随机
HMM は、評価、デコード、パラメータ学習という 3 つの基本的な問題に分割できます。
評価:
前方アルゴリズム、後方アルゴリズム
デコード:
- つまり、一連の観察を「最もよく説明する」「最適な」状態順序を見つけることです。
与えられたモデルでは、λ = [ π , A , B ] \lambda=[\pi,A,B]私=[ p 、あ、B ]と観測シーケンスOOO – ビタビアルゴリズムの条件下で最も確率の高い状態シーケンスを見つける:最適な状態シーケンスの動的探索
- 各瞬間における各状態の確率を求め、最大の確率に対応する前瞬間の状態を求める。
パラメータ学習:
- 観測シーケンス O の状態が既知の場合 (つまり、多数のラベル付きサンプルがある場合)、最尤推定を使用してλ \lambdaを計算できます。ラムダのパラメータ
- ラベル付きサンプルの数がそれほど多くない場合: 期待値最大化 (EM)
CRF
分類器のパフォーマンスを向上させるには、可以在标记数据的时候,可以考虑相邻数据的标记信息
. これは通常の分類器では達成することが困難です。そしてこの分野はCRFの得意分野でもあります。
自然言語処理における POS タグ付けは、CRF に非常に適しています。品詞タグ付けの目的は、文内の各単語の品詞 (名詞、動詞、形容詞など) を与えることです。これらの単語の品詞は、文脈の品詞と関連していることが多いため、CRF を使用して処理するのが非常に適しています。もちろん、CRF が唯一の選択肢ではなく、多くの選択肢があります。他の品詞のタグ付け方法。
-
ランダムフィールドはいくつかの位置から構成される全体であり、各位置に値が一定の分布に従ってランダムに割り当てられる場合、その全体をランダムフィールドと呼びます。
-
マルコフ乱数場は乱数場の特殊なケースであり、乱数場内の特定の位置の割り当てはその隣接する位置の割り当てにのみ関連し、隣接しない位置の割り当てとは何の関係もないと仮定します。
-
CRF はマルコフ乱数場 (条件付き乱数場) の特殊なケースです。マルコフ乱数場には X と Y の 2 つの変数しかないと仮定します。X は通常与えられ、Y は通常与えられた X の条件下で出力されます。このようにして、マルコフ乱数場は条件付き乱数場として特化されます。
-
10 単語の文の品詞タグには 10 の単語と 10 の品詞があるため、マルコフ確率場であると仮定すると、線形 CRF でもあります。
特徴関数には、ノード特徴関数とローカル特徴関数の 2 種類があります。
- 最初のカテゴリは
定义在Y节点上的节点特征函数
、このタイプのフィーチャ関数は現在のノードにのみ関連するというものです。
- 2 番目のカテゴリは、
定义在Y上下文的局部特征函数
このタイプの特徴関数が現在のノードと前のノードにのみ関連するというもので、次のように記録されます。
- 特徴関数自体に戻ると、各特徴関数は線形 CRF ルールを定義し、その係数がこのルールの信頼性を定義します。すべてのルールとその信頼性は、線形 CRF の最終的な条件付き確率分布を構成します。
- 前者はシーケンスのラベリングを n k 分類問題と見なし、後者はシーケンスのラベリングを k^n 分類問題と見なします。