【論文読み会】Universal Language Model Fine-tuning for Text Classification

ARISEanalytics 2,134 views 23 slides May 30, 2019
Slide 1
Slide 1 of 23
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23

About This Presentation

論文「Universal Language Model Fine-tuning for Text Classification」について輪読した際の資料です。


Slide Content

©2018 ARISE analytics
2018/08/24
鶴野瞬
論文読み会
Universal Language Model Fine-tuning for Text Classification

©2018 ARISE analytics2
概要
タイトル: Universal Language Model Fine-tuning for Text Classification
著者: Jeremy Howard, Sebastian Ruder
https://arxiv.org/pdf/1801.06146.pdf
一言で言うと
すごい点
感想
大規模コーパスで学習させた言語モデルを転移学習させる
アノテーション無しの事前学習によって、分類タスクの精度が向

BERTなどに比べて精度向上幅は小さそうだ が、少ない計算量で精
度改善できるのは魅力的
モチベーション 転移学習を使って高精度なテキスト分類 モデルを簡単に作りたい

©2018 ARISE analytics3
本日の論文
主旨:転移学習を用いて、少量のデータでも高精度のテキスト分類モデルを構築する手法
(ULMFiT)を開発した
出典:https://arxiv.org/pdf/1801.06146.pdf
Annual Meeting of the Association for Computational Linguistics (ACL 2018)に採択された

©2018 ARISE analytics4
自然言語処理 (NLP)とは
NLPとは、人間が日常的に使っている自然言語をコンピュータに処理させる一連の技術のことである。
典型的なタスクには、テキスト分類や機械翻訳、質疑応答などがある。
•NLPの典型的なタスクとその応用例
機械翻訳 : google翻訳
情報検索 : google検索
言語モデリング : テキスト入力予測
テキスト分類 : 記事のカテゴリ分け
質疑応答 : チャットボット

©2018 ARISE analytics5
教師データが少ないときの対処方法
NLPタスクに取り組んでいて、教師データの入手に苦労した。
教師データが少ないときの対処方法の一つに、転移学習 (Transfer learning)がある
出典:http://publications.idiap.ch/downloads/papers/2011/Tommasi_CVPR2010.pdf
モデルの精度と訓練量の関係

©2018 ARISE analytics6
転移学習とは
転移学習とは、あるタスク /ドメインで学習させたモデルを別のタスク /ドメインに適応させる技術のことで
ある
出典:https://www.cse.ust.hk/~qyang/Docs/2009/tkde_transfer_learning.pdf
通常の教師あり学習 転移学習

©2018 ARISE analytics7
転移学習の方法
典型的な転移学習の方法は、深層学習 (DL)モデルを大きなデータセットで訓練した後、タスク用の
データを使って出力近くの層を訓練し直すことである
出典:https://arxiv.org/pdf/1808.01974.pdf

©2018 ARISE analytics8
NLPにおける転移学習の例 : word2vec
NLPでよく使われる転移学習の例として、事前学習した単語ベクトルをモデルの入力層に用いることが
ある。しかし、単語レベルの情報しか転移できない。
出典:https://www.aclweb.org/anthology/N13-1090
性別 単数/複数

©2018 ARISE analytics9
NLPにおける転移学習の例 : CoVe
より高次の転移学習としては、機械翻訳モデルのエンコーダー部分の出力を使った例がある。
しかし、タスクごとにモデルを作る必要がある。
Learned in Translation: Contextualized Word Vectorshttps://arxiv.org/abs/1708.00107

©2018 ARISE analytics10
言語モデルとは
言語モデルとは、ある単語列が与えられたときに次の単語を予測するモデルである。
教師ラベルを付与することなく構築でき、言語の高次な特徴を学習する。

http://ruder.io/transfer-learning/index.html
言語モデル タスク 言語モデルが学習する(と思われる)特徴

•言語の構造
•単語間の関係、共起しやすさ
•文中で離れている単語間の依存
•etc
転移学習に用いられないか?
今日の昼食はとんこつ__
•ラーメン 97%
•うどん 2%
•カレー 0.5%
•… …
予測

©2018 ARISE analytics11
AWD-LSTM
AWD-LSTMはRNNを用いた高精度な言語モデルである。
本日の論文で用いられている。
※ https://arxiv.org/pdf/1708.02182.pdf
LSTM
LSTM
LSTM
モデルの構成 言語モデルの精度 (perplexity)

