Open osuossu8 opened 4 years ago
長答課題と短答課題を 2つのモデルで段階的に解くより、1つのモデルで一度に pred した方がよかった
それぞれの docs を token 重複を許してスライドして入手した複数の training instance に分割する (original BERT for SQuAD でもやってる)
答えのない instance は train 時には大胆に落とし、balanced training set を作る
ー
30,522 wordpiece vocwblary で tokenize
1 example につき複数の training instance 生成
各 instance で target answer span を表す start と end の token を計算する
データ巨大、アノテーション不十分につき、98% の generated instance は null になるので downsample
special markup tokens の導入
the form “[Paragraph=N]”, “[Table=N]”, and “[List=N]” at the beginning of the N-th paragraph
the first few paragraphs and tables に annotated answer が含まれてる可能性が高いので model に教えるとプラスになる
specail tokens are not split further by the wordpiece model.
each instance を 5値分類する
training instance を 4 tuple にする
(c, s, e, t)
c : 512 wordpiece ids
s, e ∈ {0, 1, ... , 511} : s2e の target answer span
t : target type label ∈ { short, long, yes, no, no-answer}
loss 関数
L = − logp (s, e, t|c)
= − logp start(s|c) − logp end(e|c) − logp type(t|c),
val set を使って 閾値を決める
model の初期化は SQuAD 1. で finetune された BERT を使用
Adam, bs 8, lr 3・10^-5
Tesla P100 1枚で 5h on the NQ dev set
[EOF]
論文リンク
https://arxiv.org/abs/1901.08634
公開日(yyyy/mm/dd)
2019/01/24
概要
著者実装