⾃自然⾔言語処理理分野におけるディープラーニングの現状
渡邉 　陽太郎郎
東北北⼤大学⼤大学院情報科学研究科
IBIS2013 企画セッション2：ディープラーニング
2013/11/12

NLPにおけるディープラーニング
⾔言語解析 (Wang and Manning 2013)(Mansur et al., 2013)（構造予測） (Yang et al., 2013)
Feed-forward Deep NN(Collobert et al., 2008, 2011)

⾔言語モデルの構築

Recursive Neural Networks
Autoencoders(Socher et al., 2011, 2012,2013)

RBM (Minh and Hinton 2007)
Feed-forward Deep NN(Bengio et al., 2003, Arisoy et al., 2012)
Recurrent NN(Dinu et al., 2013)(Mikolov et al., 2010)

語彙意味論論

⾔言語の構成性のモデル化(Huang et al., 2012)

分布意味論論 分散表現の学習

構成的意味論論2⾃自然⾔言語処理理分野でディープラーニングを導⼊入するモチベーション• 分散表現（Distributed Representation）
Ø 単語やフレーズを固定⻑⾧長のベクトルで表現Ø 単語やフレーズの持つ⾔言語的な性質を含み、類似する単語が類似したベクトルを持つよう学習• ⾔言語の構成性のモデル化
Ø 句句や⽂文の意味を、それを構成する単語の合成により得る• 表現学習 (Representation Learning)Ø 素性エンジニアリングを最⼩小限に• マルチタスク学習Ø あるタスクから得られるパラメータを別のタスクに利利⽤用
3

⽬目次• ⾔言語処理理分野におけるディープラーニング• Deep NNに基づく構造予測Ø ⾔言語解析のための統⼀一的フレームワーク• ⾔言語モデル・単語の分散表現• Deep NNを⽤用いた⾔言語の構成性のモデル化• ⾔言語処理理でディープアーキテクチャは必要か？
• まとめ4NLPの構造予測問題
The luxury auto maker last year sold 1,214 cars in the U.S.
品詞タDT
グ付けNN

NNNN

基本句句
チャン B-NP I-NP
キング

I-NP

E-NP

JJ

NN

VBD

CDNNS

IN

DT NNP

B-NP E-NP B-VP B-NP E-NP S-PP B-NP E-NP

固有表 B-ORG I-ORG I-ORG E-ORG
現抽出OO

O

O

O

O B-LOC E-LOC

意味役割付与-------

B-A1

I-A1

B-AM-LOC …

-

B-A1

E-A1

S-A0

B-A0

I-A0

I-A0

I-A0

PRED

B-AM-TMP

PRED--• 単語列列に対して、適切切な系列列を出⼒力力するØ 条件付確率率率場 (Laﬀerty+ 2011), 構造化パーセプトロン等
Ø 各タスクごとに素性を⼈人⼿手で設計し、モデルを構築することが⼀一般的5

Deep NNでの単語の表現⽅方法: 分散表現
(Distributed Representation)• 従来の表現⽅方法• 表現の汎化

f (x) 0 0 0 1 0 0 1 0 …… 1 1 0-1:auto-1:NN

タスクによっては数百万、数千万次元+1:last +1:JJ

The cat is walking in the bedroom …
A dog was running in the bedroom …
Ø 同⼀一のカテゴリの単語 (cat-dog, walking-running, the-a)を類似した単語とみなしたい• 固定⻑⾧長の低次元ベクトルとして単語を表現Ø 次元数：e.g. 50, 100, 300, 500, …

Ø 単語が持っている意味のある側⾯面が共通していれば、ベクトルの要素の⼀一部が類似して欲しい
6

A Uniﬁed
Architecture for NLP(Collobert et al., 2008, 2011)• NLPタスクを統⼀一的に扱う多層NNØ 品詞タグ付け、基本句句のチャンキング、固有表現抽出、意味役割付与、⾔言語モデル• 限定された特徴量量Ø 単語、先頭が⼤大⽂文字かどうかなど• 表現学習Ø 畳み込みで周辺⽂文脈を考慮、プーリングで必要な情報を選択Deep NNを⽤用いたマルチタスク学習Ø 単語の分散表現、その下の隠れ層のパラメータを複数タスク間で共有v ⼀一⽅方のタスクで得られた情報を別のタスクに⽤用いる
8

⾔言語モデルの学習 (Collobert et al., 2008)… luxury auto ___?___ last year …

