개요
심층 신경망(DNN)은 어려운 학습 작업에서 뛰어난 성능을 달성한 강력한 모델입니다. DNN은 대규모 레이블이 지정된 훈련 세트를 사용할 수 있을 때마다 잘 작동하지만 시퀀스를 시퀀스에 매핑하는 데 사용할 수 없습니다. 본 논문에서는 시퀀스 구조에 대해 최소한의 가정을 하는 시퀀스 학습에 대한 일반적인 엔드투엔드 접근 방식을 제시합니다. 우리의 방법은 다층 장단기 메모리(LSTM)를 사용하여 입력 시퀀스를 고정 차원의 벡터에 매핑한 다음 또 다른 심층 LSTM을 사용하여 벡터에서 대상 시퀀스를 디코딩합니다. 우리의 주요 결과는 WMT'14 데이터 세트의 영어-프랑스어 번역 작업에서 LSTM에 의해 생성된 번역이 전체 테스트 세트에서 34.8의 BLEU 점수를 달성했다는 것입니다. 여기서 LSTM의 BLEU 점수는 어휘 외 항목에서 페널티를 받았습니다. 단어. 또한 LSTM은 긴 문장에서도 어려움을 겪지 않았습니다. 비교를 위해 구문 기반 SMT 시스템은 동일한 데이터 세트에서 33.3의 BLEU 점수를 달성합니다. LSTM을 사용하여 앞서 언급한 SMT 시스템에서 생성된 1000개의 가설의 순위를 다시 매겼을 때 해당 BLEU 점수는 36.5로 증가하며 이는 이 작업에 대한 이전 최고 결과에 가깝습니다. LSTM은 또한 단어 순서에 민감하고 능동태와 수동태에 상대적으로 변하지 않는 합리적인 구와 문장 표현을 학습했습니다. 마지막으로 우리는 모든 소스 문장(대상 문장은 아님)에서 단어 순서를 바꾸는 것이 LSTM의 성능을 크게 향상시키는 것을 발견했습니다. 그렇게 하면 소스와 대상 문장 사이에 많은 단기 종속성이 도입되어 최적화 문제가 더 쉬워지기 때문입니다.

 

1. 서론

심층 신경망(DNN)은 음성 인식[13, 7] 및 시각적 개체 인식[19, 6, 21, 20]과 같은 어려운 문제에 대해 탁월한 성능을 달성하는 매우 강력한 기계 학습 모델입니다. DNN은 적당한 수의 단계에 대해 임의의 병렬 계산을 수행할 수 있기 때문에 강력합니다. DNN의 강력한 성능에 대한 놀라운 예는 2차 크기의 숨겨진 레이어 2개만을 사용하여 N개의 N 비트 숫자를 정렬하는 능력입니다[27]. 따라서 신경망은 기존 통계 모델과 관련되어 있지만 복잡한 계산을 학습합니다. 또한 레이블이 지정된 훈련 세트에 네트워크 매개변수를 지정하는 데 충분한 정보가 있을 때마다 감독된 역전파를 통해 대규모 DNN을 훈련할 수 있습니다. 따라서 좋은 결과를 달성하는 대규모 DNN의 매개변수 설정이 존재하는 경우(예를 들어 인간이 작업을 매우 빠르게 해결할 수 있기 때문에) 지도 역전파는 이러한 매개변수를 찾아 문제를 해결합니다.


유연성과 강력함에도 불구하고 DNN은 입력과 대상이 고정 차원의 벡터로 현명하게 인코딩될 수 있는 문제에만 적용될 수 있습니다. 선험적으로 길이를 알 수 없는 시퀀스로 많은 중요한 문제가 가장 잘 표현되기 때문에 이는 상당한 제한 사항입니다.
예를 들어 음성 인식과 기계 번역은 순차적인 문제입니다. 마찬가지로, 질문 답변은 질문을 나타내는 일련의 단어를 답변을 나타내는 일련의 단어에 매핑하는 것으로 볼 수도 있습니다. 따라서 시퀀스를 시퀀스로 매핑하는 방법을 학습하는 도메인 독립적인 방법이 유용할 것이 분명합니다.

 

시퀀스는 입력과 출력의 차원을 알고 고정해야 하기 때문에 DNN에 문제가 됩니다. 본 논문에서는 LSTM(Long Short-Term Memory) 아키텍처[16]의 간단한 적용으로 일반적인 시퀀스 대 시퀀스 문제를 해결할 수 있음을 보여줍니다.
아이디어는 하나의 LSTM을 사용하여 한 번에 한 단계씩 입력 시퀀스를 읽고 큰 고정 차원 벡터 표현을 얻은 다음 다른 LSTM을 사용하여 해당 벡터에서 출력 시퀀스를 추출하는 것입니다(그림 1). 두 번째 LSTM은 입력 시퀀스에 따라 조건이 지정된다는 점을 제외하면 본질적으로 순환 신경망 언어 모델입니다[28, 23, 30]. 장거리 시간 종속성을 갖는 데이터를 성공적으로 학습할 수 있는 LSTM의 능력은 입력과 해당 출력 사이의 상당한 시간 지연으로 인해 이 애플리케이션에 대한 자연스러운 선택이 됩니다(그림 1).


