1. Abstract
- CNN, RNN,LSTM, Highway Network 모델 사용
- 형태소가 많은 언어에 유리(아랍어, 체코어, 프랑스어, 독일어, 스페인어, 러시아어 등)
- character단위의 모델링은 semantic, orthographic information(철자법)을 동시에 알아낼 수 있음
2. Introduction
- 이전까지는 Markov n-gram based Model이 많이 사용되었지만, sparsity data문제가 발생
- Neural Language Model(NLM)에서는 word embedding을 사용하여 sparsity data문제를 해결
- word embedding을 통해 비슷한 단어는 비슷한 공간에 위치하게 됨
- 하지만, word embedding으로는 subword information를 파악할 수 없음
- infrequent word에 대해서 perplexity가 높아지게 됨(성능이 좋지 않음)
- 이러한 점은 형태소가 많은 언어에서 문제가 됨
- 이 논문에서는 charCNN을 통해 subword information를 잘 학습할 수 있도록하는 것이 목적
- 전처리 작업에서 morphological-tagging 작업이 필요하지 않음
- 결론적으로, 형태소가 많은 언어에서 이 모델이 더 적은 parameter로도 다른 LSTM 기반 모델보다 성능이 좋았다.
3. Model
3.1 Architecture
- charCNN, highway Network, LSTM 사용
3.2 RNN, LSTM, RNN-LM
3.2.1 RNN
- =
3.2.2 LSTM
- =
- =
- =
- =
- =
- =
3.2.3 RNN-LM
- Language Model에서의 scoring
- negative log-likelihood(NLL)을 최소화하는 방향으로 학습
- =
- =
- = 단어의 수, = j-th column
3.3 charCNN
- 전체적인 model과 함께 학습됨
- input
- embedding한 characters를 이어붙인 matrix,
- = character의 embedding dimension, = word를 구성하는 character의 개수
- convolution
- n-gram의 역할, prefix, suffix 등을 구별하는 역할을 하게 됨
- 100~1000개의 filter로 convolution
- activation function으로 사용
- pooling
- convolution의 결과에 pooling을 사용하여 정보를 압축
- pooling의 결과가 word embedding이 됨
3.4 Highway Network
- residual network의 general한 형태
- =
- transform gate =
- activation function을 통해서 큰 의미를 가지는 것만 activated되면, embedding에 더해져 강조의 효과를 가짐
- word의 최종적인 embedding 완성
- transform gate도 전체적인 model과 함께 학습됨
4. Experimental Setup
- PPL(perplexity)
- =
- = word of sequence
- English Penn Treebank(PTB) dataset을 사용하여 parameter를 조정한 후, 이것을 다른 언어에 적용
- singleton word만
로 바꿈
4.1 Optimization
- stochastic gradient descent(SGD) 사용
- dropout 사용
- gradient norm > 일 경우, =
5. Result
5.1 English Penn Treebank
5.2 Other Language
6. Discussion
6.1 Learned Word Representation
- highway layer가 있는 것이 word embedding 학습을 더 잘했음
- OOV word도 학습을 잘함
6.2 Learned Character N-gram Representation
- charCNN을 사용한 경우 각 단어의 n-gram에서 prefix, suffix, hypenated를 각각 구별
- prefix = 접두사, suffix = 접미사, hyphenated = 하이픈으로 연결된 단어
6.3 Highway Layer
- MLP의 성능은 좋지 않음
- 1개의 highway layer만 가진 것이 제일 성능이 좋다.
- max-pooling 이전에 convolution layer를 더 쌓아도 성능이 좋아지지 않는다.
- CNN 없이 highway network만 사용하면 소용없다.
6.4 Effect of Corpus/Vocab size
- corpus의 크기가 커지면 perplexity가 줄어든다. 즉, 성능이 좋아진다.
6.5 Further Observation
- 위 실험에서는 word embedding과 charCNN을 같이 사용한 모델이 더 성능이 안좋았다.
- 다른 모델보다 시간은 오래걸리지만, charCNN-layer를 공유하기 때문에 GPU사용 효율성이 증가한다.
7. Related Work
- NLM
- FNLM
- char NLM
- DCNN
- CRF
- BDLSTM
8. Conclusion
단어의 subword information을 파악하는 것이 중요하다.
9. Reference
- https://arxiv.org/abs/1508.06615
- Ybigta deepNLP-study