• Negative exampleをサンプリング（擬似負例例）
Ø Contrastive Estimation (Smith and Eisner 2005)• ランキングに基づく学習X X
Ø 損失関数:

max{0, 1f✓ (x) + f✓ (w(x) )}x2X w2Df✓ (x(w) )f✓ (x)

hard tanh

hard tanh⌦⌦luxury auto maker lastyear

luxury auto player last

別の単語に置換year
9

⾔言語モデル学習結果
各クエリ単語についてユークリッド距離離の⾼高い上位10件の単語を⾒見見ると…
国神

ゲーム機⾊色イベント（打つ,壊す,削る…）

単位

類似した意味を持つ単語が近い場所に集まっている10マルチタスク学習結果(Collobert and Weston 2008)• 意味役割付与タスク
で評価• マルチタスク学習でエラーレート低下• ⾔言語モデルとの組み合わせで最も良良い性能• 限られた特徴量量でstate-of-the-artな性能を達成
Ø 表現学習の結果
SENNA:	  http://ronan.collobert.com/senna/ 11

畳み込み+Max Poolingによる効果• 意味役割付与タスクでの振る舞い
Ø Max Pooling Layerで選択された値に対応する単語を頻度度をカウント
Ø 注⽬目している述語が異異なると、選ばれる値が異異なる12

Deep NNを利利⽤用するメリット• 素性抽出の時間を削減可能
Ø 従来⼿手法では、特徴ベクトルの作成には、特徴として利利⽤用する⽂文字列列を抽出、IDに変換する必要がある
Ø Deep NNは単語情報（＋α）を⾒見見て対応するベクトルをlookupするだけシステムの使⽤用メモリと解析スピード

13

⽬目次
• ⾔言語処理理分野におけるディープラーニング• Deep NNに基づく構造予測• ⾔言語モデル・単語の分散表現Ø Feed-forward Deep NN, Recurrent NNØ ⾔言語モデルの⽐比較、学習語の分散表現に関する調査• Deep NNを⽤用いた⾔言語の構成性のモデル化• ⾔言語処理理でディープアーキテクチャは必要か？
• まとめ14

⾔言語モデルThe luxury auto maker last year ___?___• 過去の履履歴から次の単語を予測 (wordprediction)TP̂ (w1T ) =Y

t=1P̂ (wt |w1t 1 )

1P̂ (wt |w1t 1 ) ⇡ P̂ (wt |wtt n+1)

Ø Bigram model: P ( sold | year )Ø Trigram model: p ( sold | last year )15

Feed-forward NN Language Model (Bengio etal., 2003, Schwenk 2007, Arisoy et al., 2012)
各単語の分散表現

c = (cj n+1 , cj n+2 , . . . , cj 1 )過去何単語⾒見見るかは事前に決定する必要がある

cj-n+1
cj-n+2…
cj-1

UV

d = tanh(U c)o=Vdexp(oi )softmax: pi = PN

r=1 exp(or )= p(wj = i|hj )16

Recurrent Neural Network Language
Model (Mikolov et al., 2010)
各単語のwordrepresentationが保持された⾏行行列列

注⽬目している単語だけ1になっているベクトルs(t) = f (U w(t) + W s(tUVW1))

過去の履履歴（⽂文脈）を保持しているベクトル（直前のsの値）
Feed-‐‑‒forward  NN-‐‑‒
based  LMよりも広いコンテキストを⾒見見ることができる

y(t) = g(V s(t))
softmaxを適⽤用して確率率率化

17

Feed-forward (Deep) Neural Networks vs.
Recurrent Neural Networks (Arisoy et al., 2012)
隠れ層の次元

分散表現の次元• Feed-‐‑‒forward  NN
は隠れ層を増やすことで性能向上• 分散表現を⼤大きくす
るとパープレキシ
ティ低下• Recurrent  NNの⽅方がパフォーマンスが良良い

18

学習された分散表現に、どの程度度の情報が含まれているのか？
• 学習された分散表現の表
現能⼒力力調査   　(Chen et al.
2013)• 分散表現を⼊入⼒力力としてSVMで分類• ⾼高いものでは90%近く、またはそれを上回る性能を達成• 学習された分散表現に単語の持つ性質が含まれている19分散表現を⽤用いて類推の問題を解く(Mikolov et al. 2013)

構⽂文に関する類推問題

形容詞<good – better> <rough - ?>• 名詞<year – years> <law - ?>• 動詞<see – sees> <return - ?>
•

