2017년 구글의 한 연구팀은 "Attention Is All You Need"라는 제목의 논문을 발표했는데, 이 논문에서 설명한 아키텍처는 현재 거의 모든 주요 언어 모델에 적용되고 있습니다. 트랜스포머는 순환 어텐션을 자체 어텐션으로 대체했습니다. 즉, 시퀀스의 모든 토큰이 다른 모든 토큰을 직접 참조하여 현재 예측에 각 토큰이 얼마나 중요한지 가중치를 부여할 수 있습니다.
병렬 검색 방식이 핵심입니다. 기존의 순환 신경망은 단어를 하나씩 처리했기 때문에 장거리 의존 관계 학습이 어렵고 학습 속도가 느렸습니다. 트랜스포머 신경망은 전체 시퀀스를 한 번에 처리하므로 문단 끝에 있는 대명사가 문단 처음에 있는 선행사를 참조하더라도 문맥의 흐름을 놓치지 않습니다.
핵심 구성 요소
- 모든 토큰 쌍 간의 관계를 계산하는 셀프 어텐션 레이어
- 여러 어텐션 연산을 병렬로 실행하는 멀티 헤드 어텐션입니다.
- 단어 순서 정보를 주입하는 위치 인코딩
- 깊은 스택을 안정화하는 피드포워드 블록 및 잔류 연결
비용은 제곱에 비례합니다. 시퀀스 길이가 두 배가 되면 어텐션 연산량은 네 배가 됩니다. 이것이 바로 컨텍스트 윈도우가 비용이 많이 드는 이유이며, 연구자들이 희소 어텐션이나 선형 어텐션과 같은 효율적인 변형 모델을 계속해서 제안하는 이유입니다.
Comments (3)
Leave a comment