LSTM Language Model Based Korean Sentence Generation

2016 
The recurrent neural network (RNN) is a deep learning model which is suitable to sequential or length-variable data. The Long Short-Term Memory (LSTM) mitigates the vanishing gradient problem of RNNs so that LSTM can maintain the long-term dependency among the constituents of the given input sequence. In this paper, we propose a LSTM based language model which can predict following words of a given incomplete sentence to generate a complete sentence. To evaluate our method, we trained our model using multiple Korean corpora then generated the incomplete part of Korean sentences. The result shows that our language model was able to generate the fluent Korean sentences. We also show that the word based model generated better sentences compared to the other settings. ※ 본 연구는 2016년도 두뇌한국21플러스사업에 의하여 지원을 받아 수행되었습니다. First Author : Automation and Systems Research Institute (ASRI), Department of Electrical and Computer Engineering, Seoul National University, ad26kr@snu.ac.kr, 학생회원 ° Corresponding Author : Automation and Systems Research Institute (ASRI), Department of Electrical and Computer Engineering, Seoul National University, kjung@snu.ac.kr, 정회원 * Department of Electrical and Computer Engineering, Seoul National University, wangcho2k@snu.ac.kr ** Department of Electrical and Computer Engineering, Seoul National University, zd9370@snu.ac.kr 논문번호:KICS2015-12-388, Received December 10, 2015; Revised April 6, 2016; Accepted May 23, 2016 I. 서 론 최근 기계학습(Machine Learning) 연구 및 응용분 야가 대폭 확대되는 가운데 [1,2] 딥 러닝(Deep Learning)이 새롭게 주목받고 있다. 딥 러닝은 여러 은닉계층(Hidden Layer)으로 구성된 인공신경망 (Artificial Neural Network)을 학습하고 이용하는 방 법으로서, GPU(Graphics Processing Unit)와 같은 고 성능 계산 하드웨어의 발달 및 풍부한 데이터의 축적 과 동시에 여러 분야에서 기존 기계학습 기법을 뛰어 논문 / LSTM 언어모델 기반 한국어 문장 생성 593 넘는 강력한 대안으로 부상하고 있다. 딥 러닝은 영상 인식과 같이 기존 기계학습 분야에서 활발히 연구되 고 있는 데이터 인식 분야는 물론이고, 헬스케어, 무 선 센서 네트워크(Wireless Sensor Network) 등의 분야에도 최근 폭 넓게 적용되고 있다. 딥 러닝 기법 중 하나로 최근 연구가 활발하게 이 루어지고 있는 순환신경망(Recurrent Neural Network; RNN)은 과거 시간 단계(Time Step)의 은 닉상태(Hidden State)와 현 시간 단계의 시스템 입력 값을 새로운 은닉 상태를 계산하는 데 사용하는 구조 적 특징이 있다. 하지만 RNN의 기본적인 순환구조는 학습과정에서 연속된 입력값의 길이가 늘어남에 따라 축적되는 정보를 잃게 되는 기울기 소멸문제 (Vanishing Gradient Problem [5]) 로 인해 응용적인 측 면에서 뛰어난 성과를 보이지 못했으나, 학습 성능을 향상시키는 다양한 기법들이 개발되면서 다양한 분야 에 널리 적용되기 시작했다. 특히 LSTM(Long-Short Term Memory)-RNN [6] 의 경우, RNN의 구조적 개선 을 통해 학습 능력을 크게 향상시켜 연속적이고 길이 가 긴 학습 데이터가 가지고 있는 순차적 의존성을 효 과적으로 학습 할 뿐만 아니라 과거 시간 단계 정보의 중요도를 판별하여 얼마나 많은 과거 정보를 현재까 지 끌어올 것인지, 혹은 현재 시간 단계의 정보를 얼 마나 사용할 것인지 결정 할 수 있기 때문에 긴 시간 동안 나타나는 입력 데이터의 의존성을 기존의 RNN 보다 더욱 효과적으로 학습하는 것이 가능하다. 그렇 기 때문에 LSTM의 경우 길이가 긴 입력 데이터를 적 용하는 작업에서 기존 RNN보다 좋은 성능을 보인다. 본 연구에서는 LSTM에 기반 한국어 언어 모델 (Language Model)을 통해 불완전한 한국어 문장 혹 은 단어가 주어졌을 때 이어지는 문장을 자동으로 생 성할 수 있는 문장 생성 시스템을 구현한다. 언어 모 델은 여러 개의 문서나 문장과 같은 해당 언어의 말뭉 치(Corpus) 데이터를 학습하여, 주어진 단어의 배열이 해당 언어에 있어서 얼마나 인간의 언어와 유사한지 를 표현할 수 있는 확률 모형이다. 이를테면, 적절하 게 구현 및 학습된 한국어 언어 모델에서는 ‘밥을 먹 다’ 가 ‘먹다 밥을’ 의 경우보다 높은 확률 값을 보일 것이다. LSTM에 기반한 언어모델은 주변 단어의 동 시출현확률에 기반한 Unigram 언어모델 및 N-gram 언어모델보다는 문장에서 나타나는 단어 간의 순차적 의존관계를 보다 효과적으로 학습 할 수 있다. 이렇게 학습한 언어 모델을 바탕으로 문장의 일부가 주어졌 을 때 문장의 나머지 단어들을 순차적으로 추론 및 생 성하는 문장 생성 알고리즘을 구현하며, 본 논문에서 는 실제 한국어 말뭉치를 이용한 언어모델 학습 및 문 장 생성 실험을 통해 구현된 시스템이 말뭉치로부터 학습한 한국어의 특징에 맞는 문장을 생성하는 지를 살펴볼 것이다. 본 논문의 구성은 다음과 같다. 제2장에서는 순환 신경망 및 순환신경망을 적용한 언어 모델 관련 연구 들을 살펴볼 것이고, 3장에서는 순환신경망의 수학적 정의 및 훈련 방법에 대해 리뷰를 할 것이다. 4장에서 는 본 연구에서 구현한 순환신경망 기반 언어 모델의 구조를 살펴볼 것이고, 5장에서는 실제 한국어 데이터 를 활용하여 순환신경망 기반 언어모델을 사용한 문 장 생성 실험을 진행한 결과를 설명한 뒤 마지막으로 6장에서 결론을 도출하려 한다.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    21
    References
    2
    Citations
    NaN
    KQI
    []