O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

深層学習時代の自然言語処理

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Próximos SlideShares
全力解説!Transformer
全力解説!Transformer
Carregando em…3
×

Confira estes a seguir

1 de 51 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Quem viu também gostou (20)

Anúncio

Semelhante a 深層学習時代の自然言語処理 (20)

Mais de Yuya Unno (20)

Anúncio

Mais recentes (20)

深層学習時代の自然言語処理

  1. 1. 深層学習時代の⾃自然⾔言語処理理 (株)Preferred Infrastructure 海野  裕也(@unnonouno) 2015/01/24 TokyoWebmining
  2. 2. ⾃自⼰己紹介 海野  裕也 l  (株)プリファードインフラストラクチャー l  ⾃自然⾔言語処理理、情報検索索、機械学習、テキストマイ ニングなどの研究開発 l  画像解析とかもやります l  Jubatusの開発など NLP若若⼿手の会共同委員⻑⾧長(2014-) 2
  3. 3. 宣伝:NLP若若⼿手の会(YANS) l  YANSシンポジウム(9⽉月) l  若若⼿手研究者(40歳未満くらい)の若若⼿手研究者が、⾃自 ⾝身の研究を進めるための集まり l  学⽣生やエンジニアの参加も歓迎 l  今年年も合宿をやる予定です l  スポンサーも募集する予定です l  YANS懇(3⽉月) l  ⾔言語処理理学会全国⼤大会期間中に懇親会をします l  単なる飲み会です  J 3
  4. 4. 今⽇日のはなし l  ⾔言語処理理系でよくみる深層学習系の話のざっく りまとめ l  既存の⾔言語処理理技術との関係性について議論論 (←こっちがメイン) 4
  5. 5. おすすめ資料料 l  渡邉陽太郎郎さんのチュートリアルがよくまとまっている l  http://ibisml.org/archive/ibis2013/pdfs/ibis2013-watanabe.pdf 5
  6. 6. ⾔言語処理理固有(?)の問題 1.  ⼊入⼒力力はシーケンス 2.  シーケンスの各要素の異異なり数は膨⼤大(単語) 3.  極めて規則的に各要素が選ばれる(⽂文法) 6
  7. 7. ⾔言語処理理に於ける深層学習を観るポイント l  シーケンスをどう扱うか⼿手法毎に違う l  1つの単語は1つのベクトルで表す l  ⽂文法的な規則が学習できると信じる 7
  8. 8. ⾔言語処理理でよくみる深層(表現)学習3種 l  Recurrent Neural Network l  Recursive Neural Network l  Skip-gram 8
  9. 9. ⾔言語処理理でよくみる深層(表現)学習3種 l  Recurrent Neural Network l  Recursive Neural Network l  Skip-gram 9 Skip-gramは このあと@piroyoungさんが 説明してくれる!
  10. 10. l  Recurrent Neural Network l  Recursive Neural Network 10
  11. 11. Recurrent Neural Network (RNN) l  系列列に対するネットワーク l  隠れ層をコピーして、次の⼊入 ⼒力力に使うところがポイント l  必ずしも予測は必要ない 11 ⽂文字、単語 時刻  t-‐‑‒1  の隠れ層 隠れ層 予測 コピー
  12. 12. 詳しいことは得居さんの資料料を⾒見見て下さい http://www.slideshare.net/beam2d/pfi-seminar-20141030rnn 12 オススメ
  13. 13. つなげて書くと・・・ 13 ⽂文字1 時刻  0  の隠れ層 隠れ層 時刻1の 予測 ⽂文字2 時刻2の 予測 ⽂文字3 時刻3の 予測
  14. 14. ふつうのニューラルネットとの関係 l  横⽅方向に並べて書くと・・・ 14 ここだけみると、⽂文 ⻑⾧長と同じ⻑⾧長さのニュー ラルネットワーク
  15. 15. Recurrent Neural Network Language Model (RNNLM) [Mikolov+10] l  RNNを使った⾔言語モデル l  次の単語を予測する l  隠れ層に⽂文脈情報が埋め込ま れていくイメージ 15 ⽂文字、単語 時刻  t-‐‑‒1  の隠れ層 隠れ層 次の⼊入⼒力力 の予測 コピー
  16. 16. Back Propagation Through Time (BPTT)で学習 l  展開した状態で誤差逆伝搬(Back Propagation)する と、時間をさかのぼって学習しているように⾒見見える 16
  17. 17. 深いネットワークと同様の問題が発⽣生する l  何度度も掛け算が発⽣生するので、重みが爆発したり、勾配 が消失する問題が発⽣生する l  そのため、⻑⾧長期依存を学習できない 17
  18. 18. Long Short-Term Memory l  勾配が消えないようにエラーを内部に貯めこむ構造に なっている l  ⼊入出⼒力力のゲートを作って、情報を選択的に流流すようにす る(流流すタイミングを学習するイメージ) 18 情報が貯 まる 出⼒力力タイ ミング ⼊入⼒力力タイ ミング
  19. 19. 昨年年後半からLSTMが流流⾏行行(?) l  Sequence to sequenceのLSTMで機械翻訳 [Sutskever +14] l  原⽂文を全部⾷食わせてベクトルを作って、そこから翻訳⽂文を⽣生成 する l  同じ⽅方法を構⽂文解析に適⽤用 [Vinyals+15] l  いずれもGoogle 19
  20. 20. l  Recurrent Neural Network l  Recursive Neural Network 20
  21. 21. Recursive Neural Network (RNN) l  2つの単語の表現ベクトルを組合せて、フレーズ の表現ベクトルを構成する l  再帰的に繰り返すことで、⽂文全体の表現ベクト ルを作る 21
  22. 22. RNNによる構⽂文解析 [Socher+11] l  隣隣接単語からフレーズを 構成する l  構成を繰り返すことで、 ⽊木ができる l  画像の構造推定にも使え る 22
  23. 23. RNNによる評判分析 [Socher+13] l  構⽂文⽊木に沿ってベクトルを再帰的に構築して、分類する l  各フレーズ単位でもpos/negの判定ができる 23
  24. 24. RecurrentはRecursiveの⼀一種? l  Recursiveでは、普通は⽊木構造(構⽂文⽊木)に沿ってベク トルを再帰的に構築する l  Recurrentは、⽊木ではなくてシーケンスに沿って構築し ていると⾒見見ると、Recursiveの特殊ケースに思える・・ 24 x1 x2 x3 x4 h1 h2 h3
  25. 25. 議論論:Recursive Neural NetworkとConvolutional Neural Network (CNN) の関係? l  いずれも隣隣接要素から新しいベクトルを構成している点 で似ている l  CNNはどのような構造があるか仮定を置いていない点、 繰り返しの回数が予め決まっている点、層毎に重みが違 う点で異異なる 25
  26. 26. Recurrent vs Recursive いずれも⼊入⼒力力(シーケンス)に対して単⼀一のベク トルが作られる l  Recurrentは前から順番にベクトルを構成する l  Recursiveは⽊木構造に沿ってベクトルを構成する 26
  27. 27. ここからが本題 27
  28. 28. 今⽇日の議論論 ⾃自然⾔言語処理理において 深層学習のアプローチは 何が嬉しいのか考えてみる 28
  29. 29. 構⽂文解析のことを考える・・・ l  構⽂文解析とは⽂文の構造を推定するタスク l  「構造」は、ふつう句句構造か係り受け構造 l  もっとも標準的な⾃自然⾔言語処理理のタスク 29 ⽂文 私は りんごを ⾷食べた 動詞句句 私は りんごを ⾷食べた
  30. 30. 余談:プログラミング⾔言語の構⽂文解析の場合 ⾃自然⾔言語と違って・・・ l  曖昧性がない(2通りの解釈は許されない) l  線形の計算量量で解析できる(CKY法はO(n3)時 間) ことが強く要請される 30
  31. 31. 構⽂文解析⼿手法(特に係り受け)の2⼤大派閥 l  Transition-based(局所最適型) l  ⽂文を前から順番に読んで、スタックに積んでいく l  Shift-Reduce法 l  Graph-based(⼤大域最適型) l  全ての構造の候補からスコアの最⼤大となる⽊木を効率率率 的に選ぶ l  MST法、Eisner法、CKYアルゴリズム 31
  32. 32. Shift-Reduce法(1/2) l  単語を前から順番に読み込んで、スタックに積みながら ⽊木を構築していく l  普通は単語を読むたびに決定的に「操作」を⾏行行うため、 ⽂文⻑⾧長に対して線形時間で解析できる 32
  33. 33. Shift-Reduce法(2/2) l  ⽂文を前から読んで、スタックに積む(Shift)か消す (Reduce)の分類を繰り返す l  操作のたびにスタックの中⾝身は変化する l  スタックの中⾝身と、⽂文中の単語からいずれの操作をする か判断する 33 時間変化
  34. 34. スタックの操作の仕⽅方で⼿手法が変わる l  前から順番に読むのは同じだが、スタックに対 する操作の⽅方法で亜種が沢⼭山ある l  Arc-Eager / Arc-Standardなど l  どういう操作体系にするかが性能にも影響を与 える 34
  35. 35. RecurrentとShift-Reduce法の類似性 l  前から順番に読んでいく l  内部状態(隠れベクトル or スタック)を次々に更更新し ていく 35 内部状態
  36. 36. RNNの隠れ状態の中にスタック相当の情報が埋め込 まれている??? 36 ? いい感じのスタック操作になるように学習している?
  37. 37. ⽂文脈⾃自由⽂文法(context free grammar, CFG) l  チョムスキー階層の3番⽬目 l  書き換え規則の左辺は1つの⾮非終端記号し か現れない 37 X à Y Z X à α
  38. 38. 確率率率的⽂文脈⾃自由⽂文法(PCFG)による構⽂文解析 l  ⽂文脈⾃自由⽂文法の各規則にスコア(確率率率)をつけて、スコ アの総和が最⼤大になる⽊木を探索索する l  データに基づいてスコアは決められる 38 名詞句句 ⾚赤い りんごの ⽊木 名詞句句 名詞句句 ⾚赤い りんごの ⽊木 名詞句句>
  39. 39. CKYアルゴリズム l  局所的な規則の総和が最⼤大となる⽊木を探すのは、動的計 画法によりO(n3)時間で求められる(CKY) 39 区間 [i, j) の最⼤大スコアは s(i, j) = maxk s(i, k) + s(k, j) + t(i, j, k) i k j
  40. 40. RecursiveとPCFGとの類似性 l  いずれも、⼊入⼒力力列列に対して構造を再帰的に構築 している l  そもそもRecursiveは構⽂文⽊木をつかっているし、 そもそも構⽂文解析タスクも解いてる・・・ 40
  41. 41. 品詞の粒粒度度では⾜足りない l  同じ品詞でも振る舞いは異異なる l  ⾃自動詞、他動詞、⽬目的語の数、補語の有無 etc. l  時制や⼈人称などの細かい規則が表現しきれない l  無限に品詞を増やすことになる・・・? 41
  42. 42. 語彙ごとに振る舞いが異異なる l  どの語を使っているかという情報が構⽂文解析に 有効であることがわかっている l  例例えばgoなら、toがつきやすいなど l  単語⾃自体を特徴として学習することは有効 l  しかし、頻度度の低い単語の学習ができな い・・・ 42
  43. 43. 品詞  vs 語 43 品詞 語 •  数が少ない •  表現力不足 •  数が多すぎる •  表現力は十分 この辺にいいのがあるは ず・・・
  44. 44. 品詞以上語以下の表現を獲得する歴史 l  HPSGやCCGといった、語彙情報に統語的な振る舞いを 記述する⽂文法 l  PCFGに隠れ変数を持たせて、振る舞いの似ている単語 をまとめる⼿手法 l  こうした情報を単語ベクトルの中で表現されるのでは? (深層学習系アプローチ) 44
  45. 45. 主辞駆動句句構造⽂文法(HPSG) l  それぞれの語に対して、⽂文法的な振る舞い(感覚的には ルール)を記述する l  振る舞いに応じて構造を推定できる 45 語彙項目 [宮尾12]など参照
  46. 46. Recursiveでこうした語彙項⽬目相当の情報が獲得で きている??? 46 ?
  47. 47. ⾔言語処理理における深層学習に期待すること l  ⽂文法(規則)によるアプローチは構⽂文解析で有 効だった l  複雑な⽂文法に相当するような情報をベクトル空 間の中に埋め込んでくれる? l  構⽂文解析以外のタスクでも複雑な規則相当の情 報を学習してくれたら嬉しい? 47
  48. 48. まとめ l  ⾃自然⾔言語処理理でよく⾒見見られる深層学習を紹介した l  Recurrent Neural Networkは状態をもって前から順に読む l  Recursive Neural Networkは構造に沿ってベクトルを構築する l  RecurrentはShift-Reduceパーザーの状態を埋め込んで いるようにみえる l  RecursiveはHPSGパーザーの語彙項⽬目相当の情報を埋め 込んでいるように⾒見見える l  いずれも⾮非⾃自明な規則を学習によって獲得してくれてい る・・・のかな・・? 48
  49. 49. 参考⽂文献 l  [Mikolov+10] T Mikolov, M Karafiát, L Burget, J Cernocký, S Khudanpur. Recurrent neural network based language model. Interspeech 2010. l  [Sutskever+14] Ilya Sutskever, Oriol Vinyals, Quoc V. Le. Sequence to Sequence Learning with Neural Networks. NIPS 2014. l  [Vinyals+15] Oriol Vinyals, Lukasz Kaiser, Terry Koo, Slav Petrov, Ilya Sutskever, Geoffrey Hinton. Grammar as a foreign language. ICLR 2015. 49
  50. 50. 参考⽂文献 l  [Socher+11] Richard Socher, Cliff Lin, Andrew Y. Ng, Christopher D. Manning. Parsing Natural Scenes and Natural Language with Recursive Neural Networks. ICML 2011 l  [Socher+13] Richard Socher, Alex Perelygin, Jean Wu, Jason Chuang, Chris Manning, Andrew Ng, Chris Potts. Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank. EMNLP 2013. 50
  51. 51. 参考⽂文献 l  [渡邉13] 渡邉陽太郎郎. ⾃自然⾔言語処理理分野におけるディープラーニングの現状. IBIS 2013 チュートリアル. http://ibisml.org/archive/ibis2013/pdfs/ibis2013- watanabe.pdf l  [得居14] 得居誠也. Recurrent Neural Network. PFI seminar. http://www.slideshare.net/beam2d/pfi-seminar-20141030rnn l  [宮尾12] 宮尾祐介. ⾃自然⾔言語処理理における構⽂文解析と⾔言語理理論論の関係. http://www.ism.ac.jp/~daichi/workshop/2012-parsing/ parsing2012-miyao.pdf 51

×