Ahogrammer

Deep Dive Into NLP, ML and Cloud

アクティブラーニングを使って固有表現のアノテーション数を25%にする

ICLR 2018より以下の論文を紹介。

Deep Active Learning for Named Entity Recognition

この論文では、固有表現認識向けのアクティブラーニング手法を提案している。最近の固有表現認識ではディープなモデルが使われる。そういったモデルではラベル付きのデータが大量に必要だが、その作成コストが高いという問題がある。そういった場合、アクティブラーニングを使って作成コストを減らす戦略が有効だが、モデルを繰り返し学習させる必要があるため学習コストが高いという問題がある。そこで、論文では学習方法とモデルを工夫することで問題を解決している。実験の結果、従来の25%のデータ量でデータを減らさない場合と同等の性能を出すことを示した。

ディープなモデルを使ってアクティブラーニングを行う際には、学習時間が問題になるが、この論文では2つの方法を使って解決している。一つは、モデルをインクリメンタルに学習させるという手法。これにより、重みを一から学習せずに済むため、計算時間を減らすことができる。加えて、CNNを使った計算の速いモデルを使うことで学習時間をおさえている。このモデルで面白いのは、一般的によく使われるCRFでは計算量が多いため、予測にLSTMを使っている点。図にすると以下になる。

f:id:Hironsan:20190916102930p:plain
タグのデコーダ

アクティブラーニングでは、不確実さに基づく手法を使って文選択を行っている。より具体的に説明すると、モデルから出力された確率の対数を計算し、その和を文の長さで正規化した後、最も低い値の文を選択している。簡単に言うと、モデルが最も自身のなさそうな予測をした文を選択して、その文に関してはオラクル(人間)にラベル付けしてもらおうという戦略になっている。ランキングの手法としては、LC、MNLP、BALDの3つを使っている。これらの詳細は論文を参照。

実験結果は以下の通り。以下はOntoNotes 5.0の英語と中国語のデータセットに対してアクティブラーニングを使った結果を示している。この図を見ると、アクティブラーニングを使っていない"Best Deep Model"に対して、アクティブラーニングを使った場合は、おおよそ25%〜30%のデータ量で"Best Deep Model"に匹敵する性能を出していることが確認できる。

f:id:Hironsan:20190916104048p:plain
実験結果

現在では言語モデルを使うことで、スモールデータであっても良い性能が出ることはわかっているが、この論文の手法と組み合わせることで、さらに少ないデータ量でモデルを学習させることができるようになる可能性がある。その場合は、固有表現を学習させるモデルだけでなく、言語モデルの方にも軽さが求められるので、そのあたりに研究の余地があるかもしれない。