학위논문 (석사)-- 서울대학교 대학원 : 융합과학기술대학원 융합과학부(디지털정보융합전공), 2018. 8. 서봉원.가변 길이의 텍스트를 텍스트의 맥락 정보를 반영한 벡터로 변환하는 방법인 문장 혹은 문단 임베딩은 다양한 기계학습 시스템에서 감성 분석 등의 텍스트 분류 문제, 텍스트의 유사도 측정, 클러스터링, 시각화 등 고정된 차원의 벡터를 입력으로 요구하는 각종 과제를 수행하기 위한 기본적인 특징 추출 방법으로 사용되고 있다.
기존의 텍스트의 벡터 표현을 위해 널리 사용되고 있었던 단어 자루(Bag-of-Words) 모형은 단순하고 효과적이지만 차원의 크기가 단어의 숫자에 비례해서 증가하며 레이블 없는 텍스트 데이터를 활용하기 어렵다는 단점이 있다. 이러한 한계를 극복하기 위해 제안된 문단 벡터(Paragraph Vector)는 새로운 데이터에 대한 벡터 표현을 학습하고 생성하는데 적용하기 위해서는 기존 모델을 새로운 데이터에 대해 추가적으로 학습시키는 추정 과정을 필요로 한다는 한계가 있다. 시퀀스 투 시퀀스(Sequence to Sequence) 모형을 기반으로 선후 문장과의 문장 간 관계를 활용해 문장의 벡터 표현을 생성하는 인코더를 학습하는 생각 생략 벡터(Skip-Thought Vectors) 모형은 학습을 위해 문장 간 선후 관계를 활용하기에 여러 문장이 포함되며 선후 관계를 설정하기 어려운 문단 수준에는 바로 적용되기 어려우며 텍스트 임베딩의 생성에 많은 연산 자원을 필요로 한다는 단점을 갖고 있다.
본 연구에서는 전이 학습의 문제와 임베딩 생성에 필요한 연산량 및 가변 길이 텍스트 처리의 용이성의 문제 등을 고려하여 단어 임베딩의 합을 통해 텍스트 임베딩을 생성하는 모형을 제안한다. 기존의 단어 임베딩이 유니그램(Unigram)을 사용하는 것과는 달리 본 연구의 모형에서는 바이그램(Bigram) 및 트라이그램(Trigram) 등의 n-그램(n-gram)을 활용해 텍스트 임베딩을 개선하였다. 또한 이를 컨볼루션 신경망을 사용한 모형과 비교하여 컨볼루션 신경망과 같은 추가적인 구조의 도입 없이도 좋은 성능적 특성을 보일 수 있음을 검토하였다.
본 연구는 문장 혹은 문단의 벡터 표현을 생성하기 위한 단순한 방법을 제시하는 동시에 부수적으로 학습한 n-그램 단어 임베딩의 특성을 분석하였다. 단어 임베딩의 특성에 대한 분석과 단어 임베딩의 단순한 결합이 보여주는 효과성을 통해 자연어 처리 과제에 요구되는 텍스트의 특성을 포착하기 위해 필요한 조건을 이해하는 것과 함께 텍스트의 고속 처리가 필요한 실용적인 상황에서 사용할 수 있는 도구로서 기여할 수 있을 것으로 기대한다.제 1 장 서 론 6
제 1 절 연구의 배경 6
제 2 절 연구의 목표 9
제 2 장 선행 연구 11
제 1 절 문장 및 문단 임베딩 11
1.1 Word2vec 12
1.2 문단 벡터(Paragraph Vector) 14
1.3 생각생략 벡터(Skip-Thought Vectors) 16
제 2 절 텍스트 처리를 위한 신경망 구조 19
2.1 문장 분류를 위한 컨볼루션 신경망(Convolutional Neural Networks for Sentence Classification) 19
2.2 구조적 자기 주의 문장 임베딩(A Structured Self-Attentive Sentence Embedding) 20
제 3 장 연구 방법 및 설계 23
제 1 절 시스템 구조 23
제 2 절 데이터셋과 전처리 및 학습 절차 31
2.1 데이터셋 31
2.1 학습 절차 및 모형 상세 34
제 4 장 실험 결과 38
제 1 절 데이터셋에 대한 전이 학습 결과 38
제 2 절 모형의 변형에 따른 성능 변화 41
제 2 절 학습된 모형의 특성 분석 44
제 5 장 논의 52
제 6 장 결론 및 향후 연구를 위한 제언 59
참고문헌 62Maste