6. 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.
7. Why CNN in NLP?
RNN vs. CNN
6
Recurrent Neural Networks Convolutional Neural Networks
l 前時間の隠れ状態をフィードバック
l 時間⽅向にforward / backward を
展開する (BPTT)
l 時間⽅向にカーネルを⾛査
l 計算の並列化がし易いため⾼速
l 時間的に離れた情報間の関係も学習出来る
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-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 :⼤⽂字/⼩⽂字
12. 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.
13. 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
14. 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.
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の研究動向
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.
18. 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
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
21. ⽇本語にCNN + NLPを使う
l ⽇本語をローマ字にしてCNNを⼊⼒
l データ数が多い場合に⾼い性能が出ることを確認
Character-level CNN の⽇本語ローマ字列への適⽤
(佐藤+, 2016)
20
佐藤ら:⽂字レベル深層学習によるテキスト分類と転移学習. ⼈⼯知能学会⼈⼯知能基本問題研究会, 2016.
22. ⽇本語に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.
23. ⽇本語に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.
24. ⽇本語に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.
25. ⽇本語に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.
27. まとめ
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.