|
出典: Yuanyuanのアルゴリズムノート 本日は、北京大学、シャノンサイエンス、浙江大学、アマゾン、南洋理工大学など複数の機関による最近の共同研究を紹介したいと思います。この研究では、GPT などの事前トレーニング済みの大規模モデルを使用して NER 問題を解決しています。 論文タイトル: GPT-NER: 大規模言語モデルによる固有表現抽出 ダウンロードリンク: https://arxiv.org/abs/2304.10428 固有表現抽出(NER)の目的は、与えられたテキスト内の固有表現の部分を識別することです。NERでは通常、シーケンスラベルを用いて、各位置のトークンが特定の固有表現に属するかどうかをモデル化し、属する場合はどの固有表現に属するかをモデル化します。NERの詳細な結果は、以前の記事で発表されています。 GPTのような大規模モデルは多くのNLPタスクで顕著な成果を上げていますが、NER(自然言語処理)におけるパフォーマンスは理想的とは言えません。論文では、大規模モデルのNER問題解決における有効性が限定的である根本的な理由は、NERタスクとGPTの学習方法の違いにあると指摘しています。GPTは本質的に生成モデルであるのに対し、NERはシーケンスラベリングタスクです。したがって、GPTをNERに適用する際には、NERタスクを生成タスクに変換する方法が重要な課題となります。 この論文では、プロンプトを介して NER タスクを生成タスクに変換し、事前トレーニング済みの大規模モデルを使用して NER 問題を解決する GPT-NER を提案することでこの問題に対処します。 GPT-NERの全体的なアイデアは、NERのシーケンスラベリングタスクをプロンプトを介して生成タスクに変換し、それを大規模モデルに入力して予備的なNERラベルを生成することです。錯覚問題のため、大規模モデルは実体ではない結果にNERラベルを割り当てることがよくあります。この問題に対処するため、本論文では、生成された結果の精度を検証するために大規模モデル自体を使用することを提案しています。全体として、GPT-NERは予備的な結果生成と結果検証の2つの部分で構成され、どちらも大規模モデル自体によって実行されます。 GPT-NERプロセス全体の鍵となるのは、適切なプロンプトとデモンストレーションをいかに生成するかです。以下では、GPT-NERの2つのコアモジュールについて詳しく説明します。 この論文では、プロンプトを用いてNERタスクを生成タスクに変換しています。GPT全体への入力は、主に以下の3つの部分で構成されています。 タスクの説明: タスクの説明に使用します。例えば、「私は優秀な言語学者です」と入力し、シナリオを設定し、モデルに役割を演じさせ、言語的観点からNERラベリングを実行する必要があることを説明します。 少数ショットのデモンストレーション:このセクションでは、GPTによって生成されるサンプル形式を理解するために、NERタスクの例を示します。各例は入力と出力で構成されています。出力形式への直感的なアプローチは、LOC OOOのようなNERラベル付きシーケンスを直接出力することです。しかし、この出力はGPTとの互換性があまりありません。そのため、本稿では、元の文のタグ付け部分を特殊記号@@##でマークする出力形式を採用しています。 入力文: ラベルを付けるサンプル。 全体的なプロンプトの例を下の図に示します。 デモンストレーションの導入は、本質的には少数ショット学習アプローチです。私たちの目標は、現在の入力文に可能な限り類似したテキストを見つけることです。これにより、予測タスクは入力例からより多くの知識を引き出し、正確な予測を達成できるようになります。では、適切な例をどのように見つけるのでしょうか?本論文では、サンプル表現ベクトルとKNN検索に基づく例選択手法を提案します。全体的なプロセスは以下のとおりです。 最も基本的なアプローチは、テキスト表現モデル(例えば、対照学習に基づいて訓練された文レベルの表現モデルであるSimCSEなど)を用いて文ベクトルを生成し、現在の入力サンプルとの類似度を計算し、最も類似した文を例として取得することです。しかし、このアプローチの問題点は、NERがトークンレベルのシーケンスラベリングタスクであるという点です。文全体の意味検索を用いると、確かに意味的に類似した文が取得される可能性がありますが、NERタスクから得られる情報はそれほど多くありません。 そこで本論文では、トークンレベルの検索タスクを提案する。事前学習済みのNERモデルを用いて各トークンの表現を取得する。次に、トークン表現に基づいてKNNアルゴリズムを実行し、関連性の高いトークンを検索する。これらのトークンを含む文は候補例として用いられる。類似したNERベクトルを持つトークンは、NERタスクにおいて類似した文脈を示しており、NERの観点から予測対象となるサンプルと関連している可能性がより高い。 大規模モデルにおける錯視現象は一般的な問題です。著者らは、NERタスクにおいて、大規模モデルが非エンティティ語をエンティティとしてラベル付けすることが多いことを発見しました。この問題に対処するため、本論文では、前ステップで生成された初期NER結果のプロンプト形式を変更し、検証のために大規模モデルに再入力する検証モジュールを追加しました。プロンプト全体も、以下の例に示すように、タスクの説明、デモンストレーション、入力文の3つの部分で構成されています。サンプル選択には、NERモデルのトークンレベル表現に基づく同様のKNN検索手法も使用されました。 本論文では、この手法の性能を教師ありNERモデルの性能と実験で比較しました。GPT-NERは教師ありモデルとほぼ同等の性能を達成しました。さらに、本論文ではGPT3モデルを使用しており、今後、より大規模なモデルバージョンの開発が進めば、GPT-NERのような手法が従来の教師ありNER手法に取って代わることが期待されます。 |