트랜스포머 블록

IT 위키
인공무능 (토론 | 기여)님의 2025년 9월 24일 (수) 12:07 판 (새 문서: 트랜스포머 블록(Transformer block)은 자연어 처리 및 기타 시퀀스 모델링에서 사용되는 트랜스포머 아키텍처의 기본 구성 요소이다. 트랜스포머 블록은 입력 벡터를 받아 내부적으로 self-attention 연산과 피드포워드 신경망을 거쳐 출력 벡터로 변환한다. ==구성 요소== 트랜스포머 블록은 일반적으로 다음 구성 요소들로 이루어...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

트랜스포머 블록(Transformer block)은 자연어 처리 및 기타 시퀀스 모델링에서 사용되는 트랜스포머 아키텍처의 기본 구성 요소이다. 트랜스포머 블록은 입력 벡터를 받아 내부적으로 self-attention 연산과 피드포워드 신경망을 거쳐 출력 벡터로 변환한다.

구성 요소[편집 | 원본 편집]

트랜스포머 블록은 일반적으로 다음 구성 요소들로 이루어져 있다:

Multi-Head Self-Attention

  • 입력 벡터 집합에 대해 쿼리, 키, 값 행렬을 계산하고, 스케일된 닷프로덕트 어텐션을 머리별로 수행한 뒤 결합(concatenate)하고 다시 선형 사상으로 변환한다. 이 연산은 토큰 간의 관계를 파악하고 정보 흐름을 조절하는 역할을 한다.[1] 다중 머리를 이용하면 여러 표현 관점을 병렬로 학습할 수 있다.

Residual Connection + Layer Normalization (잔차 연결 + 층 정규화)

  • 각 하위 구성 요소(예: attention, feed-forward)를 통과한 후 결과에 원래 입력을 더해주는 잔차 연결을 적용하고, 그 위에 layer normalization을 수행한다. 이를 통해 깊은 신경망에서의 그래디언트 흐름이 안정화되고 학습이 용이해진다. 설계에 따라 정규화를 입력 전에 수행하는 pre-norm 방식 또는 후에 수행하는 post-norm 방식이 있다.

Position-Wise Feed-Forward Network (위치별 피드포워드 네트워크)

  • 각 토큰마다 동일한 2층(혹은 그 이상)의 완전연결 신경망을 적용하는 구성이다. 보통 활성화 함수(ReLU, GELU 등)를 사이에 두며, 중간 차원을 모델 차원보다 크게 설정하는 경우가 많다.

입력과 출력 흐름[편집 | 원본 편집]

한 블록 내의 순서 흐름은 보통 아래와 같다:

  1. 입력에 layer normalization을 적용 (혹은 후처리 방식일 경우 직전 블록의 출력을 그대로 사용)
  2. Multi-head self-attention을 적용
  3. 잔차 연결 후 정규화
  4. 정규화된 결과에 대해 feed-forward 네트워크 적용
  5. 다시 잔차 연결 후 최종 출력 생성

블록의 역할 및 중요성[편집 | 원본 편집]

  • 트랜스포머 아키텍처는 여러 개의 동일한 블록을 층(layer) 단위로 쌓아서 구성된다. 각 블록을 통과할수록 입력 표현은 점점 더 높은 수준의 맥락 정보를 포함하게 된다.
  • 자기주의 연산을 통해 시퀀스 내 모든 위치 간의 상호작용이 가능하므로, 멀리 떨어진 토큰 간의 의존 관계를 잘 포착할 수 있다.
  • 잔차 연결과 정규화 구조 덕분에 깊은 네트워크에서도 안정적으로 학습할 수 있다.
  • 피드포워드 네트워크는 각 위치별로 비선형 변환을 담당하며, attention이 포착한 관계 정보를 토대로 특징 변환을 수행한다.

변형 및 응용[편집 | 원본 편집]

트랜스포머 블록은 다양한 응용 영역과 최신 모델에서 여러 가지 변형이 존재한다:

  • 디코더 블록에서는 self-attention 외에 encoder-decoder 간 cross-attention 서브블록이 추가된다.
  • 활성화 함수나 정규화 위치를 바꾼 설계 (예: pre-norm, post-norm, GELU, SwiGLU 등)
  • 비전 트랜스포머(Vision Transformer)에서는 입력을 패치 단위로 쪼개어 블록에 입력하고, 블록 구조를 그대로 사용한다.
  • 긴 시퀀스 처리를 위한 효율화된 attention 구조 (sparse attention, 롱폼 시퀀스 대응 등)

한계 및 고려사항[편집 | 원본 편집]

  • 블록 내 attention 연산은 입력 길이에 대해 제곱 복잡도를 가지므로, 매우 긴 시퀀스에 대해서는 계산 비용과 메모리 부담이 크다.
  • 블록 깊이가 깊어질수록 학습 안정성과 수렴 문제가 생길 수 있으며, 적절한 학습률 스케줄링, 정규화 전략 등이 요구된다.
  • 설계 선택(정규화 방식, 머리 수, 중간 차원 등)에 따라 성능과 효율성 사이의 균형 조정이 필요하다.

같이 보기[편집 | 원본 편집]

참고 문헌[편집 | 원본 편집]

  • Vaswani, A. 등, “Attention Is All You Need”, 2017
  • “The Transformer Model”, MachineLearningMastery
  • “Transformer Architecture explained”, Medium 글

각주[편집 | 원본 편집]

  1. Vaswani et al., Attention Is All You Need, 2017