Contenu connexe
Similaire à [DL Hacks]BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (20)
Plus de Deep Learning JP (20)
[DL Hacks]BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
- 1. !1
BERT: Pre-training of Deep Bidirectional Transformers for
Language Understanding
Kosuke Suzuki
Kyoto University, Physical Engineering B3
- 2. 行なったこと
• BERTを動かしてみた
- 一般の方が公開していたPyTorchコードを参考に実装
- 日本語Wikpediaをコーパスに事前学習 (コーパスサイズ2.5GB)
- Googleが公式に発表しているものよりはるかに小さいモデルサイズ
(8 Layers x 8 Heads, 256 hidden dim)
- だいたい10 epochs くらい. (8 hours x 10 epochs)
AWS GPU V100 4つ x 80 hours (10万円くらい)
- Next Sentence Prediction Acc rate 90% 程度まで引き上げたところで終了
- Jupyter Notebook 形式で公開済み
• 今回の考察内容の詳細はこちらに公開済み
!2
- 3. 書誌情報
•Title
– BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
•URL
– ArXiv
•著者
–Jacob Devlin Ming-Wei Chang Kenton Lee Kristina Toutanova
–Google AI Language
•概要
–Bidirectional Transformerをユニットにフルモデルで構成したモデル
–事前学習タスクとして、マスク単語予測タスク、隣接文判定タスクを与える
–8つのタスクでSOTA達成
–Googleが事前学習済みモデルを公開済み / TensorFlow / PyTorch
!3
- 4. 一分でBERTをおさらい
• Googleが発表したPre-trainedモデル
• 8つのタスクで軒並みSOTAを叩き出しDL for NLP界隈で
盛り上がっている
• Transformer (Self-Attention) を多層に積み重ねた非常に
シンプルなモデル
• 事前学習に大規模コーパスを使用する
GoogleはWikipediaとBook corpusを使用
• 事前学習タスクはふたつ
• 文中でMask or shuffleされた箇所の正しい単語を予測させる
• 二文を与え、文章が隣接しているものか否かを判定させる
• 事前学習の特性上、学習に膨大な時間がかかる
→ お金がかかるので、気軽に試しにくい
!4
@_RyobotさんのTweetより引用
- 18. まとめ・感想
!18
• まとめ
- BERTは事前学習の際に、一部のDiscriminativeな単語に注意を当てていると思われる
- 注意が強い単語は出現頻度が低い(レア)な傾向がある
- BERTは文脈に基づいた多義語解釈が可能
- Word2Vecで一点に押しつぶされていた情報がBERTでは損失しない
- 多様な応用可能性
• 感想
- 汎用モデルとはいえ、少量データセットのタスクにおいては性能がいまひとつ
- NLPでは原始的なアルゴリズムが性能を発揮することが多いが、人間の認知回路に近づいたBERTによっ
てその所以が少し解明されるかも?
- BERTのAttention状況がidf (Inverse Document Frequency、逆文書頻度) と類似しているように思える