©2018 ARISE analytics12
ULMFiT
本論文で提案された ULMFiTとは、大量のテキストを使って言語モデルを訓練した後、転移学習によっ
てタスク用の分類モデルを作成する汎用的な手法である。実現のために複数のテクニックを用いている。
出典:https://arxiv.org/pdf/1801.06146.pdf
言語モデル
事前訓練
言語モデル
fine-tuning
分類モデル
fine-tuning
WikiText-103
(1億個以上の単語 )
タスクのテキスト タスクのテキスト+教師ラベル
使用
データ
テクニック
学習率を層によって変
える(Discriminative
fine-tuning)
学習率をイテレーション
よって変える (Slanted
triangular learning
rates)
出力層側から徐々に解
凍する(Gradual
unfreezing)
1
2
3

©2018 ARISE analytics13
fine-tuningのテクニック
上記テクニックによって、事前学習で学んだことを忘れないようにしながら、分類タスクにモデルを最適化
させることを狙っている
学習率を層によって変える
(discr)
学習率をイテレーションよって変える
(stlr)





出力層側から徐々に解凍する
(freez)




各層は異なる抽象度 /情報を捉えるので、
それぞれに適した程度でチューニングする
モデルのパラメータをタスク特異的な特徴
に適応させるため、はじめにパラメータ空間
内の探索領域を大きく変え、その後にゆっ
くりと最適解を探索する
1 2 3
入力層に近いほど言語の一般的な情報
を捉えているので、それを忘れないように学
習する

©2018 ARISE analytics14
分類タスク
試したタスクは、感情分析、質問分類、トピック分類の 3種類(6データセット)。
データセットのサイズ、分類クラス数は様々。

©2018 ARISE analytics15
ULMFiTモデルの分類精度
試したすべてのタスクにおいて、 state-of-the-artの成績を達成した

©2018 ARISE analytics16
小さなデータセットに対する精度
ULMFiTを使うと、ゼロからモデルを訓練する場合に比べて数分の 1から数百分の1のサイズのデータ
セットで同等の精度を得られた
言語モデルの fine-tuning時に使用するデータによって、 2つのシナリオを試している。 supervised:ラベル付きデータ
のみ、semi-supervised:全データ
fine-tuning用データのサイズと分類精度の関係
感情分析 (IMDb) 質問分類 (TREC-6) トピック分類(AG)
データサイズ 25k 5.5k 120k

©2018 ARISE analytics17
言語モデル事前学習の効果
言語モデルの事前学習は、分類モデルの精度向上に有用である。
影響の程度は小さなデータセットで顕著である。
事前学習の有無による分類精度の違い

©2018 ARISE analytics18
言語モデルの質の影響
言語モデルの質は分類モデルの精度に影響する。
影響の程度は小さなデータセットで顕著である。
Vanilla LMはAWD-LSTM LMからdropoutを除いたもの
モデル構成による分類精度の違い

©2018 ARISE analytics19
言語モデルfine-tuningの効果
言語モデルの fine-tuningは、分類モデルの精度向上に有用である。
精度向上に学習率に関するテクニックが効果的である。
Fullは全層をfine-tuningすること
言語モデルfine-tuningの各テクニックが分類精度に与える影響 テクニック
学習率を層によって変
える(discr)
学習率をイテレーション
よって変える (stlr)
1
2

©2018 ARISE analytics20
分類モデルfine-tuningの効果
分類モデルの fine-tuningは、分類モデルの精度向上に有用である。
精度向上に開発したテクニックが効果的である。
Fullは初めから全層を解凍して fine-tuningすること
分類モデルfine-tuningの各テクニックが分類精度に与える影響 テクニック
学習率を層によって変
える(discr)
学習率をイテレーション
よって変える (stlr)
出力層側から徐々に解
凍する(freez)
1
2
3

©2018 ARISE analytics21
転移学習による忘却
分類モデルの fine-tuning時に上記のテクニックを使うことで、事前学習で学んだこと情報を忘れずに、
分類精度を向上させることができる
fine-tuning用データのサイズと分類精度の関係
感情分析 (IMDb) 質問分類 (TREC-6) トピック分類(AG)
テクニック有
テクニック無
学習エポック
エラー率

©2018 ARISE analytics22
類似の取り組み
テキスト分類以外のタスク (含意、類似判定、 Q&A)でも、言語モデルをベースにしたモデルを構築する
ことで高い精度が得られる
Improving Language Understanding by Generative Pre-Training
https://openai.com/blog/language-unsupervised/
モデル構成とタスク用 fine-tuning 含意タスクに対するモデルの精度
•注意機構を持ったモデル (Transformer)を使用した
•fine-tuning時にタスク用データの入力方法を工夫した
Tags