Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
深層ニューラルネットワーク
を用いた日本語処理
首都大学東京
システムデザイン学部
小町守
2016/06/30
人工知能学会第71回人工知能セミナー
Deep Learning技術の仕組みと自然言語処理への応
用
自己紹介: 小町守(こまちまもる)
2
 2005.03 東京大学教養学部基礎科学科
科学史・科学哲学分科卒業
 2010.03 奈良先端大・博士後期課程修了
博士(工学) 専門: 自然言語処理
 2010.04〜2013.03 奈良先端...
自然言語処理×深層学習マップ
(東大辻井研+NAIST 松本研 OB)
3
東北大学
乾・岡崎研究室
東京大学
鶴岡研究室
首都大学東京
小町研究室
豊田工業大学
知能数理研究室
NAIST
松本研究室
深層学習@TMU
 機械翻訳(4人)
 対話(3人)
 評判分析・文書要約(2人)
 形態素解析(2人)
 分散表現(1人)
4
※写真はイメージです
自然言語処理における深層学習
 表現学習
 (できるだけ教師なしで)
有用な特徴表現を学習したい!
 word2vec, GloVe, ...
→本日はこちらの話はしません
 深層ニューラルネットのアーキテクチャ
 (基本的に教師あり...
縦に深い深層学習
 フィードフォワードNN, CNN, ...
6
深
い
入力層
隠れ層
出力層
深層学習マジやばい
😍
CNN を使った評価極性分類
7
word2vec による
1-hot ベクトルの
単語埋め込み表
いろんな窓幅や
素性を使った
畳み込み層
プーリング層 出力層
(全結合)
文の分散表現
(n次元の単語
がk個ある)
 Yoon Kim. ...
横に深い深層学習
 リカレント NN
8
入力層
隠れ層
出力層
深層学習
マジ やばい
マジ やばい
</s>
深い
RNN を用いた言語モデル
9
 Mikolov et al.
Recurrent Neural
Network Based
Language Model.
Interspeech2010.
→word2vec の作者の
(w2vより前の)研...
深層学習を使えばマルチモーダルな
入力から言語生成できます
 画像だけからキャプションを生成
http://deeplearning.cs.toronto.edu/i2t
http://googleresearch.blogspot.jp/2...
斜めに深い深層学習
 再帰的 (recursive) NN
11
深層学習 マジ やばい
😍
フレーズベクトルの畳み
込みで文ベクトルを構成
😋😑 😑
😍
「マジやばい」というフ
レーズベクトルを単語ベ
クトルから再帰的に構成
再帰的ニューラルネットワーク
を用いた画像認識と構文解析
12
• Socher et al. Parsing
Natural Scenes and
Natural Language with
Recursive Neural
Networks...
言語処理における深層ニューラル
ネットワークのアーキテクチャ
 多層ニューラルネットワーク
=フィードフォワードNN, CNN, 多層オー
トエンコーダ, ...
 (広義の)RNN
 リカレントニューラルネットワーク
=(狭義の)rec...
本日の目次
 深層ニューラルネットのアーキテクチャ
 深層学習と日本語処理のケーススタディ
 識別タスク:評価極性分類
 生成タスク:機械翻訳
 深層学習を始めたい人へのメッセージ
14
識別タスク: 評価極性分類
15
 文がポジティブかネガティブか分類
 リサーチクエスチョン:
どんな手がかりを使えばこれがポジティ
ブなのかネガティブなのか分かる?
文の評価極性はフレーズ
(部分木)から再帰的に計算できる
16
Nakagawa et al. Dependency Tree-based Sentiment Classification using CRFs with Hidd
Variab...
再帰的ニューラルネットワークで
感情極性分類
17
😀素性テンプレートの設計は不要
😩フレーズ単位でポジネガのタグ
がついたデータが必要
 Socher et al. Recursive Deep Models for Semantic
Co...
多層オートエンコーダを用いた
日本語評価極性分類
18
Zhang and Komachi. Japanese Sentiment Classification with Stacked Denoising Auto-
Encoder usin...
日本語評価極性分類では多層オー
トエンコーダ(SdA)が最も効果的
19MFS=最頻出タグ (neg), Tree-CRF=Nakagawa et al. (2010), LogRes=ロジスティック
回帰, BoF=Bag-of-featur...
分類問題における課題
 分析の問題
 学習結果の解釈が難しい
→注意 (attention) で可視化
 タスク設計の問題
 クラス数が未知(e.g. 共参照解析)の場合
→Vinyals et al. Pointer Networks...
本日の目次
 深層ニューラルネットのアーキテクチャ
 深層学習と日本語処理のケーススタディ
 識別タスク:評価極性分類
 生成タスク:機械翻訳
 深層学習を始めたい人へのメッセージ
21
 ある言語で書かれた文を別の言語に翻訳
 リサーチクエスチョン:
超多クラス分類問題をどう解くか?
アライメントをどうモデル化すればいい?
生成タスク: 機械翻訳
22https://twitter.com/haldaume3/status...
目的
言語
対訳コーパスから統計的に学習
 ノイジーチャネルモデル
(実際にはこれを線形対数モデルにしたもの)
23
ˆe = argmax
e
P(e| f ) = argmax
e
P( f | e)P(e)
対訳コーパス
原言語 目的
...
2つのRNNを組み合わせて系列変換
(sequence to sequence) で言語生成
 エンコーダ・デコーダアプローチ
24深層学習 マジ やばい
</s>
DL is
DL is really cool
really cool </...
入力と出力の対応は
注意 (attention) しつつデコード
 エンコーダ側の隠れ層の重み付き和
25深層学習 マジ やばい </s>
DL is
is really cool
really cool </s>
文ベクトルを1つ
に圧縮せ...
既存の統計的機械翻訳を
ニューラル翻訳が抜きつつあります
 Luong et al. Effective Approaches to Attention-based
Neural Machine Translation. EMNLP 2015...
系列だけでなく、木構造にも
アテンションすることができます
 Eriguchi et al. Tree-to-Sequence Attentional Neural Machine
Translation. ACL 2016.
 エンコーダ...
生成タスクにおける課題
 未知語の問題
 分類問題なので未知語は出せない
→未知語処理, CopyNet, ...
 評価の問題
 単語単位のクロスエントロピーだと過学習
→最終的に最大化したい評価尺度 (e.g. BLEU)
による最...
本日の目次
 深層ニューラルネットのアーキテクチャ
 深層学習と日本語処理のケーススタディ
 識別タスク:評価極性分類
 生成タスク:機械翻訳
 深層学習を始めたい人へのメッセージ
29
なぜ深層学習がうまく行くのか?
①大規模データを計算機で殴る
 うまく行っている(ように見える)タス
クは大体大規模データ(コーパスで言え
ば数百万文規模)がある
 「過学習」してもいいタスク設定
 最適化・正則化などのアルゴリズムの発
...
深層学習をするには GPU が必要?
 CPU より数倍以上高速であることが多い
ので、とりあえず1枚購入するのがお勧め
 ゲーム用 PC だと20万円〜
 ネットワーク構造が可変
(言語処理でありがち)
な場合、そこまで速くは
ならない...
なぜ深層学習がうまく行くのか?
②離散の世界から連続の世界へ
 Klein and Manning. Accurate
Unlexicalized Parsing. ACL
2003.
ノードの深さ・幅が可変
32
Parent annota...
素性エンジニアリングが不要でも
パラメータチューニングが大変?
 パラメータ設定に敏感なパラメータとそ
うでないパラメータがある
 最適化アルゴリズムを学習するという話まで
ある→Andrychowicz et al. Learning t...
深層学習を始めたい人への
take-home message
 大規模データ・計算機資源が必要
 GPGPU に詳しくなる
 自分でデータを作るならクラウドソーシング
できるかどうか(ノウハウ含め)が分かれ目
 グループで情報共有
 ...
本日のまとめ
 自然言語処理における3種類の深層学習
 縦、横、斜めに積み上げる
 深層学習のケーススタディ
 認識タスクでは素性エンジニアリングの軽減
と頑健性の向上による高い分類精度の達成
 生成タスクではRNNで長距離依存をモデ...
リファレンス(2016年)
 深層学習による自然言語処理の研究動向
http://www.slideshare.net/stairlab/ss-
61806151
 最近のDeep Learning界隈における
Attention事情
ht...
リファレンス(2015年)
 言語と知識の深層学習
http://www.slideshare.net/unnonouno/ss-
52283060
 ニューラルネットに基づく機械翻訳
http://phontron.com/slides/...
Upcoming SlideShare
Loading in …5
×

深層ニューラルネットワークを用いた日本語処理

5,149 views

Published on

人工知能学会第71回人工知能セミナー(2016年6月30日) 「Deep Learning技術の仕組みと自然言語処理への応用」にて発表した、「深層ニューラルネットワークを用いた日本語処理」のスライドです。(下に概要を載せますが、単語分割については結局話していないので、特に「日本語処理」の話はしていません)

概要:
自然言語処理分野における深層学習は,word2vec に代表される表現学習と,RNNのように系列データや木構造を持ったデータに対する深層ニューラルネットワークを用いた構造の学習に大別されます.本セミナーでは後者の概要を説明し,評価極性分類や機械翻訳,単語分割などいくつかの応用例についてご紹介します.

Published in: Engineering
  • Be the first to comment

深層ニューラルネットワークを用いた日本語処理

  1. 1. 深層ニューラルネットワーク を用いた日本語処理 首都大学東京 システムデザイン学部 小町守 2016/06/30 人工知能学会第71回人工知能セミナー Deep Learning技術の仕組みと自然言語処理への応 用
  2. 2. 自己紹介: 小町守(こまちまもる) 2  2005.03 東京大学教養学部基礎科学科 科学史・科学哲学分科卒業  2010.03 奈良先端大・博士後期課程修了 博士(工学) 専門: 自然言語処理  2010.04〜2013.03 奈良先端大 助教(松本裕治研究室)  2013.04〜 首都大学東京 准教授(自然言語処理研究室)
  3. 3. 自然言語処理×深層学習マップ (東大辻井研+NAIST 松本研 OB) 3 東北大学 乾・岡崎研究室 東京大学 鶴岡研究室 首都大学東京 小町研究室 豊田工業大学 知能数理研究室 NAIST 松本研究室
  4. 4. 深層学習@TMU  機械翻訳(4人)  対話(3人)  評判分析・文書要約(2人)  形態素解析(2人)  分散表現(1人) 4 ※写真はイメージです
  5. 5. 自然言語処理における深層学習  表現学習  (できるだけ教師なしで) 有用な特徴表現を学習したい!  word2vec, GloVe, ... →本日はこちらの話はしません  深層ニューラルネットのアーキテクチャ  (基本的に教師ありで) 従来のNLPでできなかったことをしたい! →本日はこちらの話をします 5
  6. 6. 縦に深い深層学習  フィードフォワードNN, CNN, ... 6 深 い 入力層 隠れ層 出力層 深層学習マジやばい 😍
  7. 7. CNN を使った評価極性分類 7 word2vec による 1-hot ベクトルの 単語埋め込み表 いろんな窓幅や 素性を使った 畳み込み層 プーリング層 出力層 (全結合) 文の分散表現 (n次元の単語 がk個ある)  Yoon Kim. Convolutional Neural Networks for Sentence Classification. EMNLP 2014. 😀素性テンプレートの設計は不要 言語非依存
  8. 8. 横に深い深層学習  リカレント NN 8 入力層 隠れ層 出力層 深層学習 マジ やばい マジ やばい </s> 深い
  9. 9. RNN を用いた言語モデル 9  Mikolov et al. Recurrent Neural Network Based Language Model. Interspeech2010. →word2vec の作者の (w2vより前の)研究  音声認識・機械翻訳 などで広く利用 使う文脈に明確な境目がない 品詞のような明確なクラスがない
  10. 10. 深層学習を使えばマルチモーダルな 入力から言語生成できます  画像だけからキャプションを生成 http://deeplearning.cs.toronto.edu/i2t http://googleresearch.blogspot.jp/2014/11/a-picture-is- worth-thousand-coherent.html 10
  11. 11. 斜めに深い深層学習  再帰的 (recursive) NN 11 深層学習 マジ やばい 😍 フレーズベクトルの畳み 込みで文ベクトルを構成 😋😑 😑 😍 「マジやばい」というフ レーズベクトルを単語ベ クトルから再帰的に構成
  12. 12. 再帰的ニューラルネットワーク を用いた画像認識と構文解析 12 • Socher et al. Parsing Natural Scenes and Natural Language with Recursive Neural Networks. ICML 2011. • 隣接する画像領域・単 語から再帰的に構造を 認識する →Staford Parser に統 合 (ACL 2013)
  13. 13. 言語処理における深層ニューラル ネットワークのアーキテクチャ  多層ニューラルネットワーク =フィードフォワードNN, CNN, 多層オー トエンコーダ, ...  (広義の)RNN  リカレントニューラルネットワーク =(狭義の)recurrent NN, LSTM, GRU, ...  再帰的ニューラルネットワーク =recursive NN, Tree-LSTM, ... 13 認 識 + 生 成 認 識
  14. 14. 本日の目次  深層ニューラルネットのアーキテクチャ  深層学習と日本語処理のケーススタディ  識別タスク:評価極性分類  生成タスク:機械翻訳  深層学習を始めたい人へのメッセージ 14
  15. 15. 識別タスク: 評価極性分類 15  文がポジティブかネガティブか分類  リサーチクエスチョン: どんな手がかりを使えばこれがポジティ ブなのかネガティブなのか分かる?
  16. 16. 文の評価極性はフレーズ (部分木)から再帰的に計算できる 16 Nakagawa et al. Dependency Tree-based Sentiment Classification using CRFs with Hidd Variables. HLT-NAACL 2010. さっき見た構造と 似ている!!!!😀統語情報を活用することができる 😩素性テンプレートの設計が必要
  17. 17. 再帰的ニューラルネットワークで 感情極性分類 17 😀素性テンプレートの設計は不要 😩フレーズ単位でポジネガのタグ がついたデータが必要  Socher et al. Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank. EMNLP 2013.
  18. 18. 多層オートエンコーダを用いた 日本語評価極性分類 18 Zhang and Komachi. Japanese Sentiment Classification with Stacked Denoising Auto- Encoder using Distributed Word Representation. PACLIC 2015. 入 力 層 出 力 層 隠 れ 層 隠 れ 層 隠 れ 層 😀素性テンプレートの設計は不要 言語非依存 全 結 合 全 結 合 全 結 合 全 結 合
  19. 19. 日本語評価極性分類では多層オー トエンコーダ(SdA)が最も効果的 19MFS=最頻出タグ (neg), Tree-CRF=Nakagawa et al. (2010), LogRes=ロジスティック 回帰, BoF=Bag-of-features で文ベクトル構成, w2v=word2vec の平均で文ベクトル構成
  20. 20. 分類問題における課題  分析の問題  学習結果の解釈が難しい →注意 (attention) で可視化  タスク設計の問題  クラス数が未知(e.g. 共参照解析)の場合 →Vinyals et al. Pointer Networks. NIPS 2015. 20
  21. 21. 本日の目次  深層ニューラルネットのアーキテクチャ  深層学習と日本語処理のケーススタディ  識別タスク:評価極性分類  生成タスク:機械翻訳  深層学習を始めたい人へのメッセージ 21
  22. 22.  ある言語で書かれた文を別の言語に翻訳  リサーチクエスチョン: 超多クラス分類問題をどう解くか? アライメントをどうモデル化すればいい? 生成タスク: 機械翻訳 22https://twitter.com/haldaume3/status/732333418038562816
  23. 23. 目的 言語 対訳コーパスから統計的に学習  ノイジーチャネルモデル (実際にはこれを線形対数モデルにしたもの) 23 ˆe = argmax e P(e| f ) = argmax e P( f | e)P(e) 対訳コーパス 原言語 目的 言語 ①アライメント ②ルール抽出 P(f | e) 翻訳モデル 目的 言語 目的 言語 P(e) 言語モデル ③デコード argmax ④最適化 BLEU 原言語 目的 言語 生コーパス 開発コーパス (参照訳)
  24. 24. 2つのRNNを組み合わせて系列変換 (sequence to sequence) で言語生成  エンコーダ・デコーダアプローチ 24深層学習 マジ やばい </s> DL is DL is really cool really cool </s> エ ン コ ー ダ デ コ ー ダ 原言語の単語ベク トルから文ベクト ルをエンコード
  25. 25. 入力と出力の対応は 注意 (attention) しつつデコード  エンコーダ側の隠れ層の重み付き和 25深層学習 マジ やばい </s> DL is is really cool really cool </s> 文ベクトルを1つ に圧縮せず、ど の部分を使うか を「注意」する DL<s>
  26. 26. 既存の統計的機械翻訳を ニューラル翻訳が抜きつつあります  Luong et al. Effective Approaches to Attention-based Neural Machine Translation. EMNLP 2015. 26
  27. 27. 系列だけでなく、木構造にも アテンションすることができます  Eriguchi et al. Tree-to-Sequence Attentional Neural Machine Translation. ACL 2016.  エンコーダの句構造にアテンションし、統語 構造を考慮したニューラル英日翻訳を実現 27
  28. 28. 生成タスクにおける課題  未知語の問題  分類問題なので未知語は出せない →未知語処理, CopyNet, ...  評価の問題  単語単位のクロスエントロピーだと過学習 →最終的に最大化したい評価尺度 (e.g. BLEU) による最適化, カリキュラム学習, ... 28
  29. 29. 本日の目次  深層ニューラルネットのアーキテクチャ  深層学習と日本語処理のケーススタディ  識別タスク:評価極性分類  生成タスク:機械翻訳  深層学習を始めたい人へのメッセージ 29
  30. 30. なぜ深層学習がうまく行くのか? ①大規模データを計算機で殴る  うまく行っている(ように見える)タス クは大体大規模データ(コーパスで言え ば数百万文規模)がある  「過学習」してもいいタスク設定  最適化・正則化などのアルゴリズムの発 展と、大規模データを扱う技術の進歩  過学習しないように「過学習」 30
  31. 31. 深層学習をするには GPU が必要?  CPU より数倍以上高速であることが多い ので、とりあえず1枚購入するのがお勧め  ゲーム用 PC だと20万円〜  ネットワーク構造が可変 (言語処理でありがち) な場合、そこまで速くは ならないこともあるが… 31 https://flic.kr/p/rNx69d
  32. 32. なぜ深層学習がうまく行くのか? ②離散の世界から連続の世界へ  Klein and Manning. Accurate Unlexicalized Parsing. ACL 2003. ノードの深さ・幅が可変 32 Parent annotation (親カテゴリのラベルで細分化)
  33. 33. 素性エンジニアリングが不要でも パラメータチューニングが大変?  パラメータ設定に敏感なパラメータとそ うでないパラメータがある  最適化アルゴリズムを学習するという話まで ある→Andrychowicz et al. Learning to Learn by Gradient Descent by Gradient Descent. arXiv 2016.  どのようなタスクで何が効くか、につい てはノウハウがあるかも……  完全に毎回試行錯誤、ではないが、最初はし ばらく試行錯誤は不可避 33
  34. 34. 深層学習を始めたい人への take-home message  大規模データ・計算機資源が必要  GPGPU に詳しくなる  自分でデータを作るならクラウドソーシング できるかどうか(ノウハウ含め)が分かれ目  グループで情報共有  NLP-DL勉強会, Twitter, Slack, ...  いたるところレッドオーシャン  arXiv に出た翌週に実装が出たりするのはザ ラ 34
  35. 35. 本日のまとめ  自然言語処理における3種類の深層学習  縦、横、斜めに積み上げる  深層学習のケーススタディ  認識タスクでは素性エンジニアリングの軽減 と頑健性の向上による高い分類精度の達成  生成タスクではRNNで長距離依存をモデル化、 アテンションで文の意味表現の深化  深層学習は自然言語処理でもブレイクス ルー(特に大規模データを用いた生成) 35
  36. 36. リファレンス(2016年)  深層学習による自然言語処理の研究動向 http://www.slideshare.net/stairlab/ss- 61806151  最近のDeep Learning界隈における Attention事情 http://www.slideshare.net/yutakikuchi927/d eep-learning-nlp-attention 36
  37. 37. リファレンス(2015年)  言語と知識の深層学習 http://www.slideshare.net/unnonouno/ss- 52283060  ニューラルネットに基づく機械翻訳 http://phontron.com/slides/neubig15kyoto- slides.pdf  自然言語処理におけるディープラーニングの 発展 http://2boy.org/~yuta/publications/DL4NL- tsuboi-kashimalab.pdf 37

×