신경망을 사용하여 일반적인 시퀀스 대 시퀀스 학습 문제를 해결하려는 관련 시도가 많이 있었습니다. 우리의 접근 방식은 전체 입력 문장을 벡터로 매핑한 최초의 Kalchbrenner 및 Blunsom [18]과 밀접한 관련이 있으며 Cho et al. [5] 비록 후자는 구문 기반 시스템에 의해 생성된 가설을 다시 채점하는 데에만 사용되었습니다. 그레이브즈 [10]
신경망이 입력의 다른 부분에 집중할 수 있도록 하는 새로운 차별화 가능한 주의 메커니즘을 도입했으며 이 아이디어의 우아한 변형은 Bahdanau et al. [2] 에 의해 기계 번역에 성공적으로 적용되었습니다. 연결주의자 시퀀스 분류(Connectionist Sequence Classification)는 신경망을 사용하여 시퀀스를 시퀀스로 매핑하는 또 다른 인기 있는 기술이지만 입력과 출력 간의 단조로운 정렬을 가정합니다[11].

그림 1: 우리 모델은 입력 문장 "ABC"를 읽고 출력 문장으로 "WXYZ"를 생성합니다. 모델은 문장 끝 토큰을 출력한 후 예측을 중지합니다. LSTM은 입력 문장을 반대로 읽습니다. 그렇게 하면 데이터에 많은 단기 종속성이 도입되어 최적화 문제가 훨씬 쉬워지기 때문입니다.

 

이 작업의 주요 결과는 다음과 같습니다. WMT'14 영어-프랑스어 번역 작업에서 간단한 왼쪽에서 오른쪽 빔 검색 디코더를 사용하여 5개의 심층 LSTM(각각 384M 매개변수와 8,000차원 상태 포함)의 앙상블에서 번역을 직접 추출하여 BLEU 점수 34.81을 얻었습니다. 이는 대규모 신경망을 사용한 직접 번역을 통해 얻은 최고의 결과입니다. 비교를 위해 이 데이터 세트에서 SMT 기준의 BLEU 점수는 33.30입니다[29]. 34.81 BLEU 점수는 80,000 단어의 어휘를 사용하는 LSTM에 의해 달성되었으므로 참조 번역에 이 80,000 단어에 포함되지 않는 단어가 포함될 때마다 점수에 불이익이 주어졌습니다. 이 결과는 개선의 여지가 많은 상대적으로 최적화되지 않은 작은 어휘 신경망 아키텍처가 구문 기반 SMT 시스템보다 성능이 우수하다는 것을 보여줍니다.


마지막으로 우리는 LSTM을 사용하여 동일한 작업에 대해 공개적으로 사용 가능한 SMT 기준선 1000개 목록의 점수를 다시 매겼습니다[29]. 이를 통해 우리는 BLEU 점수 36.5를 얻었습니다. 이는 기준선을 3.2 BLEU 포인트만큼 향상시켰으며 이 작업에 대해 이전에 발표된 최고 결과(37.0[9])에 가깝습니다.


놀랍게도 LSTM은 관련 아키텍처를 가진 다른 연구자들의 최근 경험에도 불구하고 매우 긴 문장에서 어려움을 겪지 않았습니다 [26]. 훈련 세트와 테스트 세트에서는 소스 문장에서는 단어 순서를 바꾸었지만 타겟 문장에서는 단어 순서를 바꾸지 않았기 때문에 긴 문장에서 잘 할 수 있었습니다. 그렇게 함으로써 우리는 최적화  문제를 훨씬 더 단순하게 만드는 많은 단기 종속성을 도입했습니다(섹션 2 및 3.3 참조). 그 결과, SGD는 긴 문장에도 문제가 없는 LSTM을 학습할 수 있었습니다. 원본 문장의 단어를 바꾸는 간단한 방법은 이 작업의 주요 기술적 기여 중 하나입니다.


LSTM의 유용한 속성은 가변 길이의 입력 문장을 고정 차원 벡터 표현으로 매핑하는 방법을 학습한다는 것입니다. 번역이 원본 문장을 의역하는 경향이 있다는 점을 감안할 때 번역 목표는 LSTM이 의미를 포착하는 문장 표현을 찾도록 권장합니다. 비슷한 의미를 가진 문장은 서로 가깝고 다른 문장 의미는 멀기 때문입니다. 질적 평가는 이 주장을 뒷받침하며, 우리 모델이 단어 순서를 인식하고 능동태와 수동태에 상당히 불변함을 보여줍니다.

 

