Learning Composition Models for Phrase Embeddings

21
Learning Composition Models for Phrase Embeddings Mo Yu, Mark Dredze TACL2015 読読読 読読読読読 読読読 :, 1

Transcript of Learning Composition Models for Phrase Embeddings

Page 1: Learning Composition Models for Phrase Embeddings

Learning Composition Models for Phrase Embeddings

Mo Yu, Mark DredzeTACL2015

読む人:東北大学,高瀬翔

1

Page 2: Learning Composition Models for Phrase Embeddings

word embedding• 単語の特徴(意味)を低次元のベクトルで表現

• どのように得るか?– 次元圧縮( e.g., 単語共起行列を SVD )– ニューラル言語モデル( e.g., word2vec )

2

peach penguin medicinedrug

Page 3: Learning Composition Models for Phrase Embeddings

本論文の目的

• フレーズの意味を表す低次元のベクトルを単語のベクトルから構築する

3

medical

center

product

research center

medical product

research

f ( , )

f ( , )

Page 4: Learning Composition Models for Phrase Embeddings

既存研究と問題点• あらかじめ演算を定義( e.g., sum )

単語の特徴や文脈に適した演算を行えない• DT ( e.g., a, the, this )の意味は無視して良いはず

• 行列やテンソルを利用( e.g., RecursiveNN )

計算量が大きい• 次元数を増やしづらい• 小規模なデータセットでの教師あり学習のみ

4

+medical product

f ( , ) =medical product

medical productf ( , ) =

medical productσ [ : ]

Page 5: Learning Composition Models for Phrase Embeddings

本研究の概要

• 単語の特徴や文脈に応じた演算でフレーズのベクトルを計算する手法を提案

• 提案手法の計算量は小さい– 高次元( e.g., 200 次元)なベクトルも扱える– 大規模なデータで学習可能

• データスパースネスを解消できる

• 教師なし,教師あり,組み合わせで学習,評価

5

Page 6: Learning Composition Models for Phrase Embeddings

提案モデル• フレーズのベクトル:単語ベクトルの重み付き和

• 重みは単語の素性( e.g., 品詞,単語の位置)から計算

6

フレーズのベクトル 単語ベクトル単語 wi への重みベクトル

単語 wi への重みベクトルの j 次元

素性ベクトル

Page 7: Learning Composition Models for Phrase Embeddings

素性

• 組み合わせ素性は割愛

7

品詞による意味の強さを捉えたい( DT ( e.g., a, the, this )の意味は無視(重み 0 )する)

似た意味の単語は同じ重みで計算して欲しい( big, large, huge は同じ重みになって欲しい)

Page 8: Learning Composition Models for Phrase Embeddings

目的関数

• 教師なし学習– skip-gram の目的関数をフレーズに拡張

• 教師あり学習– softmax を用いた multi label 分類

• 2つの組み合わせ– 2つの目的関数の重み付き和– 重みは開発セットで調整

8

Page 9: Learning Composition Models for Phrase Embeddings

• 単語 wi から周辺語 wi+j の予測確率を最大化– 周辺単語のベクトルに似るように学習

9

skip-gram[Mikolov+ 13]

…natural herbal medicine cures several …

周辺単語を予測

文脈の範囲

ただし

Page 10: Learning Composition Models for Phrase Embeddings

skip-gram のフレーズへの拡張

• 単語ベクトルの代わりにフレーズのベクトルで周辺語を予測– フレーズのベクトル:単語ベクトルから構築

10

…natural herbal medical product cures several …

周辺単語を予測

+λproductλmedical

medical product

誤差逆伝播でパラメータ(単語のベクトル, α , b )を学習

Page 11: Learning Composition Models for Phrase Embeddings

softmax を用いた multi label 分類

• フレーズ ps がフレーズ pi と似ているか,分類するタスク– ps が pi と似ている: yi = 1– ps が pi と似ていない: yi = 0– として

11

目的関数:

Page 12: Learning Composition Models for Phrase Embeddings

実験設定

• コーパス: NYT 1994-97 ( LDC2011T07 )– 515,301,382 tokens– 語彙: 518,235 語(頻度 5 以上の単語)

• フレーズ: NP となる bi-gram– new trial, dead body, an extension, …

• ベクトルの次元数: 200• 提案手法の初期値: skip-gram で学習したベクトル

– skip-gram モデルを比較する際はコーパスを2周する• skip-gram と提案手法での学習設定(窓幅や負例の

サンプリング数)は合わせる

12

Page 13: Learning Composition Models for Phrase Embeddings

比較手法

• skip-gram で得たベクトルの和( SUM )

• RecursiveNN (行列は品詞組み合わせ毎)– ADJ-NN の行列, NN-NN の行列,…

13

+medical product

f ( , ) =medical product

medical productf ( , ) =

medical productσ [ : ]

ADJ-NN の行列 ADJ NN

Page 14: Learning Composition Models for Phrase Embeddings

タスク• 複数の教師ありタスクで実験• PPDB : input に対し, output との類似度が候補中で高いか• SemEval2013 :2つの表現が類似か否か• Turney2012 : input に対し,正しい output を選択できるか

– 候補中で正解の類似度が最も高くなるか

14

Page 15: Learning Composition Models for Phrase Embeddings

PPDB

15

提案手法

目的関数( LM , - : skip-gramTASK-SPEC :教師あり学習)

単語ベクトルを更新するか

正解のランクの逆数の和

単語毎の重みベクトルを学習(提案手法で素性ベクトルを利用しない手法)

Page 16: Learning Composition Models for Phrase Embeddings

Turney2012 , SemEval2013

16

この2つは50 次元かも

Page 17: Learning Composition Models for Phrase Embeddings

ベクトルの次元と性能

17

Page 18: Learning Composition Models for Phrase Embeddings

結論

• 単語の特徴や文脈に応じた演算でフレーズのベクトルを計算する手法を提案

• 単語ベクトルの和, RNN よりも良い性能であると示した– 教師なし学習(大量のデータ使用)を組み合

わせるとさらに良くなる

18

Page 19: Learning Composition Models for Phrase Embeddings

おまけ:計算量,計算時間

• 単語ベクトルの次元数 200 での訓練時に– 提案手法: 2.33 instance / ms– RNN : 0.31 instance / ms

• と論文では報告している• しかし,計算量は

– 単語の次元数 d ,発火した素性数 n とすると– 提案手法: O( n * d^2 )

• 重みベクトルの計算量: O( n * d ) なので(多分)– RNN : O( 次元数 ^2)

• に思うので,ちょっと良くわからない

19

Page 20: Learning Composition Models for Phrase Embeddings

おまけ:素性と性能の変化

• 単語クラスタが最も効果がある• 単語ごとに重みベクトルを学習( WSUM )は低い

– クラスタにしないと疎だから?– 素性は前後の単語も見ているから?

20

Page 21: Learning Composition Models for Phrase Embeddings

おまけ: skip-gram モデルの perplexity

• 提案手法は perplexity , loss が低いのでフレーズのベクトルから周辺語の予測が良く出来ている

• 学習時にフレーズを学習するかで窓幅が変わる可能性があり,公平な比較か少し疑問– herbal medical product cures について– skip-gram : medical の周辺 N 単語– 提案手法: medical product の周辺 N 単語

21