익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
트랜스포머 블록
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
트랜스포머 블록(Transformer block)은 자연어 처리 및 기타 시퀀스 모델링에서 사용되는 [[트랜스포머 (인공지능)|트랜스포머 아키텍처]]의 기본 구성 요소이다. 트랜스포머 블록은 입력 벡터를 받아 내부적으로 [[셀프 어텐션|self-attention 연산]]과 피드포워드 신경망을 거쳐 출력 벡터로 변환한다. ==구성 요소== 트랜스포머 블록은 일반적으로 다음 구성 요소들로 이루어져 있다: '''Multi-Head Self-Attention''' * 입력 벡터 집합에 대해 쿼리, 키, 값 행렬을 계산하고, 스케일된 닷프로덕트 어텐션을 머리별로 수행한 뒤 결합(concatenate)하고 다시 선형 사상으로 변환한다. 이 연산은 토큰 간의 관계를 파악하고 정보 흐름을 조절하는 역할을 한다.<ref>Vaswani et al., Attention Is All You Need, 2017</ref> 다중 머리를 이용하면 여러 표현 관점을 병렬로 학습할 수 있다. '''Residual Connection + Layer Normalization (잔차 연결 + 층 정규화)''' * 각 하위 구성 요소(예: attention, feed-forward)를 통과한 후 결과에 원래 입력을 더해주는 잔차 연결을 적용하고, 그 위에 layer normalization을 수행한다. 이를 통해 깊은 신경망에서의 그래디언트 흐름이 안정화되고 학습이 용이해진다. 설계에 따라 정규화를 입력 전에 수행하는 pre-norm 방식 또는 후에 수행하는 post-norm 방식이 있다. '''Position-Wise Feed-Forward Network (위치별 피드포워드 네트워크)''' * 각 토큰마다 동일한 2층(혹은 그 이상)의 완전연결 신경망을 적용하는 구성이다. 보통 활성화 함수(ReLU, GELU 등)를 사이에 두며, 중간 차원을 모델 차원보다 크게 설정하는 경우가 많다. ==입력과 출력 흐름== 한 블록 내의 순서 흐름은 보통 아래와 같다: #입력에 layer normalization을 적용 (혹은 후처리 방식일 경우 직전 블록의 출력을 그대로 사용) #Multi-head self-attention을 적용 #잔차 연결 후 정규화 #정규화된 결과에 대해 feed-forward 네트워크 적용 #다시 잔차 연결 후 최종 출력 생성 ==블록의 역할 및 중요성== *트랜스포머 아키텍처는 여러 개의 동일한 블록을 층(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 글 ==각주== <references />
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록