2 모델
RNN(Recurrent Neural Network) [31, 28]은 피드포워드 신경망을 시퀀스로 자연스럽게 일반화한 것입니다.  입력 시퀀스(x1, . . . , xT )가 주어지면 표준 RNN은 다음 방정식을 반복하여 출력 시퀀스(y1, . . . , yT )를 계산합니다.

RNN은 입력과 출력 사이의 정렬이 미리 알려질 때마다 시퀀스를 시퀀스에 쉽게 매핑할 수 있습니다. 그러나 입력 시퀀스와 출력 시퀀스의 길이가 다르고 복잡하고 단조롭지 않은 관계가 있는 문제에 RNN을 어떻게 적용할지 명확하지 않습니다.

 

일반적인 시퀀스 학습을 위한 가장 간단한 전략은 하나의 RNN을 사용하여 입력 시퀀스를 고정된 크기의 벡터에 매핑한 다음 다른 RNN을 사용하여 벡터를 대상 시퀀스에 매핑하는 것입니다(이 접근 방식은 Cho et al. [5] ]). RNN에 모든 관련 정보가 제공되므로 원칙적으로는 작동할 수 있지만 결과적인 장기적인 종속성으로 인해 RNN을 훈련하는 것은 어려울 수 있습니다(그림 1) [14, 4, 16, 15]. 그러나 LSTM(Long Short-Term Memory)[16]은 장거리 시간 종속성 문제를 학습하는 것으로 알려져 있으므로 LSTM이 이 설정에서 성공할 수 있습니다.


