Ahogrammer

Deep Dive Into NLP, ML and Cloud

固有表現認識と品詞タグ付けに対するドメイン適応を教師なしで行う

EMNLP 2019より以下の論文を紹介。

この論文は、系列ラベリングのドメイン適応を教師なしで行う手法を提案している。ELMoやBERTなど文脈を考慮した分散表現を生成するモデルは良い性能を示すことが知られている。しかし、これらの学習にはWikipediaやニューステキストを使っているので、対象テキストのドメインや書かれ方が大きく異なる場合に有効かはわからない。そこで、この論文では対象ドメインのテキストを使って分散表現をFine-tuningすることで性能向上を図っている。実験は、対象ドメインを昔の英語テキストとTwitterテキストとして行っている。結果として、大きく性能が改善することを示した。

提案手法は割とシンプルで、対象ドメインのテキストを使って教師なしでBERTの言語モデルをチューニングしようというもの。論文中ではこれをDomain Tuningと呼んでいる。たとえば、Wikipediaで学習したBERTをTwitterのテキストを使って再学習することがそれに当たる。それに対して、教師データを使ってBERTをチューニングする方法をTask Tuningと呼んでいる。たとえば、固有表現認識であればCoNLL 2003を使ってBERTを含むモデル全体を学習させることがそれに当たる。

Domain TuningとTask Tuningの組み合わせで以下の4つの実験設定を作っている。

  • Frozen BERT
  • Task-Tuned BERT
  • AdaptaBERT
  • Fine-Tuned BERT

Frozen BERTというのは、BERTを特徴抽出器として使う方法のことで、BERTは学習させない。Task-Tuned Bertというのは、ソースドメインの教師付きデータを使ってBERTを学習させる手法のことを指している。AdaptaBERTは対象ドメインの教師なしデータを使ってBERTをチューニングした後、ソースドメインの教師付きデータを使ってモデルを学習させる手法のことを指している。最後のFine-Tuned BERTというのは、対象ドメインのデータを使ってBERTを含むモデル全体を学習させる手法を指している。

実験は品詞タグ付けと固有表現認識に対して行っている。品詞タグ付けでは、ソースドメインコーパスとしてPTB、対象ドメインコーパスとしてPPCEMEを使っている。PTBは現代英語、PPCEMEは15世紀から17世紀くらいの英語を対象にしたコーパスとなっている。固有表現認識ではソースドメインコーパスとしてCoNLL 2003、対象ドメインコーパスとしてWNUT 2016を使っている。CoNLL 2003はニュースが対象であり、WNUTはTwitterが対象となっている。

品詞タグ付けに対する実験結果は以下の通り。結果を見ると、Domain Tuningを使って対象ドメインコーパスでBERTを学習させることで性能が向上することがわかる。特に、OOVのトークンに対する性能が大きく向上している。

f:id:Hironsan:20190920075634p:plain
PPCEMEに対する品詞タグ付けの正解率

固有表現認識に対する実験結果は以下の通り。結果を見ると、こちらもTweetを使ってDomein Tuningをすることで性能が向上していることがわかる。

f:id:Hironsan:20190920080122p:plain
WNUTとCoNLL 2003に対する固有表現認識の結果

実験結果を見ると、「なんだ、結局対象ドメインの教師データを使ってFine-Tuningするのが一番いいじゃないか」と思うかもしれないが、それは論文が想定している状況と違う。確かに、対象ドメインのラベル付きデータが大量にあるならそうするのが一番良い。ただ、この論文で扱ったような昔の言葉であるとか、逆にTweetのように新しい分野の場合はラベル付きデータが大量にあるとは限らない。そのような状況でも、対象ドメインの教師なしデータを使ってBERTをチューニングするだけで性能が向上するというのは、実用的にありがたい話となっている。