마치며
이번 장에서는 주어진 문장을 확률적으로 모델링하는 방법을 이야기했습니다. 자연어 처리 분야에서 문장 예측 능력의 필요성은 딥러닝 이전부터 꾸준히 있었기에 n-gram 등의 방법을 통해 많은 곳에 활용되고 있었습니다. 하지만 n-gram과 같은 방식들은 여전히 단어를 불연속적인 존재로 취급하다 보니 희소성 문제를 해결하지 못해 일반화 능력에서 많은 어려움을 겪었습니다. 이에 마르코프 가정과 스무딩, 디스카운팅을 통해 n-gram의 단점을 보완하고자 했지만, n-gram은 근본적으로 출현 빈도에 기반하므로 완벽한 해결책이 될 수는 없었습니다.
하지만 신경망을 통해 언어 모델링을 수행하면 일반화 문제는 해결됩니다. 신경망은 비선형적 차원 축소에 매우 뛰어난 성능을 가지므로, 희소한 단어들의 조합에 대해서도 효과적으로 차원 축소하여, 기존 훈련 데이터 내의 다른 단어 조합에 대한 유사도 비교 등을 훌륭하게 수행합니다. 따라서 추론 수행 과정에서 처음 보는 시퀀스의 데이터가 주어지더라도 기존에 자신이 배운 것에 기반하여 나름 훌륭한 예측을 해냅니다.
지금까지 언어 모델링이 정말 많은 분야에서 중요한 기초로써 다양하게 활용되고 있음을 배웠습니다. 이처럼 신경망을 통해 개선된 언어 모델을 활용하여, 이어지는 장에서는 자연어 생성, 특히 번역에 대해 다루고자 합니다.
Last updated