固有表現認識(NER)(固有表現識別、エンティティチャンキング、エンティティ抽出とも呼ばれる)は、情報抽出のサブタスクであり、非構造化テキストで言及されている固有表現を、人名(PER)、組織(ORG)、場所(LOC)、地政学的エンティティ(GPE)、車両(VEH)、医療コード、時間表現、数量、金額、パーセンテージなどの事前定義されたカテゴリに特定して分類することを目的としています。
NER/NEEシステムに関する研究のほとんどは、次のような注釈のないテキストブロックを変換するという構造になっています。
ジムは2006年にアクメ社の株を300株購入した。
エンティティ名を強調表示する注釈付きテキストブロックに変換する:
[ジム]パーソンは、[2006] 時に[アクメ社] の株式を300 株購入しました。
この例では、1つのトークンからなる人名、2つのトークンからなる会社名、および時間表現が検出され、分類されています。
「名前付きエンティティ」という表現では、 「名前付き」という言葉は、単語やフレーズなどの 1 つまたは複数の文字列が、何らかの指示対象を(かなり)一貫して表すエンティティにタスクを限定します。これは、ソール・クリプキによって定義された「固定指定子」と密接に関連しています[ 1 ] [ 2 ]。ただし、実際には、NER は哲学的に「固定」ではない多くの名前や指示対象を扱います。たとえば、1903 年にヘンリー・フォードによって設立された自動車会社は、 FordまたはFord Motor Companyと呼ばれることがありますが、「Ford」は他の多くのエンティティも指すことができます ( Fordを参照)。固定指定子には、固有名詞や特定の生物種や物質の用語が含まれます[ 3 ]。ただし、代名詞 (「it」など。共参照解決を参照)、指示対象をその特性によって特定する記述 ( De dicto および de reも参照)、個人ではなく物の種類を表す名前 (たとえば「Bank」) は除外されます。
完全な固有表現認識は、概念的にも実装においても、多くの場合、2 つの別々の問題に分解されます。 [ 4 ]名前の検出と、名前が参照するエンティティの種類 (人、組織、場所など) による名前の分類です。[ 5 ]最初 のフェーズは通常、セグメンテーション問題に単純化されます。名前はネストのないトークンの連続した範囲として定義されるため、「Bank of America」は単一の名前であり、この名前の中に部分文字列「America」自体が名前であるという事実は無視されます。このセグメンテーション問題は形式的にはチャンキングに似ています。2 番目のフェーズでは、物事のカテゴリを整理するためのオントロジーを選択する必要があります。
NERタスクのコンテキストでは、時間表現や一部の数値表現(例:金額、パーセンテージなど)も固有表現として扱われることがあります。これらのタイプの例の中には、厳密な指定子の良い例(例:2001年)もありますが、無効な例(例:私は6月に休暇を取ります)も多数あります。最初の例では、 2001年はグレゴリオ暦の2001年を指します。2番目の例では、6月は定義されていない年(過去の6月、次の6月、毎年の6月など)の月を指す可能性があります。このような場合、実際的な理由から固有表現の定義が緩められることは議論の余地があります。したがって、固有表現という用語の定義は厳密ではなく、多くの場合、使用されるコンテキストで説明する必要があります。[ 6 ]
文献では、固有表現タイプの階層がいくつか提案されている。2002年に提案されたBBNカテゴリは質問応答に使用され、29のタイプと64のサブタイプで構成されている。[ 7 ] 2002年に提案された関根の拡張階層は200のサブタイプで構成されている。[ 8 ]さらに最近では、2011年にリッターが、ソーシャルメディアのテキストに対するNERの画期的な実験で、一般的なFreebaseエンティティタイプに基づく階層を使用した。[ 9 ]
NERでは、同じ名前が同じタイプの異なるエンティティを指す場合、参照解決の曖昧さが生じる可能性があります。たとえば、「JFK」は、アメリカ合衆国の元大統領または彼の息子を指す可能性があります。
同じ名前でも、全く異なる種類を指すことがある。「JFK」はニューヨークの空港を指すかもしれないし、「IRA」は個人退職口座、国際読書協会、またはアイルランド共和軍を指すかもしれない。
固有表現認識(NER)システムの出力品質を評価するために、いくつかの指標が定義されています。一般的な指標としては、精度、再現率、F1スコアなどがあります。しかし、これらの値をどのように計算するかについては、依然としていくつかの課題が残っています。
これらの統計的手法は、実在するエンティティを正確に検出または検出しないという明白なケース、および非実在するエンティティを検出する場合には、かなりうまく機能します。しかし、NERは他の多くの方法で失敗する可能性があり、その多くは「部分的に正しい」と言えるものであり、完全な成功または失敗として数えるべきではありません。たとえば、実在するエンティティを識別したが、次のような場合です。
精度を測定する非常に単純な方法の一つは、テキスト内のすべてのトークンのうち、エンティティ参照の一部として正しく識別されたか、誤って識別されたか(または正しいタイプのエンティティとして識別されたか)の割合を数えることです。しかし、これには少なくとも2つの問題があります。1つ目は、実際のテキスト内のトークンの大部分はエンティティ名の一部ではないため、ベースライン精度(常に「エンティティではない」と予測する)が非常に高く、通常90%を超えてしまうことです。2つ目は、エンティティ名全体を誤って予測した場合のペナルティが適切に設定されていないことです(姓が続くのに名だけを見つけた場合、精度が1/2と評価される可能性があります)。
CoNLLなどの学術会議では、 F1スコアの変種が次のように定義されています。[ 5 ]
上記の定義から、単一のトークンを欠落させたり、誤ったトークンを含めたり、クラスを間違えたりする予測は、重大なエラーであり、精度や再現率にプラスの影響を与えないことがわかります。したがって、この指標は悲観的であると言えます。多くの「エラー」が実際にはほぼ正解であり、特定の目的には十分である可能性があるからです。たとえば、あるシステムでは「Ms.」や「Ph.D.」などの敬称を常に省略するかもしれませんが、敬称が含まれることを想定しているシステムや正解データと比較される可能性があります。この場合、そのような敬称はすべてエラーとして扱われます。このような問題があるため、実際にエラーの種類を精査し、目標や要件に基づいてエラーの重要性を判断することが重要です。
トークンごとのマッチングに基づく評価モデルが提案されている。[ 10 ]このようなモデルでは、重複するマッチングに対して部分的な評価を与えることができる(例えば、Intersection over Union基準を使用するなど)。これにより、抽出システムのよりきめ細かい評価と比較が可能になる。
固有表現認識(NER)システムは、言語文法に基づく手法と、機械学習などの統計モデルを組み合わせた手法を用いて開発されてきた。最先端のシステムでは、複数のアプローチが組み込まれている場合もある。
手作業で作成された文法ベースのシステムは一般的に精度は高いが、再現率が低く、経験豊富な計算言語学者による数ヶ月の作業が必要となる。[ 11 ]
統計的NERシステムは通常、大量の手動で注釈付けされたトレーニングデータを必要とします。注釈付け作業の一部を回避するために、半教師ありアプローチが提案されています。[ 12 ] [ 13 ]
統計的学習の時代には、NERは通常、設計された特徴量に対して単純な線形回帰モデルを学習し、双方向ビタビアルゴリズムで復号化することによって実行されていました。一般的に使用される特徴量には、次のものがあります。[ 14 ]
地名辞典は、「ゼネラル・エレクトリック」などの名称とその種類の一覧です。これは、NER のあらゆるシステムを拡張するために使用できます。統計的機械学習の時代にはよく使用されていました。[ 15 ] [ 16 ]
機械学習による固有表現認識(NER)を実行するために、さまざまな分類器タイプが使用されており、条件付き確率場が典型的な選択肢です。[ 17 ] Transformers は、深層学習モデルを使用してトークン分類を特徴としています。[ 18 ]
1990年代のNERシステムの初期の研究は、主にジャーナリズム記事からの抽出を目的としていました。その後、軍事指令や報告書の処理に注目が集まりました。自動コンテンツ抽出(ACE)評価の後期段階では、ウェブログや会話形式の電話音声のテキスト書き起こしなど、いくつかの種類の非公式なテキストスタイルも含まれていました。1998年頃から、分子生物学、バイオインフォマティクス、および医療自然言語処理コミュニティでは、エンティティ識別に大きな関心が寄せられています。この分野で最も一般的な関心対象は、遺伝子と遺伝子産物の名前です。また、 CHEMDNERコンペティションの文脈では、化学物質や医薬品の認識にも大きな関心が寄せられており、27チームがこのタスクに参加しています。 [ 19 ]
2001年の研究では、最先端のNERシステムでさえも脆弱であることが示されました。つまり、あるドメイン向けに開発されたNERシステムは、通常、他のドメインではうまく機能しないということです。[ 20 ] NERシステムを新しいドメインでうまく機能させるには、かなりの労力が必要です。これは、ルールベースのシステムと学習可能な統計システムの両方に当てはまります。
2007年現在、英語の最先端NERシステムは人間とほぼ同等の性能を発揮している。例えば、MUC-7に出場した最優秀システムはF値93.39%を記録したが、人間のアノテーターは97.60%と96.95%を記録した。[ 21 ] [ 22 ]
MUC-7データセットで高いF1値が報告されているにもかかわらず、固有表現認識の問題は解決には程遠い。主な取り組みは、半教師あり学習を採用してアノテーション作業を削減すること[ 12 ] [ 23 ] 、ドメイン間で堅牢なパフォーマンスを実現すること[ 24 ] [ 25 ]、そしてきめ細かいエンティティタイプにスケールアップすること[ 8 ] [ 26 ]に向けられている。近年、多くのプロジェクトがクラウドソーシングに目を向けている。これは、NERに対する教師ありおよび半教師あり機械学習アプローチで高品質の集約された人間の判断を得るための有望な解決策である[ 27 ] 。もう1つの困難な課題は、Twitterや検索クエリなどの言語的に複雑なコンテキストに対処するモデルを考案することである[ 28 ] 。
隠れマルコフモデル(HMM )、最大エントロピー(ME)、条件付き確率場(CRF )などのさまざまな統計モデルと特徴セットによる NER のパフォーマンスについて比較を行った研究者もいます。[ 29 ]また、最近では、言語固有の NER タスク向けにグラフベースの半教師あり学習モデルを提案した研究者もいます。[ 30 ]
テキスト中の「重要な表現」を特定し、それらをWikipediaに相互リンクさせるという、最近出現したタスク[ 31 ] [ 32 ] [ 33 ]は、非常にきめ細かい固有表現認識の一例と見なすことができ、そのタイプは(潜在的に曖昧な)概念を説明する実際のWikipediaページです。以下は、Wiki化システムの出力例です。
<ENTITY url= "https://en.wikipedia.org/wiki/Michael_I._Jordan" >マイケル・ジョーダン</ENTITY>は、<ENTITY url= "https://en.wikipedia.org/wiki/University_of_California,_Berkeley" >バークレー</ENTITY>の教授です。進歩が見られるものの依然として課題が多い分野として、非標準的な綴り、テキストの短さ、非公式性のため「ノイズが多い」とされるTwitterやその他のマイクロブログへのNERの適用がある。 [ 34 ] [ 35 ]英語のツイートにおけるNERチャレンジは、双方向LSTM 、Learning-to-Search、CRFなどのさまざまなアプローチのパフォーマンスを比較するために研究コミュニティによって組織されている。[ 36 ] [ 37 ] [ 38 ]