sequence transduction models
입력 시퀀스를 받아 변환된 출력 시퀀스를 생성하는 모델을 의미합니다. 주로 자연어 처리, 음성 인식, 기계 번역에서 사용됩니다.
이전에는 순차 변환 모델에서는 대부분 RNN 혹은 CNN과 같은 인코더 - 디코더 구조를 따르는 신경망을 사용하였음.
→ 어텐션 매커니즘을 기반으로 두고 있는 Transformer라는 간단한 구조를 생성하였다! (순환과 합성곱은 완전히 배제한다.)
더 적은 학습 비용과 향상된 성능을 보여주었다고 함.
순환 모델은 일반적으로 입력 및 출력 시퀀스의 각 심볼 위치에 따라 연산을 수행합니다. 각 위치를 연산 단계에 맞추어 정렬하며, 시간 t에서의 은닉 상태 h_t를 이전 은닉 상태 h_t-1 및 해당 위치 t의 입력을 이용해 생성합니다.
→ 순차적 특징이 존재
따라서, 훈련 데이터 내에서 병렬 처리가 불가능하며 시퀀스 길이가 길어질수록 메모리 제한으로 인해 배치 크기를 증가시키는 것이 어려워지는 문제가 발생합니다.
(이를 해결하기 위해서 인수분해 기법과 조건부 연산과 같은 방법이 나오기는 했지만 순차적 특징의 근본적인 문제는 해결되지 않습니다.)
이와 달리, 어텐션 매커니즘은 입력 또는 출력 시퀀스 내에서 거리와 상관없이 의존 관계를 모델링 할 수 있도록 해줍니다.
그러나 일부 예외적인 경우를 제외하면 대부분의 경우 이러한 어텐션 매커니즘은 순환 신경망과 함께 사용됩니다.
→ 트랜스포머에서는 순환 신경망 없이 오직 어텐션 매커니즘으로만 시퀀스를 처리합니다!