Ahogrammer

Deep Dive Into NLP, ML and Cloud

固有表現認識のデータセットをWikipediaから自動作成する手法

ACL 2017より以下の論文を紹介。

先日、以下の記事の中で、サブワードを使って固有表現認識を行う際にどのサブワードの分散表現を使うのが良いのか検証した論文を紹介した。今日紹介する論文はその論文の中で引用していた論文。

hironsan.hatenablog.com

この論文では、Wikipediaから282言語の固有表現認識用のデータセットを自動作成する手法を提案している。固有表現認識のデータセットを人手で作るのには非常に時間がかかる。そのため、Wikipediaのリンク情報を利用して自動的にデータセットを作成する研究が行われてきた。それらの研究では単言語を対象にしていることが多いが、この研究では多言語を対象にデータセットを作成している。実験は作成したデータセットを使ってWikipediaのデータとそれ以外のデータで固有表現認識とリンキングを行った。

なお、以下のリンク先からデータセットをダウンロードすることができる。

論文の手法は以下の図で表される。はじめに、英語Wikipediaのページを組織名や人名といったタイプに分類している。この際、特徴としてDBPediaのプロパティ(生年月日や創業年など)を使っている。次に、分類した結果をWikipediaの多言語リンクを利用して他の言語にも適用している。こうして記事を分類した後、Wikipediaのリンク情報を利用して自動的に固有表現認識のデータセットを生成している。

f:id:Hironsan:20190918071223p:plain
データの生成手順

ただ、このままだと質が悪いため、生成したデータセットからシードを選んでタガーに学習させ、そのタガーを使ってラベルなしのデータにラベル付けしている。そのラベル付けした結果から確信度の高い文だけ抽出し、学習データに加えてタガーを再学習するということをしている。

f:id:Hironsan:20190918071251p:plain
タガーの学習

データセットからシードを選ぶ際には、文中のすべてのアノテーションについて以下のNPMIがしきい値τを上回った文を選択している。"tag"というのは固有表現タグで"token"は単語だと考えればよい。たとえば、"B-LOC"というタグに対して"東京"のようなトークンがあり得る。おそらく、データセット全体を見回して、より確率の高いタグとトークンのペアが含まれている文は質が高いだろうから選択するということを表現している。

f:id:Hironsan:20190918071021p:plain
NPMIの式

最後に、タガーによってラベル付けしたデータから学習に使うデータを選択している。ここでの判断基準は一般性とトピック関連性となっている。

f:id:Hironsan:20190918071328p:plain
学習データの選択

作成したデータセットによる固有表現認識の結果は以下の通り。ここでは3クラス(人名、地名、組織名)の固有表現認識を行っている。傾向としては、固有表現の数の多い言語に対する性能が高いことがわかる。

f:id:Hironsan:20190918070726p:plain
固有表現認識の結果

Wikipedia以外のデータセットに対して実験を行った結果は以下の通り。結果を見ると、従来手法よりは良い結果となっているが、Gold Standardなデータセットを使って学習させる場合よりは低い性能になっている。

f:id:Hironsan:20190918072457p:plain
Wikipedia以外のデータセットに対する結果