全脳アーキテクチャ若⼿の会 カジュアルトーク (2017.1.31)
Convolutional Neural Networks
で⾃然⾔語処理をする
全脳アーキテクチャ若⼿の会
法政⼤学⼤学院 理⼯学研究科 修⼠課程
島⽥ ⼤樹
⾃⼰紹介
島⽥ ⼤樹 (SHIMADA Daiki)
@sheema_sheema (Twitter)
• 法政⼤学⼤学院 理⼯学研究科 M2
• 知的情報処理研究室(彌冨研)
• 画像解析による授業受講者の態度推定
• 画像の半教師あり学習
• ⾃然⾔語⾔語処理 (⽇本語)
• 全脳アーキテクチャ若⼿の会 副代表
• 会全体の運営 (運営メンバー⼤募集中!!)
1
前回までのあらすじ
l カジュアルにCNN系画像認識⽂献64本ノック!
http://www.slideshare.net/sheemap/convolutional-neural-networks-wbafl2
2016/02: Convolutional Neural Networks (CNN) の動向
2
l 2016年前半までのGANによる画像⽣成事例を紹介
http://www.slideshare.net/sheemap/adversarial-networks-wbafl3
2016/06: Generative Adversarial Nets (GAN) の画像⽣成
しかし,今回は ”⾃然⾔語処理 (NLP)” 特集…
今⽇のおはなし
l なんでNLPでCNNなのか
l 実際のところNLPでどれだけCNNが使えるのか
l 近年のCNN x NLPの動向をチェック
l どんなタスクがどれだけ上⼿くいっているのか
l ⽇本語は?
2017/01: ⾃然⾔語処理にCNNの波はやってくるか?
3
⽬次
全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31)
ConvNetで⾃然⾔語処理をする
1. Why CNN in NLP?
2. CNN x NLPの研究動向
3. ⽇本語NLPへのCNN適⽤の試み
4. まとめ
4
Why CNN in NLP?
l もともと画像を処理することを想定して提案された
l ⾃然⾔語処理では,1次元⽅向のみの畳み込みを⾏う
Convolutional Neural Networks
(LeCun & Bengio, 1995), (LeCun+, 1998)
5
Y. LeCun, et al.: Gradient Based Learning Applied to Document Recognition. Procs. of IEEE, 1998.
Y. LeCun and Y. Bengio.: Convolutional Networks for Images, Speech, and Time-Series. The handbook of brain theory
and neural networks, 1995.
2D-conv. 1D-conv.
Why CNN in NLP?
RNN vs. CNN
6
Recurrent Neural Networks Convolutional Neural Networks
l 前時間の隠れ状態をフィードバック
l 時間⽅向にforward / backward を
展開する (BPTT)
l 時間⽅向にカーネルを⾛査
l 計算の並列化がし易いため⾼速
l 時間的に離れた情報間の関係も学習出来る
⽬次
全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31)
ConvNetで⾃然⾔語処理をする
1. Why CNN in NLP?
2. CNN x NLPの研究動向
3. ⽇本語NLPへのCNN適⽤の試み
4. まとめ
7
CNN x NLPの研究動向
l 単語ベクトルをword2vecによって予め学習
l Sentence-levelの分類タスク7つについて評価
l 5 / 7で従来⼿法を上回る性能
Sentence Classification (Kim, 2014)
8
Y. Kim: Convolutional Neural Networks for Sentence Classification. EMNLP, 2014.
CNN x NLPの研究動向
l ⽂字レベルでテキストを扱った⽂書分類
l アルファベット, 数字, 記号を one-hot encoding
l シソーラスを使って類語で置換 (data augmentation)
Character-level Document Classification (Zhang+, 2015)
9
X. Xhang et al.: Character-level Convolutional Networks for Text Classification. NIPS, 2015.
CNNの畳み込み層のパラメータ
CNN x NLPの研究動向
Character-level Document Classification (Zhang+, 2015)
10
X. Xhang et al.: Character-level Convolutional Networks for Text Classification. NIPS, 2015.
Lg. :深いモデル
Sm. :浅いモデル
Th. :類語置換
w2v :word2vec
Lk. :lookup table
Full :⼤⽂字/⼩⽂字
CNN x NLPの研究動向
l RNNベースの画像⽣成⼿法を提案
l convolutionでRNNライクな計算をする⽅法の提案
l masked convolution
l 現時間より先の情報を畳み込んでしまわないように,
畳み込みカーネルをマスクする
Pixel Recurrent Neural Networks (Van den Oord+, 2016a)
11
A. Van den Oord, et al.: Pixel Recurrent Neural Networks. ICML, 2016.
CNN x NLPの研究動向
l ByteNet と呼ばれるCNNベースのニューラル翻訳モデル
l Dilated CNN による Encoder-Decoderモデル
Machine Translation (Van den Oord+, 2016b)
12
A. Van den Oord et al.: Neural Machine Translation in Liner Time. arXiv: 1610.10099, 2016.
Negative log-likelihood of bits/byte
on Hutter Prize Wikipedia
CNN x NLPの研究動向
l ByteNet と呼ばれるCNNベースのニューラル翻訳モデル
l 近年のRNN系の⼿法に近く,より⾼速に動作する
Machine Translation (Van den Oord+, 2016b)
13
A. Van den Oord et al.: Neural Machine Translation in Liner Time. arXiv: 1610.10099, 2016.
CNN x NLPの研究動向
l ゲート関数を導⼊したCNNを提案 (Gated CNN)
Language Modeling (Dauphin+, 2016)
14
Y. N. Dauphin et al.: Language Modeling with Gated Convolutional Networks. arXiv: 1612.08083, 2016.
ゲート⽤畳み込みフィルタを⽤意し,
他の畳み込み結果と要素毎に積を取る
CNN x NLPの研究動向
l ゲート関数を導⼊したCNNを提案 (Gated CNN)
l 他のRNN系⾔語モデルよりも良好な結果
Language Modeling (Dauphin+, 2016)
15
Y. N. Dauphin et al.: Language Modeling with Gated Convolutional Networks. arXiv: 1612.08083, 2016.
CNN x NLPの研究動向
l Gated CNN よりもLSTMライクなゲート関数がついたCNN
(fo-pooling)
Quasi-RNN (Bradbury & Merity+, 2016)
16
J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016.
CNN x NLPの研究動向
l Sentiment Classification
Quasi-RNN (Bradbury & Merity+, 2016)
17
J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016.
l Single model perplexity on Penn Treebank
CNN x NLPの研究動向
l そして,速い
Quasi-RNN (Bradbury & Merity+, 2016)
18
J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016.
LSTM (cuDNN)との速度⽐較Training Speed Comparision
⽬次
全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31)
ConvNetで⾃然⾔語処理をする
1. Why CNN in NLP?
2. CNN x NLPの研究動向
3. ⽇本語NLPへのCNN適⽤の試み
4. まとめ
19
⽇本語にCNN + NLPを使う
l ⽇本語をローマ字にしてCNNを⼊⼒
l データ数が多い場合に⾼い性能が出ることを確認
Character-level CNN の⽇本語ローマ字列への適⽤
(佐藤+, 2016)
20
佐藤ら:⽂字レベル深層学習によるテキスト分類と転移学習. ⼈⼯知能学会⼈⼯知能基本問題研究会, 2016.
⽇本語にCNN + NLPを使う
l Image-based Character Embedding
l Wildcard Training (単語分割不要な data augmentation)
Character-level CNN による⽇本語⽂書分類
(⼩⾕+, 2016), (Shimada+, 2016)
21
⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016.
D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training.
BigNLP in IEEE Big Data, 2016.
⽇本語にCNN + NLPを使う
l Image-based Character Embedding (画像⽂字表現)
l 従来のNLPでは⽂字の”⾒た⽬”は捨てちゃう
l ⽂字を表現するときに,⾒た⽬も使ってみる
Character-level CNN による⽇本語⽂書分類
(⼩⾕+, 2016), (Shimada+, 2016)
22
⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016.
D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training.
BigNLP in IEEE Big Data, 2016.
⽇本語にCNN + NLPを使う
Character-level CNN による⽇本語⽂書分類
(⼩⾕+, 2016), (Shimada+, 2016)
23
⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016.
D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training.
BigNLP in IEEE Big Data, 2016.
(1)Author Estimation of Japanese Novels
Methods Accuracy [%]
(proposed) CAE + CLCNN + WT 69.57
(proposed) CAE + CLCNN w/o WT 52.17
(proposed) Lookup Table + CLCNN + WT 69.57
Lookup Table + CLCNN w/o WT 65.22
Character-level 3-gram* + TF-IDF 56.52
Word segmentation* + TF-IDF 47.83
LSI (# topics = 60) 73.90
LDA (# topics = 30) 52.10
* 3-gram and Word segmentation use top-50,000 most frequently tokens.
⽇本語にCNN + NLPを使う
Character-level CNN による⽇本語⽂書分類
(⼩⾕+, 2016), (Shimada+, 2016)
24
⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016.
D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training.
BigNLP in IEEE Big Data, 2016.
(2) Publisher Estimation from Japanese Newspaper Articles
Methods Accuracy [%]
(proposed) CAE + CLCNN + WT 86.72
(proposed) CAE + CLCNN w/o WT 80.95
(proposed) Lookup Table + CLCNN + WT 79.66
Lookup Table + CLCNN w/o WT 73.13
Character-level 3-gram* + TF-IDF 84.27
Word segmentation** + TF-IDF 67.22
LSI (# topics = 2,000) 84.00
LDA (# topics = 70) 56.10
* 3-gram approach uses top-30,000 most frequently tokens.
** Word segmentation approach uses all of morphemes in training data.
⽬次
全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31)
ConvNetで⾃然⾔語処理をする
1. Why CNN in NLP?
2. CNN x NLPの研究動向
3. ⽇本語NLPへのCNN適⽤の試み
4. まとめ
25
まとめ
l Bag of Words (BoW) のようなNLPテクニックが
画像へ適⽤された歴史をみれば,画像→NLPもうまくいきそう
l テキスト分類だけでなく,⾔語モデリングや機械翻訳も
すでに⼀定の成果を挙げ始めている.
l ⽂字レベルで⽇本語NLPをCNNで攻略する⽅向も
l 画像・⾔語だけでなく⾳声のような信号処理もCNNで…!
l WaveNet (Van den Oord+, 2016c)
CNNでも⾃然⾔語処理が出来る(かも)!
26
A. Van den Oord et al.: WaveNet: A Generative Model for Raw Audio. arxiv: 1609.03499, 2016.
Fin.
27

Convolutional Neural Netwoks で自然言語処理をする

  • 1.
    全脳アーキテクチャ若⼿の会 カジュアルトーク (2017.1.31) ConvolutionalNeural Networks で⾃然⾔語処理をする 全脳アーキテクチャ若⼿の会 法政⼤学⼤学院 理⼯学研究科 修⼠課程 島⽥ ⼤樹
  • 2.
    ⾃⼰紹介 島⽥ ⼤樹 (SHIMADADaiki) @sheema_sheema (Twitter) • 法政⼤学⼤学院 理⼯学研究科 M2 • 知的情報処理研究室(彌冨研) • 画像解析による授業受講者の態度推定 • 画像の半教師あり学習 • ⾃然⾔語⾔語処理 (⽇本語) • 全脳アーキテクチャ若⼿の会 副代表 • 会全体の運営 (運営メンバー⼤募集中!!) 1
  • 3.
    前回までのあらすじ l カジュアルにCNN系画像認識⽂献64本ノック! http://www.slideshare.net/sheemap/convolutional-neural-networks-wbafl2 2016/02: ConvolutionalNeural Networks (CNN) の動向 2 l 2016年前半までのGANによる画像⽣成事例を紹介 http://www.slideshare.net/sheemap/adversarial-networks-wbafl3 2016/06: Generative Adversarial Nets (GAN) の画像⽣成 しかし,今回は ”⾃然⾔語処理 (NLP)” 特集…
  • 4.
    今⽇のおはなし l なんでNLPでCNNなのか l 実際のところNLPでどれだけCNNが使えるのか l近年のCNN x NLPの動向をチェック l どんなタスクがどれだけ上⼿くいっているのか l ⽇本語は? 2017/01: ⾃然⾔語処理にCNNの波はやってくるか? 3
  • 5.
    ⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31) ConvNetで⾃然⾔語処理をする 1.Why CNN in NLP? 2. CNN x NLPの研究動向 3. ⽇本語NLPへのCNN適⽤の試み 4. まとめ 4
  • 6.
    Why CNN inNLP? l もともと画像を処理することを想定して提案された l ⾃然⾔語処理では,1次元⽅向のみの畳み込みを⾏う Convolutional Neural Networks (LeCun & Bengio, 1995), (LeCun+, 1998) 5 Y. LeCun, et al.: Gradient Based Learning Applied to Document Recognition. Procs. of IEEE, 1998. Y. LeCun and Y. Bengio.: Convolutional Networks for Images, Speech, and Time-Series. The handbook of brain theory and neural networks, 1995. 2D-conv. 1D-conv.
  • 7.
    Why CNN inNLP? RNN vs. CNN 6 Recurrent Neural Networks Convolutional Neural Networks l 前時間の隠れ状態をフィードバック l 時間⽅向にforward / backward を 展開する (BPTT) l 時間⽅向にカーネルを⾛査 l 計算の並列化がし易いため⾼速 l 時間的に離れた情報間の関係も学習出来る
  • 8.
    ⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31) ConvNetで⾃然⾔語処理をする 1.Why CNN in NLP? 2. CNN x NLPの研究動向 3. ⽇本語NLPへのCNN適⽤の試み 4. まとめ 7
  • 9.
    CNN x NLPの研究動向 l単語ベクトルをword2vecによって予め学習 l Sentence-levelの分類タスク7つについて評価 l 5 / 7で従来⼿法を上回る性能 Sentence Classification (Kim, 2014) 8 Y. Kim: Convolutional Neural Networks for Sentence Classification. EMNLP, 2014.
  • 10.
    CNN x NLPの研究動向 l⽂字レベルでテキストを扱った⽂書分類 l アルファベット, 数字, 記号を one-hot encoding l シソーラスを使って類語で置換 (data augmentation) Character-level Document Classification (Zhang+, 2015) 9 X. Xhang et al.: Character-level Convolutional Networks for Text Classification. NIPS, 2015. CNNの畳み込み層のパラメータ
  • 11.
    CNN x NLPの研究動向 Character-levelDocument Classification (Zhang+, 2015) 10 X. Xhang et al.: Character-level Convolutional Networks for Text Classification. NIPS, 2015. Lg. :深いモデル Sm. :浅いモデル Th. :類語置換 w2v :word2vec Lk. :lookup table Full :⼤⽂字/⼩⽂字
  • 12.
    CNN x NLPの研究動向 lRNNベースの画像⽣成⼿法を提案 l convolutionでRNNライクな計算をする⽅法の提案 l masked convolution l 現時間より先の情報を畳み込んでしまわないように, 畳み込みカーネルをマスクする Pixel Recurrent Neural Networks (Van den Oord+, 2016a) 11 A. Van den Oord, et al.: Pixel Recurrent Neural Networks. ICML, 2016.
  • 13.
    CNN x NLPの研究動向 lByteNet と呼ばれるCNNベースのニューラル翻訳モデル l Dilated CNN による Encoder-Decoderモデル Machine Translation (Van den Oord+, 2016b) 12 A. Van den Oord et al.: Neural Machine Translation in Liner Time. arXiv: 1610.10099, 2016. Negative log-likelihood of bits/byte on Hutter Prize Wikipedia
  • 14.
    CNN x NLPの研究動向 lByteNet と呼ばれるCNNベースのニューラル翻訳モデル l 近年のRNN系の⼿法に近く,より⾼速に動作する Machine Translation (Van den Oord+, 2016b) 13 A. Van den Oord et al.: Neural Machine Translation in Liner Time. arXiv: 1610.10099, 2016.
  • 15.
    CNN x NLPの研究動向 lゲート関数を導⼊したCNNを提案 (Gated CNN) Language Modeling (Dauphin+, 2016) 14 Y. N. Dauphin et al.: Language Modeling with Gated Convolutional Networks. arXiv: 1612.08083, 2016. ゲート⽤畳み込みフィルタを⽤意し, 他の畳み込み結果と要素毎に積を取る
  • 16.
    CNN x NLPの研究動向 lゲート関数を導⼊したCNNを提案 (Gated CNN) l 他のRNN系⾔語モデルよりも良好な結果 Language Modeling (Dauphin+, 2016) 15 Y. N. Dauphin et al.: Language Modeling with Gated Convolutional Networks. arXiv: 1612.08083, 2016.
  • 17.
    CNN x NLPの研究動向 lGated CNN よりもLSTMライクなゲート関数がついたCNN (fo-pooling) Quasi-RNN (Bradbury & Merity+, 2016) 16 J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016.
  • 18.
    CNN x NLPの研究動向 lSentiment Classification Quasi-RNN (Bradbury & Merity+, 2016) 17 J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016. l Single model perplexity on Penn Treebank
  • 19.
    CNN x NLPの研究動向 lそして,速い Quasi-RNN (Bradbury & Merity+, 2016) 18 J. Bradbury, S. Merity, et al.: Quasi-Recurrent Neural Networks. arXiv: 1611.01576, 2016. LSTM (cuDNN)との速度⽐較Training Speed Comparision
  • 20.
    ⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31) ConvNetで⾃然⾔語処理をする 1.Why CNN in NLP? 2. CNN x NLPの研究動向 3. ⽇本語NLPへのCNN適⽤の試み 4. まとめ 19
  • 21.
    ⽇本語にCNN + NLPを使う l⽇本語をローマ字にしてCNNを⼊⼒ l データ数が多い場合に⾼い性能が出ることを確認 Character-level CNN の⽇本語ローマ字列への適⽤ (佐藤+, 2016) 20 佐藤ら:⽂字レベル深層学習によるテキスト分類と転移学習. ⼈⼯知能学会⼈⼯知能基本問題研究会, 2016.
  • 22.
    ⽇本語にCNN + NLPを使う lImage-based Character Embedding l Wildcard Training (単語分割不要な data augmentation) Character-level CNN による⽇本語⽂書分類 (⼩⾕+, 2016), (Shimada+, 2016) 21 ⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016. D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training. BigNLP in IEEE Big Data, 2016.
  • 23.
    ⽇本語にCNN + NLPを使う lImage-based Character Embedding (画像⽂字表現) l 従来のNLPでは⽂字の”⾒た⽬”は捨てちゃう l ⽂字を表現するときに,⾒た⽬も使ってみる Character-level CNN による⽇本語⽂書分類 (⼩⾕+, 2016), (Shimada+, 2016) 22 ⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016. D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training. BigNLP in IEEE Big Data, 2016.
  • 24.
    ⽇本語にCNN + NLPを使う Character-levelCNN による⽇本語⽂書分類 (⼩⾕+, 2016), (Shimada+, 2016) 23 ⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016. D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training. BigNLP in IEEE Big Data, 2016. (1)Author Estimation of Japanese Novels Methods Accuracy [%] (proposed) CAE + CLCNN + WT 69.57 (proposed) CAE + CLCNN w/o WT 52.17 (proposed) Lookup Table + CLCNN + WT 69.57 Lookup Table + CLCNN w/o WT 65.22 Character-level 3-gram* + TF-IDF 56.52 Word segmentation* + TF-IDF 47.83 LSI (# topics = 60) 73.90 LDA (# topics = 30) 52.10 * 3-gram and Word segmentation use top-50,000 most frequently tokens.
  • 25.
    ⽇本語にCNN + NLPを使う Character-levelCNN による⽇本語⽂書分類 (⼩⾕+, 2016), (Shimada+, 2016) 24 ⼩⾕ら: ⽂字画像によるCharacter-level Embeddingと⽂書分類. NLP若⼿の会シンポジウム, 2016. D. Shimada et al.: Document Classification through Image-Based Character Embedding and Wildcard Training. BigNLP in IEEE Big Data, 2016. (2) Publisher Estimation from Japanese Newspaper Articles Methods Accuracy [%] (proposed) CAE + CLCNN + WT 86.72 (proposed) CAE + CLCNN w/o WT 80.95 (proposed) Lookup Table + CLCNN + WT 79.66 Lookup Table + CLCNN w/o WT 73.13 Character-level 3-gram* + TF-IDF 84.27 Word segmentation** + TF-IDF 67.22 LSI (# topics = 2,000) 84.00 LDA (# topics = 70) 56.10 * 3-gram approach uses top-30,000 most frequently tokens. ** Word segmentation approach uses all of morphemes in training data.
  • 26.
    ⽬次 全脳アーキテクチャ若⼿の会 カジュアルトーク (17.1.31) ConvNetで⾃然⾔語処理をする 1.Why CNN in NLP? 2. CNN x NLPの研究動向 3. ⽇本語NLPへのCNN適⽤の試み 4. まとめ 25
  • 27.
    まとめ l Bag ofWords (BoW) のようなNLPテクニックが 画像へ適⽤された歴史をみれば,画像→NLPもうまくいきそう l テキスト分類だけでなく,⾔語モデリングや機械翻訳も すでに⼀定の成果を挙げ始めている. l ⽂字レベルで⽇本語NLPをCNNで攻略する⽅向も l 画像・⾔語だけでなく⾳声のような信号処理もCNNで…! l WaveNet (Van den Oord+, 2016c) CNNでも⾃然⾔語処理が出来る(かも)! 26 A. Van den Oord et al.: WaveNet: A Generative Model for Raw Audio. arxiv: 1609.03499, 2016.
  • 28.