중간 점검: NLP · 트랜스포머
토크나이저부터 사전학습까지 NLP · 트랜스포머 트랙을 15문제로 점검하는 중간 평가
먼저 알아야 할 것
다루는 내용
NLP·트랜스포머 트랙 전체를 점검하는 15문제(개념 7 · 계산 8)입니다. BPE 병합, 코사인 유사도, 퍼플렉서티, 어텐션 가중치, ALiBi 기울기, 층 파라미터 수, top-p, 6ND 연산량 등을 손으로 계산하고, 계열 선택 · 디코딩 판단을 풀이와 수업 링크로 확인합니다.
해설
중간 점검: NLP · 트랜스포머
NLP·트랜스포머 트랙(토크나이저부터 사전학습까지)을 다 읽었다면, 이 문제들로 이해를 점검합니다. 계산 문제는 손으로 풀 수 있게 숫자를 작게 만들었고, 모든 문제 아래에 풀이와 해당 수업 링크 를 붙였습니다. 7문제 이상 막히면 링크된 수업으로 돌아가 다시 읽기를 권합니다.
| 항목 | 내용 |
|---|---|
| 범위 | 토크나이저 · 임베딩 · word2vec · 언어 모델 기초 · RNN · seq2seq · 어텐션 · BPE · 위치 인코딩 · 트랜스포머 블록 · 세 계열 · 디코딩 · 사전학습 · ViT · CLIP |
| 트랙 · 수준 | NLP·트랜스포머 · 중급 (점검) |
| 문제 수 | 15문제 (개념 7 · 계산 8) |
| 권장 시간 | 40~60분. 계산기 사용 가능 |
들어가기 전에
- 이 트랙의 수업을 먼저 읽고 오세요. 시작점은 토큰과 토크나이저입니다.
- 풀이를 먼저 보지 말고, 답을 종이에 적은 뒤 확인하세요.
한눈에 보기
- 글이 토큰 → 벡터 → 문맥 벡터 → 다음 토큰 확률로 바뀌는 전 과정을 점검합니다.
- 어텐션 · 위치 인코딩 · 파라미터 수 · 디코딩 · 학습량을 직접 계산합니다.
- 세 계열(인코더 · 디코더 · 인코더-디코더) 중 일에 맞는 것을 고르는 판단을 점검합니다.
flowchart LR
A[글] --> B[토큰<br/>Q1]
B --> C[임베딩 · 유사도<br/>Q2 · Q3]
C --> D[순서 · 문맥<br/>Q4~Q8]
D --> E[블록 · 계열<br/>Q9~Q11]
E --> F[생성 · 학습<br/>Q12~Q15]1. 토큰과 임베딩
Q1 (계산). BPE 학습 데이터의 단어 빈도가 h u g×10, p u g×5, p u n×12, b u n×4, h u g s×5 이고, 단어 끝에 </w> 를 붙였습니다. 첫 번째로 합쳐지는 기호 쌍과 그 빈도는?
- 풀이: 인접 쌍 빈도를 셉니다.
u g는 hug 10 + pug 5 + hugs 5 = 20,p u는 5 + 12 = 17,u n은 12 + 4 = 16입니다. 가장 많은u g(20)가 먼저 합쳐져ug라는 새 기호가 됩니다. BPE는 이 과정을 정해진 횟수만큼 반복합니다. → 토큰과 토크나이저 · BPE 토큰화
Q2 (계산). , 의 코사인 유사도는?
- 풀이: 내적 , 두 벡터 길이는 모두 . 입니다. 방향이 꽤 비슷합니다. → 임베딩과 벡터 유사도
Q3 (계산, 해설용 벡터). 왕 , 남자 , 여자 , 여왕 , 사과 일 때 '왕 − 남자 + 여자'에 코사인으로 가장 가까운 단어는? (입력 단어 셋은 후보에서 제외하는 것이 관례입니다)
- 풀이: 가 되어 여왕과 같은 방향(코사인 1.0)입니다. 사과는 0.632입니다. 실제 임베딩에서는 이렇게 딱 떨어지지 않지만, word2vec이 보여 준 '벡터 산술로 관계 찾기'의 원리가 이것입니다. → word2vec
2. 순서와 문맥
Q4 (계산). 세 위치의 정답 토큰 확률이 0.5, 0.25, 0.125일 때 퍼플렉서티는?
- 풀이: 평균 음의 로그 확률 , 퍼플렉서티 입니다. 기하평균 확률 의 역수와 같습니다. → 언어 모델의 기본
Q5 (계산 + 개념). 시간 단계마다 기울기에 0.5가 곱해지는 RNN에서 20단계 전까지 전해지는 기울기 배율은? 0.9라면?
- 풀이: , 입니다. 곱이 계속 쌓이면 먼 과거의 신호가 사라집니다(기울기 소실). LSTM은 셀 상태를 덧셈으로 이어 이 문제를 줄였습니다. → RNN과 LSTM 직관
Q6 (개념). 기본 seq2seq가 긴 문장 번역에서 약했던 이유와, 바다나우 어텐션이 바꾼 점은?
- 풀이: 인코더가 문장 전체를 고정 길이 벡터 하나 에 담아 디코더에 넘겼기 때문에 긴 문장일수록 정보가 손실되었습니다. 어텐션은 디코더가 단어를 만들 때마다 인코더의 모든 위치를 다시 보고, 관련 있는 위치에 가중치를 주어 섞게 했습니다. → seq2seq · 어텐션의 시작
Q7 (계산). 키가 , , 이고 쿼리가 일 때 스케일드 내적 어텐션 가중치는? ()
- 풀이: 점수 . , → 합 9.23 → 가중치 입니다. → 어텐션 직관
Q8 (계산 + 개념). ALiBi를 헤드 4개에 쓰면 기울기는? 그리고 RoPE가 '상대 위치' 방식인 이유를 한 문장으로.
- 풀이: 헤드 개면 에서 시작하는 등비수열이므로 입니다. RoPE는 쿼리 · 키를 각자 위치만큼 회전시키므로 내적에 두 위치의 차이 만 남습니다. → 위치 인코딩
3. 블록과 세 계열
Q9 (계산). , 층 24개, FFN 확장 4배인 트랜스포머의 층 파라미터는 대략 몇 개인가요? (임베딩 · 편향 제외)
- 풀이: 층당 → , 약 3억 개입니다. → 트랜스포머 블록 한 층을 손으로
Q10 (개념). Pre-LN과 Post-LN의 차이와, 요즘 모델이 Pre-LN을 쓰는 이유는?
- 풀이: Post-LN은 잔차를 더한 뒤 정규화하고, Pre-LN은 서브층 앞 에서 정규화합니다. Xiong 외(2020)는 Pre-LN이 초기 기울기가 안정적이라 학습률 워밍업 없이도 학습된다는 것을 보였습니다. → 트랜스포머 블록
Q11 (판단). 다음 일에 인코더 · 디코더 · 인코더-디코더 중 무엇이 잘 맞나요? (가) 고객 문의 1만 건을 7개 유형으로 분류 (나) 회의록을 영어로 번역 (다) 사내 문서 검색용 문장 벡터 (라) 자유 대화형 비서
- 풀이: (가) 인코더(BERT 류 + 분류층), (나) 인코더-디코더(T5 · BART 류, 디코더도 가능), (다) 인코더(Sentence-BERT 류), (라) 디코더(GPT · LLaMA 류). 읽기만 하는 일은 작은 인코더가 싸고 빠른 경우가 많습니다. → 세 계열
4. 생성과 학습
Q12 (계산). 다음 토큰 분포가 (0.5, 0.2, 0.15, 0.1, 0.05)일 때 top-p=0.8과 top-k=2가 남기는 후보 수와, top-p=0.8에서 첫 토큰의 최종 확률은?
- 풀이: 누적은 0.5 → 0.7 → 0.85이므로 top-p=0.8은 3개, top-k=2는 2개입니다. top-p 재정규화 후 첫 토큰은 입니다. → 디코딩 전략
Q13 (개념). 번역 · 요약에는 빔 탐색을 쓰면서 대화 · 창작에는 샘플링을 주로 쓰는 이유는?
- 풀이: 번역 · 요약은 입력에 충실한 '정답에 가까운 한 문장'을 찾는 일이라 확률이 높은 문장을 찾는 빔 탐색이 맞습니다. 열린 생성에서는 확률 최대화가 밋밋하고 반복적인 글(퇴화)을 만든다는 보고가 있어, 온도 · top-p 샘플링으로 다양성을 줍니다. → 디코딩 전략 · 디코딩 실습
Q14 (계산). 130억(13B) 파라미터 모델을 1조(1T) 토큰으로 사전학습하는 연산량은? 그리고 학습 데이터 중복 제거가 중요한 이유 두 가지는?
- 풀이: FLOPs입니다. 중복 제거는 ① 모델이 같은 글을 외워 그대로 내놓는 것을 줄이고(Lee 외 2021은 암기 출력 빈도가 10분의 1로 줄었다고 보고) ② 평가 데이터가 학습 데이터에 섞여 점수가 부풀려지는 것을 막습니다. → LLM 사전학습
Q15 (계산 + 개념). 비전 트랜스포머(ViT)에 224×224 이미지를 16×16 패치로 넣으면 패치 토큰은 몇 개인가요? CLIP을 배치 4로 학습하면 이미지-글 쌍 점수 행렬에서 양성 · 음성 쌍은 각각 몇 개인가요?
- 풀이: 개입니다. CLIP 점수 행렬은 칸이고, 대각선 4칸이 짝이 맞는 양성, 나머지 12칸이 음성입니다. 배치가 클수록 음성 예가 많아져 대조 학습에 유리합니다. → 비전 트랜스포머 · CLIP
채점과 다음 단계
| 맞힌 수 | 권장 |
|---|---|
| 13~15 | 다음 트랙으로 넘어가세요. LLM 활용 · 에이전트부터 이어집니다 |
| 9~12 | 틀린 문제의 링크 수업만 다시 읽고 넘어가세요 |
| 8 이하 | 어텐션 직관 → 트랜스포머 블록 순서로 다시 보기를 권합니다 |
스스로 점검
- 이 트랙 전체를 한 문장으로 요약하면?
- 답: 글을 토큰으로 자르고 벡터로 바꾼 뒤, 위치 정보를 더해 어텐션 블록을 쌓아 문맥을 섞고, 다음 토큰 확률을 대량의 글로 학습한 다음, 디코딩 규칙으로 글을 생성합니다.
- 어텐션이 RNN보다 긴 문맥에 유리하지만 비용이 큰 이유는?
- 답: 어느 두 토큰이든 한 번에 연결되지만(경로 길이 1), 모든 쌍의 점수를 구하므로 길이의 제곱에 비례하는 계산 · 메모리가 듭니다.
- 같은 모델에서 답이 매번 달라지는 이유는?
- 답: 샘플링 디코딩(온도 · top-p 등)을 쓰면 확률에 따라 무작위로 토큰을 고르기 때문입니다. 탐욕 디코딩이면 같은 입력에 같은 답이 나옵니다.
용어 정리
| 용어 | 쉬운 뜻 |
|---|---|
| BPE | 자주 붙어 나오는 기호 쌍을 반복해 합쳐 어휘를 만드는 토큰화 |
| 코사인 유사도 | 두 벡터 방향이 얼마나 같은지(−1~1) |
| 퍼플렉서티 | 평균적으로 몇 개 후보 사이에서 헷갈리는지를 나타내는 값 |
| 기울기 소실 | 곱이 쌓여 먼 과거로 갈수록 기울기가 0에 가까워지는 현상 |
| ALiBi · RoPE | 거리 벌점 · 회전으로 위치를 넣는 방법 |
| top-p | 누적 확률 를 채우는 최소 후보 집합에서 샘플링 |
| 6ND | 학습 연산량 ≈ 6 × 파라미터 수 × 토큰 수 |
더 깊이 보려면
다음에 볼 것
- Hugging Face LLM 강좌 — 다음 트랙(LLM 활용 · 에이전트)의 첫 자료
- 프롬프트 설계와 인컨텍스트 학습 — 만든 모델을 '잘 쓰는' 법
라이선스
문제와 풀이는 KAITABASE가 직접 만들었습니다. 계산 문제의 숫자는 해설용 예이며 파이썬으로 검산했습니다. 논문에서 온 사실은 각 수업에서 원문으로 확인한 것만 썼습니다.
출처
- 각 문제에 연결한 KAITABASE 수업 · 논문 해설
- Xiong 외, On Layer Normalization in the Transformer Architecture (2020): https://arxiv.org/abs/2002.04745
- Lee 외, Deduplicating Training Data Makes Language Models Better (2021): https://arxiv.org/abs/2107.06499
- Press 외, ALiBi (2021): https://arxiv.org/abs/2108.12409
AI 원리부터 이해하기 · NLP·트랜스포머 모듈
NLP·트랜스포머 모듈 학습
이 글은 NLP·트랜스포머 모듈의 학습 자료입니다. 전체 23개 자료 중 23번째입니다.
출처·원문
원문 보기요약만