Abstract
이 논문에서는 신경망 기계 번역(Neural Machine Translation, NMT)의 성능을 향상시키기 위해 새로운 접근 방식을 제안한다.
기존 encoder-decoder 구조는 소스 문장을 고정 길이(fixed-length) 벡터로 인코딩하여 번역하는 방식이었지만, 이 방식은 번역 성능을 저해하는 병목 현상 문제를 야기할 수 있다.
이를 해결하기 위해, 소스 문장에서 타겟 단어 예측에 관련된 부분을 자동으로 soft 검색할 수 있도록 확장하는 방법을 제안했다.
이 방식은 소스 문장의 특정 부분을 명시적으로 (hard segmentation)나누지 않고도 필요한 정보를 선택적으로 활용할 수 있도록 함
1. introduction
- NMT의 문제점
- 기존 인코더-디코더 모델은 소스 문장을 고정 길이 벡터로 변환한 후 번역을 수행
- 그러나 긴 문장일수록 정보를 하나의 벡터에 압축하기 어려워 성능이 급격히 저하됨
- 제안 방법 : 어텐션 기반 모델
- 번역과정에서 단어를 생성할 때 마다 소스 문장의 특정 부분을 자동으로 검색(soft-search)하고 가장 관련 있는 정보를 활용
- 문장을 하나의 벡터로 압축하는 것이 아니라, 여러 개의 벡터 시퀀스(sequence of vectors)로 표현하고 디코딩 시 필요한 벡터를 선택적으로 활용하도록 함
- 이를 통해 길이가 긴 문장을 효과적으로 변역 가능
3. 실험 결과
- 영어-프랑스어 번역에서 기존 방법보다 성능이 크게 향상됨.
- 특히 긴 문장에서 더 큰 성능 향상을 보였으며,
- 기존의 문장 기반 번역 시스템과 유사한 성능을 달성.
- 또한, 모델이 찾은 (soft-)정렬이 언어학적으로 타당한(linguistically plausible) 결과를 보임.
결론 :
기존 NMT 모델의 한계를 극복하기 위해 어텐션 메커니즘을 도입하여 단어 단위의 정렬과 번역을 동시에 학습하는 방식을 제안하며, 이를 통해 긴 문장에서도 성능이 향상된 신경망 기계 번역 모델을 개발했다.
2. BACKGROUND: NEURAL MACHINE TRANSLATION
- NMT는 조건부 확률 모델을 학습하여 번역을 수행하는 접근 방식을 사용
- 일반적으로 인코더-디코더 구조로 구성되며 RNN 또는 LSTM을 활용하여 문장을 인코딩 후 디코딩함
2-1 RNN Encoder Decoder
- RNN 인코더 디코더 모델은 입력 문장을 벡터로 변환하고 이를 이용해 출력 문장을 생성(디코더)하는 방식으로 작동
- 인코더는 RNN을 사용하여 문장을 고정 길이 벡터(context vector)로 변환한다.
- 디코더는 이 벡터와 이전 단어를 이용해 다음 단어를 예측한다.
- 기존 방식에서는 전체 문장을 하나의 벡터로 압축하는 것이 번역 성능의 병목이 될 수 있음
- 그래서 본 논문에서는 단어 단위 정렬을 학습하여 이를 개선하는 새로운 아키텍처를 제안함
3 LEARNING TO ALIGN AND TRANSLATE
위에서 말했듯이 기존의 NMT 모델은 소스 문장을 하나의 고정된 벡터로 변환한 후 번역을 수행하는 방식을 사용했다.
하지만 이 방식은 문장이 길어질수록 정보 손실이 발생하고 번역 품질이 저하되는 문제가 있다.
이를 해결하기 위해 본 논문에서는 어텐션 메커니즘 을 저굥ㅇ하여 소스 문장에서 중요한 부분을 선택적으로 활용하는 새로운 모델을 제안했다.
즉 번역하는 과정에서 디코더가 소스 문장의 특정 부분에 집중하여 번역을 수행하도록 학습하는 방식이다.
- 양방향 BIRNN 인코더를 사용하여 문장의 앞뒤 정보를 모두 반영한다.
- 어텐션 메커니즘을 활용하여 번역할 때마다 소스 문장에서 중요한 단어를 선택
- 기존에는 sentence의 모든 단어를 하나의 벡터로 압축하여 디코더로 전달했다. 그러면 뭐가 중요한지 모르기 때문에 번역이 미흡했다.
- 하지만 Attention 매커니즘은 논문에서는 디커도가 번역할 때마다 소스 문장에서 어떤 단어가 중요한지 선택할 수 있도록 어텐션을 적용
- soft Alignmnet을 학습하여 디코더가 자동으로 정렬을 수행
- 긴 문장의 번역 품질이 향상되며 기존 모델보다 더 정확한 번역 가능
- BiRNN 인코더를 활용하여 문장의 앞뒤 문맥을 모두 반영
- 어텐션 메커니즘을 통해 긴 문장에서도 필요한 정보만 선택하여 번역
- 소프트 정렬을 학습하여 번역 과정에서 자동으로 소스 문장의 중요한 부분을 찾아 활용