AI

Seq2Seq (Encoder-Decoder Model) (2014)

jw92 2022. 9. 4. 13:21

1. 구조

1-1. 전체 구조: 2개의 RNN

         Long term dependency problem을 가지기 때문에  LSTM을 선택

1-2. Encoder: input 시퀀스를 하나의 context vector로 변환

1-3. Decoder: 디코더 - RNNLM(Recurrent Neural Network Language Model, RNNLM)

  • 가변적인 길이의 데이터를 다루기 위해 사용
  • 예측 과정에서 이전 시점의 출력을 현재 시점의 입력으로 함

  • EOS가 아웃풋으로 나오게 되면 종료
  • Training 시에는 빠른 학습을 위하여 Teacher forcing 방식 사용 (Output이 틀린 경우에 학습에 방해가 됨)

2. 한계

  • 하나의 고정된 크기의 벡터에 모든 정보를 압축해서 정보 손실이 발생
  • RNN의 고질적인 문제인 Vanishing Gradient 문제가 존재
  • 이를 해결하기 위해 여러가지 기법을 적용
    • 입력 단어를 거꾸로 입력 - 인풋의 첫 단어를 아웃풋의 첫 입력에 가장 영향력 있게 사용
    • Bidirectional RNNs - 입력 단어를 정방향, 역방향 모두 사용
    • Attention Mechanism
      • 디코더에서 출력 단어를 예측하는 매 시점(time step)마다, 인코더에서의 전체 입력 문장을 다시 한 번 참고
      • 해당 시점에서 예측해야할 단어와 연관이 있는 입력 단어 부분을 좀 더 집중(attention)해서 참고
      • https://jw92.tistory.com/30
 

Attention Mechanism (Dot-Product Attention) (2015)

1. 전체 구조 기존 Seq2Seq는 시점 t에서 출력 단어를 예측하기 위해서 디코더의 셀은 두 개의 입력값이 필요 여기에 하나의 값을 더해서 예측 a. 시점 t-1의 Hidden state b. 시점 t-1에 나온 출력 c. 어텐

jw92.tistory.com

 

'AI' 카테고리의 다른 글

Universal Transformer (2018)  (0) 2022.09.04
LLM - Transformer (2017)  (0) 2022.09.04
Attention Mechanism (Dot-Product Attention) (2015)  (0) 2022.09.04
LSTM (Long Short-Term Memory)  (0) 2022.09.04
RNN (Recurrent Neural Network)  (0) 2022.01.12