性別の関係

kings  –  king  +  queen  ≒  queens

20

⽬目次
• ⾔言語処理理分野におけるディープラーニング• Deep NNに基づく構造予測• ⾔言語モデル・単語の分散表現• Deep NNを⽤用いた⾔言語の構成性のモデル化
Ø Recursive Neural Networksとその拡張
Ø ⾔言語解析への応⽤用例例• ⾔言語処理理でディープアーキテクチャは必要か？
• まとめ21

単語はベクトル表現を得られる。
ではフレーズは？
x2.23.21.68.67

France.45.70

Australia

grey.22
Italy.64.42.65green
blue.47.68.63.72.58.69

scratch.61
.65

punch

smash?
the country of my birthx1• 構成性原理理（principle of compositionality）

Ø 句句や⽂文の意味（ベクトル）は、それを構成する単語と合成⼿手続きにより決定される• 句句や⽂文の分散表現はどう得たら良良いのか？

Ø 何らかの合成関数を⽤用いて同⼀一のベクトル空間にマップする
22

Recursive Neural Networks(Goller and Küchler 1996; Socher+ 2011)• 句句や⽂文の意味表現を構成的に得る⼀一⼿手法として提案

Ø 2つのベクトルを組み合わせて1つの新たなベクトルを得る
Ø 同⼀一の次元数を持つので、単語と句句、⽂文が⽐比較可能に• 合成⽅方法

Ø ⼦子ベクトルをパラメータ⾏行行列列Wと活性化関数を⽤用いて合成
Ø 合成後のベクトルも、合成前のベクトルと同じ次元数 ⇒ 再帰的な適⽤用が可能
23

RNN (Recursive AE) 応⽤用: 換⾔言認識識(Socher+ 2011)• Autoencoderの学習: 新聞記事（数万分程度度）を利利⽤用• 評価: MSR ⾔言い換えコーパス• 限られた特徴量量でstate-ofthe-artな性能を達成
24

MV-RNN: Matrix-Vector RNN(Socher et al., 2012)Ø 単語や句句の表現ごとに振るまいを変えられるようにRNNを
拡張 ⇒ ベクトルと⾏行行列列を⽤用いて単語や句句を表現Ø ベクトル：どういう意味を持つか、⾏行行列列：意味をどう変更更するか25

SU-RNN: Syntactically Untied RNN(Socher et al., 2013)• 確率率率的⽂文脈⾃自由⽂文法(PCFG)とモデルと識識別モデルの組合せ• 構⽂文カテゴリを考慮したパラメータの分割Ø 構⽂文カテゴリ：冠詞,形容詞, 名詞, 動詞, etc.
Ø カテゴリの違いによる振る舞いを捉える• 構⽂文カテゴリを考慮しないRNNと⽐比較して⼤大幅な性能改善
26

RNTN: Recursive Neural Tensor Network(Socher et al., 2012)• 同⼀一のテンソルVと⾏行行列列Wを合成時に使⽤用Ø パラメータの指数的増加の防⽌止• テンソルによる合成
Ø ⼀一つのテンソル層のスライスが、⼊入⼒力力ベクトルに関するある特定の重み付けをした合成に対応
Ø ２つの特徴ベクトル間の組み合わせを直接考慮
27

RNTN応⽤用: 句句・⽂文の評価極性分類(Socher et al., 2013)• タスク
Ø 単語と構⽂文⽊木の中間ノードに対して、極性付与
Ø 5値: positive++, positive, neutral, negative, negative++• RNN, MV-RNNと⽐比較して⾼高い性能
Ø 極性の反転には、⼊入⼒力力ベクトルの様々な組み合わせを考慮して合成することが有効

28

⽬目次
• ⾔言語処理理分野におけるディープラーニング• Deep NNに基づく構造予測• ⾔言語モデル・単語の分散表現• Deep NNを⽤用いた⾔言語の構成性のモデル化• ⾔言語処理理でディープアーキテクチャは必要か？
• まとめ29

単語の分散表現を得る、Deep NNよりも優れたLog-linearモデルの出現• Log-linearモデル: Skipgram (Mikolov et al., 2013)Ø 隠れ層無し
Ø ポテンシャル関数は、⼊入⼒力力と出⼒力力の単語ベクトルの内積
0exp(vw· v wI )Op(wO |wI ) = PW

