Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
NLP SoTA 勉強会 / ner_2019
Search
himkt
September 18, 2019
Research
1.5k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
NLP SoTA 勉強会 / ner_2019
第 3 回 NLP/CV 最先端勉強会の発表資料です.
https://nlpaper-challenge.connpass.com/event/146540/
himkt
September 18, 2019
More Decks by himkt
See All by himkt
Linformer: paper reading
himkt
0
830
RoBERTa: paper reading
himkt
1
460
自然言語処理 @ クックパッド / nlp at cookpad
himkt
1
600
Interpretable Machine Learning 6.3 - Prototypes and Criticisms
himkt
2
230
ニューラル固有表現抽出 / Neural Named Entity Recognition
himkt
3
870
ニューラル固有表現抽出器を実装してみる / PyNER
himkt
6
2.3k
Spacyでお手軽NLP / NLP with spacy
himkt
0
1.1k
Deep Learning Book 10その2 / deep learning book 10 vol2
himkt
2
220
ふわふわ系列ラベリング / ner 2018
himkt
5
890
Other Decks in Research
See All in Research
進化?迷走?CasualConc ファミリーアプリの現在地 @ 英語コーパス学会 2026
casualconc
0
150
MIRU2026 チュートリアル講演2:三次元データ処理の動向
nnchiba
8
5.4k
VLMの推論を高速化する視覚トークン削減の仕組み
tattaka
2
380
GLIM とMegaParticles:正規分布近似の限界とタイトカップリング&パーティクルフィルタの進展 / GLIM and MegaParticles : Progress of the distribution representation in SLAM
koide3
0
960
CVPR2026論文紹介_VLMにとって良いvision encoderとは何か?Rethinking Model Selection in VLM Through the Lens of Gromov-Wasserstein Distance
kobayashi31
1
270
Evaluating LLM Reliability Across Facts, Evidence, and Cultures
yukiar
0
210
JICA QUEST 共創×革新プログラム Impact Report(海ノ向こうコーヒー)
ontheslope
0
840
超効率化への挑戦:1bit LLMの現状と展望
yumaichikawa
0
880
20260624 NLP colloquium: 単一のhubテキストがCLIPを壊す:hubnessによる埋め込みの脆弱性特定
de9uch1
2
300
山中市政の総括:相反する二つの顔
sishi
0
220
【ローカルAIに向き合う展示会vol.2】液体時間定数型モジュールを用いた オリジナルの双方向エンコーダーモデルNexteraBERT 推論速度向上検討並びにダウンストリーム評価
rikkabotan7
0
230
LA-Bench 2025:実験指示から実行可能手順を生成するためのデータセット/LA-Bench 2025: A Dataset for Generating Executable Experimental Procedures from Experimental Instructions
stktu
0
200
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
530
Prompt Engineering for Job Search
mfonobong
0
520
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
280
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
My Coaching Mixtape
mlcsv
0
360
Automating Front-end Workflow
addyosmani
1369
210k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
330
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Transcript
Surveys of Sequence Labeling Makoto Hiramatsu @himkt Yasuhiro Yamaguchi @altescy
Koga Kobayashi @kajyuuen Tatsuya Hiraoka @mentaiko_guma
/30 発表の概要 •内容: ここ数年の自然言語処理系の国際会議に採択された 系列ラベリングに関する論文の調査 •リポジトリ: GitHub: himkt/survey (tentative) •対象:
ACL, NAACL, EMNLP, COLING, LREC 2
/30 担当的なもの •@himkt: 言語モデルを使ったニューラル固有表現抽出 •@altescy: 転移学習・敵対的学習を用いた固有表現抽出 •@kajyuuen: 完全なアノテーションが得られない状況下での固有表現抽出 •@mentaiko_guma: @himkt
が面白そうと思ったやつ 3
/30 担当的なもの •@himkt: 言語モデルを使ったニューラル固有表現抽出 •@altescy: 転移学習・敵対的学習を用いた固有表現抽出 •@kajyuuen: 完全なアノテーションが得られない状況下での固有表現抽出 •@mentaiko_guma: @himkt
が面白そうと思ったやつ 4
/30 自己紹介 Makoto Hiramatsu Twitter/GitHub: himkt クックパッド 研究開発部 (2019-20??) 5
/30 系列ラベリング • 入力の系列 (X) は所与,出力の系列 (Y) を予測 (e.g.
単語分割, 品詞タグ付け, 固有表現抽出…) 6 X Y P(Y ∣ X)
/30 • テキストからあらかじめ定められたカテゴリ (NE カテゴリ) を 認識・抽出するタスク (抽出されたものを Entity と呼ぶ)
• 系列ラベリングの問題として定式化されることが多い • 各単語に対して NE タグ を予測 -> span に変換して Entity に変換 (in https://explosion.ai/demos/displacy-ent) 固有表現抽出 7
/30 NE タグ -> NE 8 例. だし巻き卵 (F: Food),
皿 (T: Tool) Prefix によって span を表現する
/30 LSTM-CRF [Huang+, 2015] • LSTM-CRF を NER に適用した初めての (?)
研究 • 単語の分散表現 + context/spelling 特徴を使っている • 後者の離散的な特徴量を直接 CRF に入力している (最近はそういうやり方をしている論文をみない気がする) 9 図は論文より抜粋
/30 LSTM-CRF [Lample+, 2016] 10 • 学習済みの分散表現 + 文字の分散表現を用いて単語の特徴量を獲得 •
学習済みの分散表現は Skip-N-Gram [Ling+, 2015] • 文字の BiLSTM 部分が CNN な手法も存在する [Ma+, 2016] Pre-trained Word Embedding Character Embedding Character BiLSTM Word Representation CRF BiLSTM
/30 2014 ~ 2016 • LSTM-CRF ベースのモデルがデファクト化 • 離散的な特徴量 ->
単語 (文字) の分散表現へのシフト • 使う学習済みの単語分散表現に色々な流派が存在 • SENNA [Collobert+, 2011] • Skip-Gram [Mikolov+, 2013] • Skip-N-Gram [Ling+, 2015] • GloVe [Pennington+, 2014] • …etc • 関連: https://speakerdeck.com/himkt/ner-2018 11
/30 2017~ [ここまで 3 分で話しているはず] •学習済みの言語モデルを使う研究が現れる 12
/30 Leaderboard on CoNLL2003 13
/30 Use ELMo, BERT or Flair 14
/30 学習済み言語モデル • 単語の分散表現 (E1) -> 言語モデルベースの単語の分散表現 (E2) • 入力文を言語モデルに入力し,得られた出力を単語ベクトルにする
• 異なる文脈で単語 w が出現してきたとき… • E1 -> 同じ単語ベクトルが割り当てられる • E2 -> 異なる単語ベクトルが割り当てられる • NER で使われているものとして ELMo, BERT, Flair がある (GPT を使っている論文を知っていたら教えてくださいmm) • BERT [Delvin+, 2018] の話はしません • GitHub: yoheikikuta/paper-reading issue#18 を読んでください • [Baevski+, 2019] も話しません • EMNLP-IJCNLP の proceedings がまだなので 15
/30 TagLM [Peters+, 2017] • 2 層の双方向の言語モデルを用いて単語特徴を獲得 • 1 Billion
Benchmark [Chelba+, 2014] で学習した言語モデルを利用 • 順方向: 既存の学習済みモデル [Jozefowicz+, 2016] • LSTM hidden_dim: 8192 (!!), Linear projection: 1024 • 逆方向: 著者らが学習 • LSTM hidden_dim: 2048, Linear projection: 512 16 図は論文より抜粋
/30 ELMo [Peters+, 2018] • TagLM と同一著者 (所属は AllenAI) •
公式実装 -> GitHub: allenai/allennlp • 双方向の言語モデルを同時に学習する • CNN を使って単語レベルの特徴を獲得 17
/30 ELMo Training 18 Token Representation Token Representation Token Representation
Next Word Prediction Prev Word Prediction • TagLM と同一著者 (所属は AllenAI) • 公式実装 -> GitHub: allenai/allennlp • 双方向の言語モデルを同時に学習する • CNN を使って単語レベルの特徴を獲得 (TagLM も)
/30 ELMo Training • 順方向言語モデル + 逆方向言語モデル の対数尤度を 最大化することで学習を行う •
Token Representation の重み ( CNN の重み) と Fully-connected layer の重みは共通 19 N ∑ k=1 log p(tk ∣ p1 , …, pk−1 ) + log p(tk ∣ p1+1 , …, pN )
/30 ELMo Feature Extractor 20 Token Representation BiLSTM BiLSTM Output
ELMo feature • 特徴抽出の際は入力文を ELMo に入力 -> 単語の特徴量と LSTM の出力の重み付き和を計算 ELMotask k = γtask L ∑ j=0 stask j hLM k,j Trainable parameters (allennlp issue#1149)
/30 ELMo Tips • Token Representation は文字分散表現を CNN で 畳み込み
-> Max-Pooling -> ReLu したもの • 二層目の BiLSTM への入力には Token Representation との Residual Connection もある • Target タスクの学習データで Fine-Tuning すると タスクでの性能が向上するらしい (see appendix) • ELMo 自身の学習は allennlp には存在しない • GitHub: allenai/bilm-tf • Transformer ELMo [Peters+, 2018] は allennlp にある 21
/30 Flair [Akbik+, 2018] • COLING2018 で発表された論文 • Zalando Research
の研究 -> 実装あり 公式実装 -> GitHub: zalandoresearch/flair • Contextual STRING embeddings • 文字レベルの言語モデルを 1B Benchmark コーパスで学習 • Ablation study がしっかりしている 22
/30 String Embeddings? • 文字から文字を予測する言語モデル • Whitespace も1つの文字として, 入力文を「文字列」としてモデリング •
続きの研究が NAACL Full [Akbik+, 2019] にあります • GitHub: xxx/surveys issue#19 • zalandoresearch/flair 自体も NAACL Demo [Akbik+, 2019] に通っています (すごい) 23
/30 Flair Architecture 24 I <s> h a v e
<a> a Char Embedding LSTM Next Character Prev Character • 順方向言語モデルと逆方向モデルは別々に学習する • 言語モデル自体の学習は 1 GPU で 1 週間 (TagLM は 32 GPU で 3 週間) • (文脈窓幅は 250)
/30 Flair Feature Extractor 25 図は論文より抜粋
/30 Flair Feature Extractor 26 図は論文より抜粋 • 文字言語モデルに入力して,単語の直前・直後の 言語モデルの隠れ層を concat
したものを特徴量にする
/30 Performance Comparison 27 表は論文より抜粋
/30 Ablation study • LSTM/CRF をモデルから除去して評価実験を行なっている • 提案手法は LSTM を除去した際の
F 値の低下が少ない => 大域的な情報を言語モデルの段階で獲得できている • Q: ELMo も似たような結果になる? 28 表は論文より抜粋
/30 Flair まとめ • 大規模コーパスで学習した文字レベル言語モデルを 特徴抽出器として利用する手法の提案 (文を文字列とみなして直接モデリング) • BiLSTM/CRF なしでも性能の劣化が少ないことから,
大域的な特徴を獲得していることが示唆される • ELMo よりも学習に時間がかからない • ELMo: 3 week / 32 GPU • Flair: 1 week / 1 GPU • 文字ベースの言語モデルなので語彙サイズが小さい 29
/30 発表まとめ • NER の SoTA な手法で標準的に利用されている 学習済み言語モデルベースの特徴抽出器について 紹介しました •
BERT は日本語の詳しい解説がたくさんある一方, ELMo と Flair (特に Flair) の資料は少なく感じたので ELMo と Flair を取り上げました • 説明した論文・および他の論文のまとめは GitHub: himkt/survey へ (誤りを見つけたら教えてください) 30