LSTM의 목표는 조건부 확률 p(y1,...,yT'|x1,...,xT)를 추정하는 것입니다. 여기서 (x1,...,xT)는 입력 시퀀스이고 y1,..., yT' 는 길이 T'가 T와 다를 수 있는 해당 출력 시퀀스입니다. LSTM은 먼저 LSTM의 마지막 은닉 상태에 의해 제공된 입력 시퀀스(x1,...,xT)의 고정 차원 표현 v를 얻은 다음 y1,..., yT'의 확률을 계산하여 이 조건부 확률을 계산합니다. yT'는 초기 은닉 상태가 x1, . . . . , xT :의 표현 v로 설정된 표준 LSTM-LM 공식을 사용합니다.

이 방정식에서 각 p(yt|v, y1, . . . , yt−1) 분포는 어휘의 모든 단어에 대한 소프트맥스로 표현됩니다. 우리는 Graves [10]의 LSTM 공식을 사용합니다. 각 문장은 특수한 문장 끝 기호 "<EOS>"로 끝나야 하며, 이를 통해 모델은 가능한 모든 길이의 시퀀스에 대한 분포를 정의할 수 있습니다. 전체 체계는 그림 1에 요약되어 있습니다. 여기서 표시된 LSTM은 "A", "B", "C", "<EOS>"의 표현을 계산한 다음 이 표현을 사용하여 "W", "X", “Y”, “Z”, “<EOS>” 의 확률을 계산합니다.


우리의 실제 모델은 세 가지 중요한 면에서 위의 설명과 다릅니다. 먼저, 두 개의 서로 다른 LSTM을 사용했습니다. 하나는 입력 시퀀스용이고 다른 하나는 출력 시퀀스용입니다. 그렇게 하면 무시할 수 있는 계산 비용으로 숫자 모델 매개변수가 증가하고 동시에 여러 언어 쌍에서 LSTM을 훈련하는 것이 자연스럽게 되기 때문입니다[18]. 둘째, 깊은 LSTM이 얕은 LSTM보다 성능이 훨씬 뛰어나다는 사실을 발견했기 때문에 4개 계층으로 구성된 LSTM을 선택했습니다. 셋째, 입력 문장의 단어 순서를 바꾸는 것이 매우 유용하다는 것을 알았습니다. 예를 들어 문장 a, b, c를 문장 α, β, γ로 매핑하는 대신 LSTM은 c, b, a를 α, β, γ로 매핑하도록 요청합니다. 여기서 α, β, γ는 번역입니다. a, b, c 중. 이런 방식으로 a는 α에 매우 가깝고, b는 β에 매우 가깝습니다. 이는 SGD가 입력과 출력 간의 "통신 설정"을 쉽게 만드는 사실입니다. 우리는 이 간단한 데이터 변환이 LSTM의 성능을 크게 향상시키는 것을 발견했습니다.

 

3 실험
우리는 두 가지 방법으로 WMT'14 영어-프랑스어 MT 작업에 우리 방법을 적용했습니다. 우리는 이를 참조 SMT 시스템을 사용하지 않고 입력 문장을 직접 번역하는 데 사용했으며 SMT 기준의 n-best 목록을 다시 채점하는 데 사용했습니다. 우리는 이러한 번역 방법의 정확성을 보고하고 샘플 번역을 제시하며 결과 문장 표현을 시각화합니다.

 

3.1 데이터세트 세부정보
우리는 WMT'14 영어-프랑스어 데이터세트를 사용했습니다. 우리는 348M 프랑스어 단어와 304M 영어 단어로 구성된 12M 문장의 하위 집합에 대해 모델을 훈련했습니다. 이는 [29]에서 완전히 "선택된" 하위 집합입니다. 우리는 기준 SMT[29]의 1000개 최고 목록과 함께 토큰화된 훈련 및 테스트 세트의 공개 가용성 때문에 이 번역 작업과 이 특정 훈련 세트 하위 집합을 선택했습니다.


일반적인 신경 언어 모델은 각 단어에 대한 벡터 표현에 의존하므로 두 언어 모두에 대해 고정된 어휘를 사용했습니다. 소스 언어에 가장 자주 사용되는 단어 160,000개와 대상 언어에 가장 자주 사용되는 단어 80,000개를 사용했습니다. 어휘에 포함되지 않은 모든 단어는 특별한 "UNK" 토큰으로 대체되었습니다.

 

3.2 디코딩 및 점수 다시 매기기
우리 실험의 핵심은 많은 문장 쌍에 대해 크고 깊은 LSTM을 훈련하는 것이었습니다. 우리는 소스 문장 S가 주어졌을 때 올바른 번역 T의 로그 확률을 최대화하여 훈련시켰으므로 훈련 목표는 다음과 같습니다.

여기서 S는 훈련 세트입니다. 훈련이 완료되면 LSTM에 따라 가장 가능성 있는 번역을 찾아 번역을 생성합니다.

우리는 부분 가설이 일부 번역의 접두사인 소수 B의 부분 가설을 유지하는 간단한 왼쪽에서 오른쪽 빔 검색 디코더를 사용하여 가장 가능성 있는 번역을 검색합니다. 각 시간 단계에서 우리는 어휘의 가능한 모든 단어를 사용하여 빔의 각 부분 가설을 확장합니다. 이는 가설의 수를 크게 증가시키므로 모델의 로그 확률에 따라 가장 가능성이 높은 B 가설을 제외한 모든 가설을 삭제합니다. "<EOS>" 기호가 가설에 추가되자마자 빔에서 제거되고 완전한 가설 세트에 추가됩니다. 이 디코더는 대략적인 것이지만 구현이 간단합니다. 흥미롭게도 우리 시스템은 빔 크기 1에서도 잘 작동하며 크기 2의 빔은 빔 검색의 이점을 대부분 제공합니다(표 1).


우리는 또한 LSTM을 사용하여 기준 시스템에서 생성된 1000개 최고 목록의 점수를 다시 매겼습니다[29]. n-best 목록의 점수를 다시 매기기 위해 LSTM을 사용하여 모든 가설의 로그 확률을 계산하고 해당 점수와 LSTM 점수로 균등한 평균을 구했습니다.

 

3.3 원본 문장 뒤집기
LSTM은 장기 종속 문제를 해결할 수 있지만, 소스 문장이 반전될 때(대상 문장이 반전되지 않음) LSTM이 훨씬 더 잘 학습한다는 것을 발견했습니다. 이를 통해 LSTM의 테스트 복잡도는 5.8에서 4.7로 떨어졌고, 디코딩된 번역의 테스트 BLEU 점수는 25.9에서 30.6으로 증가했습니다.


이 현상에 대한 완전한 설명은 없지만 데이터 세트에 많은 단기 종속성이 도입되어 발생한다고 믿습니다. 일반적으로 원본 문장을 대상 문장과 연결할 때 원본 문장의 각 단어는 대상 문장의 해당 단어와 멀리 떨어져 있습니다. 결과적으로 문제는 “최소한의 시간 지연”이 크다[17]. 원본 문장의 단어를 반전시키면 원본 언어와 대상 언어의 해당 단어 사이의 평균 거리가 변하지 않습니다. 그러나 이제 소스 언어의 처음 몇 단어가 대상 언어의 처음 몇 단어와 매우 가까워지므로 문제의 최소 시간 지연이 크게 줄어듭니다. 따라서 역전파는 원본 문장과 대상 문장 사이의 "통신 설정"을 더 쉽게 하여 결과적으로 전반적인 성능이 크게 향상됩니다.


처음에 우리는 입력 문장을 반대로 하면 대상 문장의 앞 부분에서는 더 확실한 예측을 하고 뒷부분에서는 덜 확신하는 예측으로 이어질 것이라고 믿었습니다. 그러나 역원문 문장에 대해 훈련된 LSTM은 원시 원문 문장에 대해 훈련된 LSTM보다 긴 문장에서 훨씬 더 나은 성능을 보였습니다(섹션 3.7 참조). 이는 입력 문장을 역전시키면 LSTM이 메모리 활용도가 더 좋아진다는 것을 의미합니다.

 

3.4 Training 세부정보
우리는 LSTM 모델이 훈련하기 매우 쉽다는 것을 발견했습니다. 우리는 각 레이어에 1000개의 셀과 1000차원 단어 임베딩, 160,000개의 입력 어휘, 80,000개의 출력 어휘를 포함하는 4개의 레이어가 있는 심층 LSTM을 사용했습니다. 따라서 deep LSTM은 8000개의 실수를 사용하여 문장을 표현합니다. 우리는 깊은 LSTM이 얕은 LSTM보다 성능이 훨씬 뛰어나다는 사실을 발견했습니다. 각 추가 레이어는 훨씬 더 큰 숨겨진 상태로 인해 복잡성을 거의 10%만큼 줄였습니다. 우리는 각 출력에서 ​​80,000단어 이상의 순진한 소프트맥스를 사용했습니다. 결과 LSTM에는 384M 매개변수가 있으며 그 중 64M은 순수 순환 연결입니다("인코더" LSTM의 경우 32M, "디코더" LSTM의 경우 32M). 전체 Training 세부정보는 다음과 같습니다.

  • -0.08에서 0.08 사이의 균일 분포로 LSTM의 모든 매개 변수를 초기화했습니다.
  • 우리는 고정 학습률 0.7로 운동량이 없는 확률적 경사하강법을 사용했습니다. 5개의 에포크 이후에는 매 1/2 에포크마다 학습 속도를 절반으로 줄이기 시작했습니다. 우리는 총 7.5 epoch 동안 모델을 훈련했습니다.
  • 우리는 그라디언트에 128개 시퀀스의 배치를 사용하고 이를 배치 크기(즉, 128)로 나눴습니다.
  • LSTM은 그래디언트 소실 문제를 겪지 않는 경향이 있지만 그래디언트 폭발이 발생할 수 있습니다. 따라서 우리는 노norm이 임계값을 초과할 때 이를 스케일링하여 그래디언트 norm[10, 25]에 대해 엄격한 제약을 적용했습니다. 각 훈련 배치에 대해 s = ||g||2를 계산합니다. 여기서 g는 128로 나눈 기울기입니다. s > 5인 경우 g = 5q/8로 설정합니다.
  • 문장마다 길이가 다릅니다. 대부분의 문장은 짧지만(예: 길이 20-30) 일부 문장은 길기 때문에(예: 길이 > 100) 무작위로 선택된 128개의 훈련 문장으로 구성된 미니 배치에는 짧은 문장이 많고 긴 문장이 거의 없습니다. 미니배치의 계산 중 일부가 낭비됩니다. 이 문제를 해결하기 위해 우리는 미니배치의 모든 문장이 대략 같은 길이인지 확인하여 속도를 2배 향상시켰습니다.

3.5 병렬화
단일 GPU에서 이전 섹션의 구성을 사용하여 Deep LSTM을 C++로 구현하면 초당 약 1,700단어의 속도를 처리합니다. 이는 우리의 목적에 비해 너무 느렸기 때문에 8-GPU 시스템을 사용하여 모델을 병렬화했습니다. LSTM의 각 레이어는 서로 다른 GPU에서 실행되었으며 해당 활성화가 계산되자마자 다음 GPU/레이어에 전달되었습니다. 우리 모델에는 4개의 LSTM 레이어가 있으며 각 레이어는 별도의 GPU에 있습니다. 나머지 4개의 GPU는 소프트맥스를 병렬화하는 데 사용되었으므로 각 GPU는 1000 × 20000 행렬을 곱하는 일을 담당했습니다. 결과 구현에서는 128개의 미니배치 크기로 초당 6,300단어(영어 및 프랑스어 모두)의 속도를 달성했습니다. 이 구현에서는 훈련에 약 10일이 걸렸습니다.

 

3.6 실험 결과
우리는 번역 품질을 평가하기 위해 케이스형 BLEU 점수[24]를 사용했습니다. 우리는 토큰화된 예측과 실제 데이터에 대해 multi-bleu.pl1을 사용하여 BLEU 점수를 계산했습니다. 이러한 BELU 점수 평가 방식은 [5], [2]와 일치하며 [29]의 33.3 점수를 재현한다.
그러나 이러한 방식으로 최고의 WMT'14 시스템[9](statmt.org\matrix에서 예측을 다운로드할 수 있음)을 평가하면 37.0을 얻게 되며 이는 statmt.org\matrix에서 보고한 35.8보다 큽니다.

 

결과는 표 1과 2에 나와 있습니다. 무작위 초기화와 미니배치의 무작위 순서가 다른 LSTM 앙상블을 사용하여 최상의 결과를 얻었습니다. LSTM 앙상블의 디코딩된 번역은 최고의 WMT'14 시스템보다 성능이 뛰어나지 않지만 순수 신경 번역 시스템이 무능력에도 불구하고 대규모 MT 작업에서 구문 기반 SMT 기준을 상당한 차이로 능가하는 것은 이번이 처음입니다. 어휘에 맞지 않는 단어를 처리합니다. LSTM은 기준 시스템의 1000개 최고 목록을 다시 채점하는 데 사용되는 경우 최고 WMT'14 결과의 0.5 BLEU 포인트 이내입니다.

표 1: WMT'14 영어-프랑스어 테스트 세트(ntst14)에서 LSTM의 성능. 크기 2의 빔을 가진 5개의 LSTM 앙상블은 크기 12의 빔을 가진 단일 LSTM의 앙상블보다 저렴합니다.

표 2: WMT'14 영어-프랑스어 테스트 세트(ntst14)에서 SMT 시스템과 함께 신경망을 사용하는 방법.


3.7 긴 문장의 성능
우리는 LSTM이 긴 문장에서 잘 작동한다는 사실에 놀랐습니다. 이는 그림 3에 정량적으로 표시되어 있습니다. 표 3은 긴 문장과 번역의 몇 가지 예를 보여줍니다.

표 3: Ground Truth 번역과 함께 LSTM에서 생성된 긴 번역의 몇 가지 예입니다. 독자는 Google 번역을 사용하여 번역이 합리적인지 확인할 수 있습니다.

 

3.8 모델 분석

그림 2: 그림은 그림의 구문을 처리한 후 얻은 LSTM 숨겨진 상태의 2차원 PCA 투영을 보여줍니다. 구문은 의미에 따라 클러스터링되는데, 이 예에서는 주로 단어 순서의 함수이므로 단어 모음 모델로 포착하기 어렵습니다. 두 클러스터 모두 유사한 내부 구조를 가지고 있습니다.

 

우리 모델의 매력적인 특징 중 하나는 일련의 단어를 고정 차원의 벡터로 변환하는 능력입니다. 그림 2는 학습된 표현 중 일부를 시각화합니다. 그림은 표현이 단어의 순서에 민감한 반면 능동태를 수동태로 바꾸는 데는 상당히 둔감하다는 것을 분명히 보여줍니다. 2차원 투영은 PCA를 사용하여 얻습니다.

그림 3: 왼쪽 플롯은 문장 길이에 따른 시스템 성능을 보여줍니다. 여기서 x축은 길이별로 정렬된 테스트 문장에 해당하고 실제 시퀀스 길이로 표시됩니다.
35단어 미만의 문장에서는 성능 저하가 없으며, 가장 긴 문장에서는 약간의 성능 저하만 나타납니다. 오른쪽 플롯은 점점 더 희귀한 단어가 포함된 문장에 대한 LSTM의 성능을 보여줍니다. 여기서 x축은 "평균 단어 빈도 순위"로 정렬된 테스트 문장에 해당합니다.

 

4 관련 작업
신경망을 기계 번역에 적용하는 데 대한 많은 작업이 있습니다. 지금까지 RNN-언어 모델(RNNLM)[23] 또는 피드포워드 신경망 언어 모델(NNLM)[3]을 MT 작업에 적용하는 가장 간단하고 효과적인 방법은 강력한 n-베스트 목록의 점수를 다시 매기는 것입니다. 번역 품질을 안정적으로 향상시키는 MT 기준선[22].


최근에는 연구자들이 소스 언어에 대한 정보를 NNLM에 포함하는 방법을 조사하기 시작했습니다. 이 연구의 예로는 Auli et al. [1]은 NNLM을 입력 문장의 주제 모델과 결합하여 채점 성능을 향상시킵니다. Devlinet al. [8]은 유사한 접근 방식을 따랐지만 NNLM을 MT 시스템의 디코더에 통합하고 디코더의 정렬 정보를 사용하여 입력 문장에서 가장 유용한 단어를 NNLM에 제공했습니다. 그들의 접근 방식은 매우 성공적이었으며 기준선에 비해 큰 개선을 이루었습니다.


우리의 작업은 입력 문장을 벡터로 매핑한 다음 다시 문장으로 처음으로 매핑한 Kalchbrenner 및 Blunsom [18]과 밀접한 관련이 있지만 그들은 단어의 순서를 잃는 컨볼루션 신경망을 사용하여 문장을 벡터로 매핑합니다. 이 연구와 유사하게 Cho et al. [5]는 LSTM과 유사한 RNN 아키텍처를 사용하여 문장을 벡터로 매핑하고 그 반대로 매핑했지만 주요 초점은 신경망을 SMT 시스템에 통합하는 것이었습니다. Bahdanauet al. [2]도 Cho 등이 경험한 긴 문장의 성능 저하를 극복하기 위해 Attention 메커니즘을 사용한 신경망을 사용하여 직접 번역을 시도했습니다. [5] 고무적인 결과를 얻었다. 마찬가지로, Pouget-Abadie et al. [26]은 Cho 등의 메모리 문제를 해결하려고 시도했습니다. [5] 구문 기반 접근 방식과 유사한 원활한 번역을 생성하는 방식으로 원본 문장의 일부를 번역합니다. 우리는 그들이 역방향 소스 문장에 대해 네트워크를 훈련함으로써 유사한 개선을 달성할 수 있다고 의심합니다.


엔드투엔드 훈련은 Hermann et al.의 초점이기도 합니다. [12]의 모델은 피드포워드 네트워크의 입력과 출력을 나타내고 이를 공간의 유사한 지점에 매핑합니다. 그러나 그들의 접근 방식은 번역을 직접 생성할 수 없습니다. 번역을 얻으려면 미리 계산된 문장 데이터베이스에서 가장 가까운 벡터를 찾거나 문장의 점수를 다시 매겨야 합니다.

 

5. 결론
이 작업에서 우리는 어휘가 제한되어 있고 문제 구조에 대해 거의 가정하지 않는 대규모 Deep LSTM이 대규모 MT 작업에서 어휘가 무제한인 표준 SMT 기반 시스템보다 성능이 뛰어날 수 있음을 보여주었습니다. MT에 대한 간단한 LSTM 기반 접근 방식의 성공은 충분한 훈련 데이터가 있다면 다른 많은 시퀀스 학습 문제에서도 잘 작동할 것임을 시사합니다.

 

우리는 원본 문장의 단어를 뒤집어서 얻은 개선 정도에 놀랐습니다. 우리는 학습 문제를 훨씬 더 단순하게 만들기 때문에  단기 종속성이 가장 높은 문제 인코딩을 찾는 것이 중요하다고 결론지었습니다. 특히, 우리는 역전되지 않은 번역 문제(그림 1 참조)에 대해 표준 RNN을 훈련할 수 없었지만, 소스 문장이 역전되면 표준 RNN이 쉽게 훈련될 수 있어야 한다고 믿습니다(비록 검증하지는 않았지만 실험적으로).


우리는 또한 매우 긴 문장을 정확하게 번역하는 LSTM의 능력에 놀랐습니다. 우리는 처음에 LSTM이 제한된 메모리로 인해 긴 문장에서 실패할 것이라고 확신했으며 다른 연구자들은 우리와 유사한 모델을 사용하여 긴 문장에서 성능이 좋지 않다고 보고했습니다[5, 2, 26]. 그러나 역방향 데이터 세트로 훈련된 LSTM은 긴 문장을 번역하는 데 거의 어려움이 없었습니다.


가장 중요한 것은 간단하고 간단하며 상대적으로 최적화되지 않은 접근 방식이 SMT 시스템보다 성능이 뛰어날 수 있다는 점을 입증했기 때문에 추가 작업을 통해 번역 정확도가 더욱 높아질 가능성이 높습니다. 이러한 결과는 우리의 접근 방식이 다른 까다로운 시퀀스 대 시퀀스 문제에 대해 잘 작동할 가능성이 있음을 시사합니다.

 

6 감사의 말씀
유용한 의견과 토론을 해주신 Samy Bengio, Jeff Dean, Matthieu Devin, Geoffrey Hinton, Nal Kalchbrenner, Thang Luong, Wolfgang Macherey, Rajat Monga, Vincent Vanhoucke, Peng Xu, Wojciech Zaremba 및 Google Brain 팀에 감사드립니다.

 

References
[1] M. Auli, M. Galley, C. Quirk, and G. Zweig. Joint language and translation modeling with recurrent neural networks. In EMNLP, 2013.
[2] D. Bahdanau, K. Cho, and Y. Bengio. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473, 2014.
[3] Y. Bengio, R. Ducharme, P. Vincent, and C. Jauvin. A neural probabilistic language model. In Journal of Machine Learning Research, pages 1137–1155, 2003.
[4] Y. Bengio, P. Simard, and P. Frasconi. Learning long-term dependencies with gradient descent is difficult. IEEE Transactions on Neural Networks, 5(2):157–166, 1994.
[5] K. Cho, B. Merrienboer, C. Gulcehre, F. Bougares, H. Schwenk, and Y. Bengio. Learning phrase representations using RNN encoder-decoder for statistical machine translation. In Arxiv preprint arXiv:1406.1078, 2014.
[6] D. Ciresan, U. Meier, and J. Schmidhuber. Multi-column deep neural networks for image classification. In CVPR, 2012.
[7] G. E. Dahl, D. Yu, L. Deng, and A. Acero. Context-dependent pre-trained deep neural networks for large vocabulary speech recognition. IEEE Transactions on Audio, Speech, and Language Processing - Special Issue on Deep Learning for Speech and Language Processing, 2012.
[8] J. Devlin, R. Zbib, Z. Huang, T. Lamar, R. Schwartz, and J. Makhoul. Fast and robust neural network joint models for statistical machine translation. In ACL, 2014.
[9] Nadir Durrani, Barry Haddow, Philipp Koehn, and Kenneth Heafield. Edinburgh’s phrase-based machine translation systems for wmt-14. In WMT, 2014.
[10] A. Graves. Generating sequences with recurrent neural networks. In Arxiv preprint arXiv:1308.0850, 2013.
[11] A. Graves, S. Fern´andez, F. Gomez, and J. Schmidhuber. Connectionist temporal classification: labelling unsegmented sequence data with recurrent neural networks. In ICML, 2006.
[12] K. M. Hermann and P. Blunsom. Multilingual distributed representations without word alignment. In ICLR, 2014.
[13] G. Hinton, L. Deng, D. Yu, G. Dahl, A. Mohamed, N. Jaitly, A. Senior, V. Vanhoucke, P. Nguyen, T. Sainath, and B. Kingsbury. Deep neural networks for coustic modeling in speech recognition. IEEE Signal Processing Magazine, 2012.
[14] S. Hochreiter. Untersuchungen zu dynamischen neuronalen netzen. Master’s thesis, Institut fur Informatik, Technische Universitat, Munchen, 1991.
[15] S. Hochreiter, Y. Bengio, P. Frasconi, and J. Schmidhuber. Gradient flow in recurrent nets: the difficulty of learning long-term dependencies, 2001.
[16] S. Hochreiter and J. Schmidhuber. Long short-term memory. Neural Computation, 1997.
[17] S. Hochreiter and J. Schmidhuber. LSTM can solve hard long time lag problems. 1997.
[18] N. Kalchbrenner and P. Blunsom. Recurrent continuous translation models. In EMNLP, 2013.
[19] A. Krizhevsky, I. Sutskever, and G. E. Hinton. ImageNet classification with deep convolutional neural networks. In NIPS, 2012.
[20] Q.V. Le, M.A. Ranzato, R. Monga, M. Devin, K. Chen, G.S. Corrado, J. Dean, and A.Y. Ng. Building high-level features using large scale unsupervised learning. In ICML, 2012.
[21] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998.
[22] T. Mikolov. Statistical Language Models based on Neural Networks. PhD thesis, Brno University of Technology, 2012.
[23] T. Mikolov, M. Karafi´at, L. Burget, J. Cernock `y, and S. Khudanpur. Recurrent neural network based language model. In INTERSPEECH, pages 1045–1048, 2010.
[24] K. Papineni, S. Roukos, T. Ward, and W. J. Zhu. BLEU: a method for automatic evaluation of machine translation. In ACL, 2002.
[25] R. Pascanu, T. Mikolov, and Y. Bengio. On the difficulty of training recurrent neural networks. arXiv preprint arXiv:1211.5063, 2012.
[26] J. Pouget-Abadie, D. Bahdanau, B. van Merrienboer, K. Cho, and Y. Bengio. Overcoming the curse of sentence length for neural machine translation using automatic segmentation. arXiv preprint arXiv:1409.1257, 2014.
[27] A. Razborov.  On small depth threshold circuits.  In Proc. 3rd Scandinavian Workshop on Algorithm Theory, 1992.
[28] D. Rumelhart, G. E. Hinton, and R. J. Williams. Learning representations by back-propagating errors. Nature, 323(6088):533–536, 1986.
[29] H. Schwenk.  University le mans.  http://www-lium.univ-lemans.fr/˜schwenk/cslm_joint_paper/, 2014. [Online; accessed 03-September-2014].
[30] M. Sundermeyer, R. Schluter, and H. Ney. LSTM neural networks for language modeling. In INTER-SPEECH, 2010.
[31] P. Werbos. Backpropagation through time: what it does and how to do it. Proceedings of IEEE, 1990.

+ Recent posts