個人的な興味として。固有表現抽出というタスクに取り組んでいましたが、固有表現抽出のタグのつけ方について一切疑問を持たずにいました。どのようなタグのつけ方があるのか、簡単(ゆるふわ)に調べてみました。
固有表現抽出とは?
固有表現抽出(認識)
文中の重要語句(固有表現,Named Entity)を抽出する技術。最近では新聞などの一般的なドメインにおいて、ニューラルネットワークを使った手法が高い精度をあげている。Bi-LSTMとCRFを組み合わせたものが主流。
固有表現タグとは?
固有表現が事前に決めた固有表現クラスの中で何に相当するかをタグしたもの。タグには「その固有表現における境界のタグ」と「固有表現クラス」が一緒となっているものが多い。
タグについて
固有表現に用いられる「境界のタグ」はチャンキングのタスクから来ている。チャンキングとは、文などを小さな構成要素などに分割する処理のことで、固有表現抽出などもこれにあたる。文を文節単位に区切ること該当する(Mecabの分かち書きとか)。
タグの種類に関しては、現在はおおよそ「BIO」方式か「BIOES」方式の二種類が主で、後者が採用されることが多い。「BIO」方式では固有表現を「Begin」、「Inside」とし、それ以外を「Outside」とタグ付けする。一方で「BIOES」方式では、「BIO」に加え、「End」、「Single」タグを加えている。これによって、マルチワードの固有表現の中間単語と末尾単語、さらに単一の固有表現を区切ることができるようになったため、「BIO」方式に加えて分類精度が向上している。固有表現抽出で提案された当初は「End」は「LAST」、「Single」は「Unit」という名称だったようだが、多分、パッと見のわかりやすさなどから「BIOES」と呼ぶ流れになったのだと思われる。加えて、調べるまでは知らなかったのだが、更に拡張したものもあるらしい(BMEWO+, citeの3番目)。
クラスについて
最初に固有表現抽出というタスクがMUC(Message Understanding Conference)で始まった時は、情報としての単位が明確な「人名」、「地名」、「組織名」、「時間」、「日時」、「金額表現」、「割合表現」の7種類のクラスだった。それに「固有物名」を加えたIREX(Information Retrieval and Extraction Exercise)の定義は、日本で使われている。さらに、より細かい分類に対応するため、固有表現のカテゴリ数が増やした、拡張固有表現というものも提案されている(citeの4番目)。一方で、一般ドメインで多く用いられる固有表現認識のデータセットCoNLL2003では、クラス数を絞っており、「人名」、「地名」、「組織名」、「その他の固有表現」の4種類のクラスになっている。
最近では、このような一般的なドメイン以外での固有表現抽出の研究や一般応用なども進められており、医療や生物化学だったり、将棋、アニメ、レシピのような様々なドメインや、WebテキストやSNSなどのノイズの多いテキストを対象としたコンペティション(W-NUT等)も開催されている。
おわりに
最近はWeb textも日々増えていますし、ノイズの多いテキストでも頑健な抽出器ができるとみんな嬉しいですね。ゆるふわに書いてみたので、詳しく知りたい方は調べてみてください。