Save 37% off PRO during our Black Friday Sale! »

Vokenization: Improving Language Understanding with Contextualized, Visual-Grounded Supervision

Vokenization: Improving Language Understanding with Contextualized, Visual-Grounded Supervision

2020/11/17 論文紹介
EMNLP2020 (https://aclanthology.org/2020.emnlp-main.162/)

E4b1cd045c514b1b7410f94678e1eb3b?s=128

Hiroto Tamura

July 06, 2021
Tweet

Transcript

  1. 11/17, 論⽂紹介, ⽥村弘⼈

  2. Abstract • Text-only の⾃⼰事前学習フレームワークは有効性が⽰されている • この論⽂では視覚的に学習された⾔語モデル (Visually-grounded LM) を 提案

    • しかし,テキストだけのデータセットと画像が絡んでいるデータセットで はデータサイズも違うし,分布も違う • “Vokenization” を提案 Øテキストだけのデータ (language-only data) にマルチモーダルなアライメントを施 す Øあるトークンにそれに関する画像を対応させる Ø“vokenizer” は少量の image captioning dataset で訓練 • GLEU, SQuAD, SWAQ で text-only より良い性能 1
  3. Introduction • 現存の事前学習フレームワーク Ø⽂脈学習: language context を⾃⼰教師として (word2vec, BERT, etc)

    Ø外部の (visual) 情報を教師として使ってない • Visually-supervised LM を提案 ØLanguage tokens を⼊⼒し vokenize する Øそれぞれの token に対応する画像 (voken) を得る Øこれらを使って LM を学習 ØVoken-prediction task 2
  4. Token-voken dataset • Token と対応する画像 (voken) のペアになっているデータセット (token- voken dataset)

    は未だ存在しない • Token-voken dataset を作る際の⼆つの課題点 1. Visually-grounded language とその他のタイプの⾔語のデータセット間の違い n visually-grounded language→⽐較的,簡潔で有益な情報が欲しい; データ数⼩さい n トークン数,⽂⻑,能動態 2. ほとんどの単語が視覚的に表現可能でない (not visually-grounded) n Concrete nouns (dog, cat, horse) → visually-grounded n “up”, “by”, “into” → 抽象的,not visually-grounded n English Wikipedia で約 28 % の単語が visually-grounded n Grounding ratio の低さ 3
  5. Vokenization method • Token を voken に⽂脈的に mapping させる Ø⽐較的⼩さいデータセット

    (e.g., MS COCO) で vokenizer を訓練 Ø訓練した vokenizer を⽤いて⼤規模コーパス (e.g., English Wikipedia) で voken を⽣ 成 Ø⽣成した voken を⼊⼒し, visually-grounded LM を訓練 1. 最終的に visually-grounded LM の訓練に使っているデータは⼤規模コーパスなの で visually-grounded language とそうでない⾔語のデータ間の分布の違いは解消 2. Grounding ratio の低さは⾔語固有の特性 n non-visually grounded token はその⽂脈を考慮すれば効率的に voken へと mapping できる n e.g., “angry” → “an angry cat lies on my legs” n ⽂をコンテキストとして⾒て,token から voken へと変換する 4
  6. Voken-Classification Task • 既存の事前学習 LM Ø⽂ 𝑠 の各 token {𝑤!}

    に対する localized feature representation {ℎ!} を出⼒ • Voken-classification task ØVoken は有限集合 𝕏 から取り出される Øℎ! を線形変換 & softmax に通して,確率分布 𝑝! を得る ØVoken classification loss は全ての voken に対応する negative log probability 5 既存の⾔語事前学習フレームワークに容易に統合可能 token 𝑤! に対する voken: v
  7. Ex) Visually-Supervised BERT • 𝑠: token の集合, ̂ 𝑠: masked

    token の集合,𝑠 ∖ ̂ 𝑠: unmasked token の集合,𝑞! は 𝑖 番⽬ の token の条件付き確率分布 • Masked Language Model (MLM) loss は masked token の負の対数尤度 6 左 右 unmasked token で各 token の voken を予測する unmasked token で masked token を予測する
  8. Two Challenges in Creating Vokens • 今までの話は voken-token dataset があればの話

    • Grounded language (image captioning) Ø 何かの物体だったり,物理的な⾏動に特に注⽬している Ø 他の⾔語とは違うタイプ (e.g., News, Wiki, Textbooks) 1. Different Distributions between Grounded Language and Other Natural Language Corpora. 2. Low Grounding Ratio in Natural Language 7 photograph, tv, wooded, little, away, storage, etc Visually-grounded tokens の定義 • MS COCO から visually-grounded token を抽出 • 出現頻度 100 以上の単語を visually- grounded token と定義 (stop words を除 いた後)
  9. Vokenization Process • ⽂ 𝑠 = {𝑤", 𝑤#, . .

    . , 𝑤$} 中の token 𝑤! に関連した画像 𝑣 𝑤!; 𝒔 を割り当てる • 画像は有限集合 𝕏 = {𝑥", 𝑥#, . . . , 𝑥%} から,token-image-relevance scoring function 𝑟&(𝑤!, 𝑥; 𝒔) に沿って選択する Ø 𝑟! (𝑤" , 𝑥; 𝒔): ⽂ 𝒔 中の token 𝑤" と画像 𝑥 の関連度を表す.𝜃: パラメータ • 最適なパラメータ 𝜃∗ を⾒つけたとして,voken: 𝑣 𝑤!; 𝒔 を以下の式で選ぶ Ø 𝕍 は 𝕏 とは違う,画像の集合 8
  10. Contextual Token-Image Matching Model • 𝑟&(𝑤!, 𝑥; 𝒔) は language

    feature representation: 𝒇&(𝑤!; 𝒔) と visual feature representation: 𝒈&(𝑥) との内積で計算される Ø ⽂全体をコンテキストとして捉えている→ non-visually grounded token の voken への変換可能 • 𝒇&(𝑤!; 𝒔) Ø 事前学習済 BERTBASE に token {𝑤"} を⼊⼒して hidden representation {𝒉"} を出⼒する Ø 得られた各 vector 𝒉" を MLP: 𝑤_𝑚𝑙𝑝! に通した後に norm-1 に正規化する (ユークリッドノルム) • 𝒈&(𝑥) Ø 事前学習済 ResNeXt から visual feature を抽出 Ø 同様に MLP: 𝑥_𝑚𝑙𝑝! に通して正規化して得られる 9
  11. Training of Token-Image Matching Model • MS COCO dataset の⽂と画像のペア

    {(𝑠(, 𝑥()} Ø まず,𝑠# 内の全ての各 token 𝑤" と画像 𝑥# とでアライメントする Ø その後アライメントされていないペアを⽤いてアライメントされたペアの関連度のスコアを最⼤化するこ とでモデルを最適化 • Image captioning data point: (𝑠, 𝑥) Ø ランダムに他の画像 𝑥$ を選ぶ (𝑥$ ≠ 𝑥) Ø hinge loss を⽤いて重み 𝜃 を最適化 Ø positive token-image pair: 𝑟! 𝑤", 𝑥; 𝒔 のスコアが negative token-image pair: 𝑟!(𝑤", 𝑥$; 𝒔) のスコアよりも 最低でもマージン 𝑀 の差が開くように 10 𝑠( 𝑤%, 𝑤&, . . . , 𝑤' 𝑥# , 𝑥# , . . . , 𝑥# hinge loss: max{0, 𝑀 − 𝑝𝑜𝑠 + 𝑛𝑒𝑔} を最⼩化する n pos と neg スコアの差がマージン M より⼩さいとき, Ø pos のスコアを⼤きくする,neg のスコアを⼩さくする Ø e.g.) max{0, M(=1) ‒ pos(=0.6) + neg(=0.4)} = max{0, 0.8} = 0.8 →学習される→スコア変化 n 差が M 以上 Ø スコアは変化しない Ø e.g.) max{0, M(=1) ‒ pos(=2) + neg(=0.1)} = max{0, -1.9} = 0 →学習されない→スコアはそのまま
  12. Inference of Token-Image Matching Model • 𝑣 𝑤!; 𝒔 は

    𝑟& 𝑤!, 𝑥; 𝒔 を最⼤化するような画像を検索する関数 Ø 𝑟! 𝑤", 𝑥; 𝒔 は内積 • Maximum Inner Product Search Ø クエリ 𝑞 とベクトルの集合 𝑉 との内積が最⼤となるような 𝑉 中のベクトルを⾒つける Ø 今回はクエリ: 𝑤" に対応する,画像 𝑥 ∈ 𝕏 を⾒つけること Ø また今回は 𝒇!(𝑤"; 𝒔), 𝒈!(𝑥) は norm-1 に正規化されている • クエリと⼀番近いベクトルを探すことに等しい (Nearest Neighbor Search) 11 𝒙 − 𝒚 & = 𝒙 & + 𝒚 & − 2𝒙 B 𝒚 = 1 + 1 − 2𝒙 B 𝒚 𝒙 B 𝒚 = 1 − 𝒙 − 𝒚 & 2 arg min ( 𝒙 − 𝒚 = arg max ( 𝒙 B 𝒚
  13. Revokenization • voken の選択は token による Ø tokenizer によって token

    が変わる Ø 様々なフレームワークに適応させたい (e.g., BERT, RoBERTa. etc.) • 異なる tokenizer 𝑇" と 𝑇# がある Ø ⽂ 𝒔 をそれぞれで tokenize: 𝑇% 𝑠 = (𝑤% , 𝑤& , . . . , 𝑤' ), 𝑇& 𝑠 = (𝑢% , 𝑢& , . . . , 𝑢) ) Ø まず,𝑇% で⽂ 𝒔 を tokenize したとして token {𝑤" }"*% ' に対応する voken {𝑣 𝑤" ; 𝒔 }"*% ' を⽣成する • ⽬標: 𝑤-related tokens を 𝑢-related tokens に変換するのが⽬標 Ø 全ての {𝑤" } と 𝑢+ とで⼀番重複する token を 𝑤",-(+) とし,この token に対応する voken を token 𝑢+ に対 応する voken: 𝑣(𝑢+ ; 𝒔) として扱う 12
  14. Pre-training Data & Fine-tuning Tasks • English Wikipedia, Wiki103 Ø

    それぞれで voken を⽣成 • 事前学習済モデルは GLUE, SQuAD, SWAG で fine-tuning される 13
  15. Implementation Details 1 • Contextual token-image matching model Ø MS

    COCO で訓練 (20 epochs) Ø Language hidden states: concatenation of last 4 layers of BERT outputs Ø Visual embedding: ResNeXt-101-32x8d features Ø MLP (𝑤_𝑚𝑙𝑝! , 𝑥_𝑚𝑙𝑝! ): two fully connected layers n 中間層: 256 dims (ReLU activation), 出⼒層: 64 dims Ø Margin M: 0.5 • Vokenization process Ø vokens: Visual Genome images, voken size: 50,000 14
  16. Implementation Details 2 • Pretraining Ø Removing the next-sentence-prediction task

    Ø Using the fixed sequence length of 128 Ø BERTBASE model: 12 layers, 768 hidden dimensions, training on English Wikipedia (200K steps) Ø Reduced BERT model: 6 layers, training on Wiki103 (160K steps) n フルの English Wikipedia dataset には適合しなかった Ø batch size: 256, learning rate: 2e-4, λ: 1.0 (visual と textual LM のロスの割合を調整するパラメータ) • Fine-tuning Ø dev での結果を報告 Ø batch size: 32, learning rate: 1e-4, training (3 epochs) 15
  17. Results 16 • Default: accuracy • QQP: F1 と accuracy

    の平均
  18. Limit of Visually-Grounded Language (vision-and-language pre-training frameworks) 17 • 上の5つのモデルは画像の情報を⽤いている事前学習済

    LM (vision-and- language gramework) • GLEU (pure-language tasks) で fine-tuning • BERTBASE より総じて低い Ø Vision-and-language LM を visually-grounded language で事前学習することは pure-language task の性能向上には繋がらない
  19. Limit of Visually-Grounded Language (BERT models) • BERT を grounded

    language data (MS COCO) で pretraining • ⽐較のため Wiki103 の token 数を MS COCO と同じ量にする 18
  20. Sentence-Level Retrieval • Sentence-image matching model Ø Token-image relevance score

    𝑟! 𝑤", 𝑥; 𝒔 を sentence-level 𝑟! $ 𝑥; 𝒔 に変更 Ø 𝑟! $ 𝑥; 𝒔 は language representation と visual representation との内積 𝑟! $ 𝑥; 𝒔 = 𝒇! (𝒔) B 𝒈! (𝑥) Ø Language representation は⽂ 𝑠 embedding (CLS token の出⼒) 得られた画像を以下の2種類の supervision として考える • SentLabel Ø ⽂ s で⽂全体を表す画像を予測するタスク • Propagated Ø ⽂の各 token ごとに⽂全体を表す画像を予測するタスク 19 {𝑤% , 𝑤& , . . . , 𝑤' } 𝑥 {𝑤%, 𝑤&, . . . , 𝑤'} 𝑥 𝑥 𝑥
  21. Token-Level Retrieval • Term frequency に関係した pure token-level retrieval を考える

    Ø # (𝑡𝑜𝑘, 𝑥"): は画像 𝑥" のキャプション中のトークン 𝑡𝑜𝑘 の出現頻度 Ø Term frequency をボルツマン分布を通して,条件付き分布に変換 • 以上の条件付き分布に沿って token から image へと mapping する 20 𝛾 = 0.01
  22. Token-Level vs. Sentence-Level 21 • Token-level supervision は sent-level supervision

    よりも良い • “Term Frequency” は⽂脈を考慮していないため,”Propagated”,”Vokens” よりも悪い
  23. Visualization of Vokens 22 • 各 token に対してそれぞれ異なる voken が割り与えられている

    • 曖昧性解消 (e.g., “down” in example 2) u Token の意味を捉えていない voken もある (e.g., “writing” in example 1) u アライメントがシフトしている (e.g., “my love” というフレーズでの意味が “love” の代わりに “my” にアライメントされている in example 2) Ø Token-image のデータセットが確⽴されていないせいか?
  24. Conclusion • Visual supervision の有⽤性を調べた • Contextual token-image matching model

    を⽤いて vokenizer を開発,コーパスに対して voken を⽣成 • これらの voken を使って,LM を学習 ØSelf-supervised LM より様々なタスクにおいて性能向上が⾒られた 23