2017년 Vaswani 등의 연구 그룹이 발표한 「Attention is All You Need」논문을 통해 소개된 신경망 아키텍처
주요 기능
순환 신경망과 같은 순차적 방식이 아닌 병렬로 입력 시퀀스를 처리 가능
→ 긴 시퀀스를 순환 신경망 모델보다 훨씬 더 빠르고 효율적으로 처리 가능
self-attention을 기반으로 함
대용량 데이터세트에서 매우 효율적임
오토 인코딩 또는 자기 회귀 방식으로 학습됨


입력 시퀀스의 중요한 부분에 초점을 맞추어 문맥을 이해하고 적절한 출력을 생성하자!
인코더와 디코더 간의 상호작용
어텐션 메커니즘은 인코더와 디코더 단어 사이의 상관관계를 계산하여 중요한 정보에 집중함
→ 입력 시퀀스의 각 단어가 출력 시퀀스의 어떤 단어와 관련이 있는지를 파악

각각 N개의 트랜스포머 블록으로 구성됨
Multi-Head Attention
입력 시퀀스에서 쿼리(query), 키(key), 값(value) 벡터를 정의해 입력 시퀀스들의 관계를 self-attention하는 벡터 표현 방법
쿼리와 각 키의 유사도 계산 → 유사도를 가중치로 사용하여 값 벡터를 합산
→ 계산된 attention matrix는 입력 시퀀스 각 단어의 임베딩 벡터를 대체함
Feed-Forward Network
입력 임베딩
입력 시퀀스의 각 단어는 임베딩 처리되어 벡터 형태로 변환됨
트랜스포머 모델은 순환 신경망과 달리 입력 시퀀스를 병렬 구조로 처리
→ 단어의 순서 정보를 제공하지 x
→ 위치 정보를 임베딩 벡터에 추가해 단어의 순서 정보를 모델에 반영
위치 인코딩