0 ·v )
exp(vwIw
w=130

国＋属性＝対応する名詞
各クエリと類似度度の近いベクトル• vec(“ある国の⾸首都”)– vec(“国”) =vec(“⾸首都)• 各国で類似したベクトルが得られている• 単語の持つ意味がベクトルに反映されている
31

Deep NNのような⾮非線形モデルは、従来⼿手法と⽐比較してどの程度度優れているのか？
• ⾮非線形アーキテクチャのNLPタスクにおける有効性を調査 (Wang and Manning 2013)Ø Deep NN (2層、tanhなし、tanhあり) とConditional
Random Fields (CRFs) (Laﬀerty+ 2001) を⽐比較

CRF

Linear NN

Non-linear NN
32

CRFとDeep NNでのポテンシャル関数計算
The luxury auto maker last year …

y, x; ⇥) = ⇥T f (x)⇥f (x) 0 0 0 1 0 0 1 0 …… 1 1 0-1:auto-1:NN(y, x;

Ttanh(⌦T f (x))

tanh

低次元連続値ベクトル⌦+1:last +1:JJ

観測から得られる⾼高次元離離散ベクトル

CRF, ⌦) =luxury
automaker
year
last

Deep NN33

複数タスクでのCRFとDeep NNとの性能⽐比較  (Wang and Manning 2013)

特徴ベクトルが⾼高次元離離散ベクトルの場合
CRF

多層NN

固有表現抽出  dev固有表現抽出  test
固有表現抽出  out-‐‑‒of-‐‑‒domain  1
固有表現抽出  out-‐‑‒of-‐‑‒domain  2

特徴ベクトルが低次元連続値ベクトルの場合(Collobert+ 2011 の word representationを利利⽤用）

CRF

固有表現抽出  dev固有表現抽出  test
固有表現抽出  out-‐‑‒of-‐‑‒domain  1
固有表現抽出  out-‐‑‒of-‐‑‒domain  2

従来⼿手法の性能に劣劣る多層NN

34

複数タスクでのCRFとDeep NNとの性能⽐比較  (Wang and Manning 2013)

⾼高次元離離散ベクトルと低次元連続値ベクトルを組み合わせた場合
固有表現抽出  dev

固有表現抽出  test

固有表
現抽出
OOD1

固有表
現抽出
OOD2

 　CRF ⾼高次元離離散
CRF ⾼高次元離離散+低次元連続多層NN 低次元連続多層NN 低次元連続＋⾼高次元離離散

双⽅方のタイプの特徴ベクトルを組み合わせることで性能向上
35

⾔言語処理理におけるディープラーニング
現状のまとめ• Deep NNアーキテクチャ

Ø ⾔言語モデルは⼀一定の成果が出ている
Ø ⾔言語解析は従来⼿手法（e.g. CRF）からの⼤大幅な改善はない• 分散表現 (Distributed Representation)
Ø 離離散ベクトルとの組み合わせは有効Ø 意味的な類推は⾯面⽩白い結果が出つつある• 表現学習 (Representation Learning)Ø ⾔言語処理理タスクで必要な特徴は画像や⾳音声と⽐比較すると単純 ⇒それほど旨味は無さそう？
v 1単語 >>> 1ピクセル• ⾔言語の構成性のモデル化

Ø Recursive NNは強⼒力力なフレームワークØ 深い⾔言語処理理への応⽤用の可能性を秘めている36

⾔言語処理理におけるディープラーニング
今後の発展• 良良い分散表現の学習⽅方法についてØ 効率率率的かつ優れた表現を得るフレームワークの調査Ø 分散表現を⽤用いた意味関係の類推• フレーズレベルの類義性判定Ø A prevents B ó A reduces the risk of BØ 限定された品詞の組み合わせでは成果が出つつある(Tsubaki et al., 2013)• マルチモーダル
Ø 例例：画像とテキスト
37

まとめ• ⾔言語処理理分野におけるディープラーニングØ 構造予測: Multi-layer NN + Convolution

Ø ⾔言語モデル、分散表現: 多層NN, Recurrent NNØ ⾔言語の構成性の表現: Recursive NN• 現状

Ø 性能⾯面では従来の⾔言語解析技術と⽐比較して良良い性能が得られているとは⾔言い難いØ 分散表現を⽤用いた意味レベルの演算、構成的な意味計算は⾯面⽩白い結果が出つつある• 今後Ø 効率率率的かつ良良質な分散表現の学習⽅方法
Ø フレーズレベルの意味関係の推論論Ø マルチモーダル38