본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
카테고리 없음

[2024-2] 차승우 - Seq2Seq(Sequence to Sequence Learning with Neural Networks)

by blanktemplete 2024. 12. 27.

https://arxiv.org/abs/1409.3215

 

0. Abstact

 0.1. Seq2Seq 발생 배경

 - DNNs(Deep Nerual Networks)는 시퀀스를 시퀀스로 매핑하는 작업에는 사용할 수 없다.

 0.2. Seq2Seq

 - 이 논문에서는 시퀀스 구조에 대한 가정을 최소화하는 일반적인 end-to-end 시퀀스 학습 접근법을 제안한다. 이 방법은 다층 Long Short-Term Memory(LSTM)를 사용해 입력 시퀀스를 고정 차원의 벡터로 매핑하고, 또 다른 깊은 LSTM을 사용해 해당 벡터에서 타겟 시퀀스를 디코딩한다.

 - 주요 결과로, WMT-14 데이터셋의 영어-프랑스어 번역 작업에서 LSTM이 전체 테스트 세트에서 BLEU 점수 34.8을 기록

1. Introduction

 1.1. DNN의 한계

 - 위에서 언급한 바와 같이 고정된 차원의 형식을 가진 입력, 출력의 경우만 처리가 가능하다.

 (그러나 현실에서는 입력의 크기가 제한되어 있지 않는 경우가 다수 존재한다.)

 

 1.2. LSTM

  1. 입력 LSTM(Encorder)

  - LSTM은 입력 시퀀스를 고정된 차원의 벡터로 변환.

  2. 출력 LSTM(Decorder)

  - LSTM은 해당 벡터에서 출력 시퀀스를 생성.

 

 1.3. LSTM 기능

  1. 가변적인 문장을 입력으로 받을 수 있다.

  2. 유사한 문장 간의 의미를 반영

 

 1.4. 이외 사용 기법

  1. 문장 역순 배치

   - 문장의 단어 순서를 반대로 뒤집는 방식(단기 의존성 문제가 존재)

 

 1.5. 결과

  - WMT'14 영어-프랑스어 번역 작업에서, 5개의 딥 LSTM 앙상블(각각 3억 8천만 개의 매개변수)을 사용하여 간단한 좌에서 우로 진행하는 빔 서치 디코더로 번역을 직접 생성해 BLEU 점수 34.81을 얻었다.(재채점시 36.5)

2. Model

 2.1. RNN(Recurrent Neural Network)

  1. RNN 

   - 입력과 출력간의 매핑이 명시적이지 않으면 효과적으로 학습하지 못한다.

   3. 순차적인 처리

   - RNN의 경우 정의에 나온 것처럼 순차적으로 데이터를 처리하기 때문에 입력과 출력의 순서가 일치하지 않은 경우 학습하기 어렵다.

출처 : https://stackoverflow.com/questions/39962463/are-recurrent-neural-networks-a-chain-of-neural-networks

 

 - U : 입력 x와 은닉 상태를 연결하는 가중치 행렬
 - V : 은닉 상태 간 순환 연결하는 가중치 행렬
 - W : 은닉 상태에서 출력으로의 연결하는 가중치 행렬

 

2.2. LSTM

 - 장기의존성 문제의 경우 LSTM에 존재하는 cell을 통해 정보를 선택적으로 처리하여 장기 의존성 문제를 해결한다.

출처 : https://wikidocs.net/152773

 1. LSTM(Encorder)

  - 입력 시퀀스를 LSTM의 마지막 은닉 상태를 통해 고정 크기 표현 v로 변환.

  2. LSTM(Decorder)

  - Encorder에서 반환한 고정크기 벡터 v와 이전에 생성됐던 출력(y, ... , y(t-1))를 통한 y(t) 생성

  - 위를 반복하여 전체 출력 생성

출처 : https://stackoverflow.com/questions/46355651/understanding-seq2seq-model

  

3. Experiment

 3.1. Dataset Details

 - WMT’14 영어-프랑스어 데이터셋을 사용

 - 12M 문장, 348M 프랑스어 단어, 304M 영어 단어로 구성

 - 160,000개의 소스 언어와 80,000의 타켓 언어

 - 어휘에 포함되지 않는 단어는 "UNK"라는 토큰으로 대체.

 

 

 3.2. Decoding and Rescoring

  

  1. 조건부 확률 p(T ∣ S)의 최대화

  - T : 번역문, S : 원문

  - 이 확률의 최대화를 통해 번역이 원문과 얼마나 잘 일치하는 지를 판다.

 

  2. 번역 선택(& 빔 서치)

  - 주어진 원문에 대해 가장 일치율이 높은 번역을 탐색

  3. 빔 유지 

  - N개의 일치율이 높은 번역을 유지, 나머지 제거

 

 4. 종료과정까지 반복

 

 ps. 빔 서치

 - 가능한 모든 번역을 탐색하는 대신, N개의 가장 가능성 높은 후보를 유지하면서 점진적으로 확장

 

 3.3. Reversing the Source Sentences

 - 소스 문장의 반전을 통해 장기의존성 문제 해결

 - 위에서 언급했듯이 단기 의존성 문제의 존재

 

 3.4. Training details

  1. 구조 및 구성

  - 160,000개의 소스 언어와 80,000의 타켓 언어

  - 1000차원 워드 임베딩

  - 4개의 심층 LSTM 레이어

  - 1000개의 셀

  2. 학습 세부 사항

   1. 초기화

   - 0.08 ~ 0.08 사이의 균등 분포로 매개변수 초기화

   2. 학습율

   - 초기치 0.7, 5 epoch 마다 절반으로 감

   3. 미니배치

   - 128개로 구성

 

 3.5. Parallelization(병렬화)

 - 8-GPU 시스템

 - 10일의 학습 시간 소비

 

 3.6. Experimental Results

출처 : https://arxiv.org/abs/1409.3215

 

 

 - 단일 LSTM : BLEU 26.17~30.59.

 - 5개의 LSTM : BLEU 34.81.

출처 : https://arxiv.org/abs/1409.3215

 

 3.7. Performance on long sentences

 - long sentences에도 BELU가 낮게 감소

 

 3.8. Model Analysis

출처 : https://arxiv.org/abs/1409.3215 우

 - 위의 그림은 문장을 고정된 차원의 벡터로 변환 후 2차원으로 PCA를 통해 축소하여 시각화했습니다. PCA를 통해 의미가 유사한 문장의 경우 모여있는 것을 볼 수 있습니다.

 

출처 : https://arxiv.org/abs/1409.3215

 1. 문장 길이에 따른 성능

 - 장기의존성 문제에 강한 성능을 보여준다. 

 2. 희귀 단어에 대한 처리 능력

 - 생소한 단어가 포함된 문장에서도 비교적 강한 성능을 보여준다.

4. Related work

5. Conclusion

 1. MT 작업에서의 적합성

 - 이 연구는 제한된 어휘를 가진 LSTM 모델이, 무제한 어휘를 사용하는 SMT 시스템을 대규모 기계 번역 작업에서 더 잘 수행할 수 있다는 사실을 발견

 2. 단어 역순 배치의 의미성

 - 소스 문장의 단어 순서를 반대로 뒤집었을 때 성능이 크게 향상(단기 의존성을 최대화하는 인코딩 방식)

 3. 추가 연구의 가능성

 - LSTM이 매우 긴 문장을 올바르게 번역하는 것에도 안정적인 성능을 보여주기 때문에 4의 해당하는 연구가 추가적으로 가능할 것이라는 점을 보여준다.