트랜스포머와 어텐션을 쉬운 말로 이해하기
수학을 몰라도 어텐션 메커니즘이 모델이 관련 맥락에 집중하도록 하는 방식을 살펴보며 트랜스포머 아키텍처를 쉽게 이해합니다.
트랜스포머와 어텐션을 쉬운 말로 이해하기은(는) CoddyKit의 무료 AI Engineering Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AI Engineering Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AI Engineering Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
핵심 문제: 장거리 의존성
"트로피가 너무 커서 가방에 들어가지 않았다"에서 그것은 무엇을 가리킬까요? 이전 모델은 긴 문장에서 이런 관계를 놓쳤습니다. 이것이 장거리 의존성 문제입니다.
가중치가 적용된 집중으로서의 어텐션
어텐션은 각 단어에 대해 어떤 단어가 가장 중요한지 모델이 결정하는 방식입니다. 모든 단어를 똑같이 다루는 대신 글의 핵심 부분을 강조하는 것과 비슷합니다.
쿼리, 키, 값
어텐션은 검색과 비슷하게 작동합니다. 각 단어가 쿼리를 보내고, 이를 모든 키와 비교한 다음 가장 관련성 높은 값을 가져옵니다. 아래 코드는 핵심 아이디어를 보여 줍니다.
# Simplified self-attention in pseudocode
import numpy as np
def scaled_dot_product_attention(Q, K, V):
d_k = Q.shape[-1] # dimension of keys
scores = Q @ K.T / np.sqrt(d_k) # scale to prevent vanishing gradients
weights = np.exp(scores) / np.sum(np.exp(scores), axis=-1, keepdims=True) # softmax
output = weights @ V # weighted sum of values
return output다중 헤드 어텐션: 여러 관점
어텐션 헤드 하나는 한 종류의 연결을 포착합니다. 다중 헤드 어텐션은 여러 헤드를 병렬로 실행하므로 모델이 한 번에 여러 관점에서 단어를 바라볼 수 있습니다.
위치 인코딩: 단어 순서 추가
어텐션만 사용하면 단어 순서를 무시하므로 "개가 사람을 문다"와 "사람이 개를 문다"가 똑같이 보입니다. 위치 인코딩은 위치 정보를 추가하여 순서를 보존합니다.
어텐션 이후의 순방향 계층
어텐션이 문맥을 공유한 뒤에는 순방향 신경망이 각 단어를 개별적으로 처리합니다. 흥미롭게도 모델의 사실 지식 상당 부분이 이곳에 저장되는 것으로 보입니다.
인코더 전용 모델과 디코더 전용 모델
BERT 방식의 인코더 전용 모델은 모든 텍스트를 한 번에 읽어 이해합니다. GPT 방식의 디코더 전용 모델은 텍스트를 생성하기 위해 왼쪽에서 오른쪽으로 읽으며, ChatGPT도 이 방식을 사용합니다.
계층 쌓기와 깊이
최신 LLM은 수십 개의 트랜스포머 블록을 쌓습니다. 각 계층은 이전 결과를 다듬습니다. 초기 계층은 문법을 포착하고, 더 깊은 계층은 추론을 처리합니다. 깊이가 깊을수록 더 많은 사고가 가능합니다.
잔차 연결과 계층 정규화
많은 계층을 쌓는 일은 쉽지 않습니다. 잔차 연결과 계층 정규화는 신호를 안정적으로 유지하므로, 100개가 넘는 깊은 모델도 안정적으로 학습할 수 있습니다.
어텐션이 매우 잘 확장되는 이유
어텐션은 병렬로 실행하기 쉽기 때문에 GPU가 많을수록 학습이 빨라집니다. 연구자들은 이를 통해 방대한 데이터로 학습했고, 유명한 규모 확장 법칙을 발견했습니다.
FlashAttention과 최신 최적화
입력이 길어지면 기존 어텐션은 메모리를 매우 많이 사용합니다. FlashAttention은 같은 결과를 훨씬 효율적으로 계산하여 큰 문맥 창을 실용적으로 사용할 수 있게 합니다.
빠른 확인
이 수업에서 배운 AI 엔지니어링 개념을 얼마나 이해했는지 확인해 보세요.
수업 요약
요약: 자기 어텐션은 모든 단어를 서로 연결하고, 다중 헤드 어텐션은 여러 관계를 한 번에 포착하며, 잔차 연결과 정규화 덕분에 모델을 깊게 만들 수 있습니다. 다음 주제: LLM을 학습시키는 방법
AI 튜터와 함께 Python을(를) 배우세요 — 무료
브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.
- 코스
- 30
- 레슨
- 120
자주 묻는 질문
“트랜스포머와 어텐션을 쉬운 말로 이해하기” 강의는 무료인가요?
네 — “트랜스포머와 어텐션을 쉬운 말로 이해하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AI Engineering Academy 강의 전체를 잠금 해제할 수 있습니다. AI Engineering Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“트랜스포머와 어텐션을 쉬운 말로 이해하기”에서 뭘 배우나요?
수학을 몰라도 어텐션 메커니즘이 모델이 관련 맥락에 집중하도록 하는 방식을 살펴보며 트랜스포머 아키텍처를 쉽게 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 AI Engineering Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AI Engineering Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AI Engineering Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“트랜스포머와 어텐션을 쉬운 말로 이해하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AI Engineering Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AI Engineering Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 자동 완성에서 ChatGPT까지
- 트랜스포머와 어텐션을 쉬운 말로 이해하기
- LLMs는 어떻게 학습되는가
- LLMs의 능력과 한계