02. 꼭 알아야 할 용어 20개#
📚 학습 목표: 앞으로 나올 용어에 당황하지 않기
⏱️ 읽는 시간: 15분. 이해 안 되면 일단 건너뛰고, 실습 중 다시 참조
🎯 가장 먼저 알아야 할 5개 (이것만 알아도 시작 가능)#
1. 파라미터 (Parameters / Weights)#
한 줄 정의: AI 모델의 "뇌세포 연결 강도"
단위: B (billion, 10억)
예시: Gemma 4 E4B의 "4B"는 40억 개 파라미터라는 뜻
비유: 사람의 시냅스. 많을수록 복잡한 일을 할 수 있지만, 그만큼 메모리를 차지합니다.
2. LoRA (Low-Rank Adaptation)#
한 줄 정의: 전체 모델을 안 건드리고 "수정 사항"만 따로 학습하는 기법
크기: 원본 대비 약 1-5%
비유: 원본 사진에 투명 레이어 하나 더 올려서 편집. 원본은 그대로.
3. 토큰 (Token)#
한 줄 정의: AI가 텍스트를 쪼개는 단위 (대략 글자 2-3개)
예시: "안녕하세요" = 약 3-4 토큰
왜 중요한가: 학습 비용이 토큰 수로 계산됨. "한국어는 영어보다 토큰 많이 먹음" = 비용 더 듦.
4. 에폭 (Epoch)#
한 줄 정의: 전체 학습 데이터를 처음부터 끝까지 한 번 다 훑는 것
예시: 데이터 1,500건, 3 epoch = 모델이 1,500건을 3번 반복해서 봄
감 잡기: - 1 epoch = 대충 한 번 공부 - 3 epoch = 제대로 이해 ← 보통 이 정도 - 10 epoch = 외워버림 (overfitting 위험)
5. 양자화 (Quantization)#
한 줄 정의: 모델을 "정밀도를 낮춰서" 작게 만들기
예시: FP16 (16bit) → Q4 (4bit) = 파일 크기 1/4
비유: 사진을 JPEG 압축하는 것과 비슷. 조금 흐려지지만 크기가 확 줄어듦.
양자화 레벨: - FP16 (원본): 8GB - 정확하지만 무거움 - Q8: 4GB - 거의 원본급 - Q4_K_M: 3GB - 균형 좋음 ⭐ 우리가 쓸 것 - Q3: 2GB - 품질 저하 눈에 띔
🏗️ 학습 과정에서 자주 보는 용어 7개#
6. 베이스 모델 (Base Model)#
한 줄 정의: 파인튜닝의 출발점이 되는 원본 모델
우리 거: google/gemma-4-E4B-it
"-it" 뜻: Instruction-tuned. 이미 "질문-답변" 패턴을 학습한 모델이라 우리가 쓰기 편함.
7. 어댑터 (Adapter)#
한 줄 정의: LoRA 학습 결과물. 원본 위에 얹는 "수정 사항"
파일 크기: 수백 MB
파일명: adapters.safetensors
8. 병합 / 퓨즈 (Merge / Fuse)#
한 줄 정의: 원본 + 어댑터를 합쳐서 하나의 모델로 만들기
왜 필요한가: GGUF 변환, HuggingFace 업로드 등은 통합된 모델이 필요
9. GGUF#
한 줄 정의: Ollama나 llama.cpp에서 쓰는 모델 파일 형식
확장자: .gguf
특징: 압축이 잘 되어 있고, CPU/GPU 양쪽에서 빠르게 돌아감
역사: GGML → GGUF로 업그레이드된 것. 신경 쓸 필요 없음.
10. 데이터셋 (Dataset)#
한 줄 정의: 학습에 쓸 데이터 모음
우리 포맷: JSONL (한 줄에 하나의 예시)
구성: train.jsonl (학습용 90%) + eval.jsonl (평가용 10%)
11. 프롬프트 (Prompt)#
한 줄 정의: AI에게 주는 질문/지시문
구조:
12. 추론 (Inference)#
한 줄 정의: 학습된 모델로 실제 답변 생성하는 것
맥미니에서 속도: 초당 25-35 토큰 (Gemma 4 E4B Q4 기준)
📊 성능 지표 관련 용어 4개#
13. Loss (손실)#
한 줄 정의: 모델이 틀린 정도를 숫자로 표현
좋은 값: 낮을수록 좋음
보는 법:
Iter 10: Loss 2.451 ← 처음엔 높음
Iter 100: Loss 1.823 ← 점점 감소
Iter 500: Loss 0.921 ← 학습 잘 되는 중
Iter 600: Loss 0.895 ← 수렴 (거의 안 변함)
주의: Loss가 0에 가까워지면 overfitting 위험. 1.0 근처가 보통 적정.
14. Train Loss vs Validation Loss#
Train Loss: 학습 중인 데이터 기준 (낮아지기 쉬움)
Validation Loss: 한 번도 안 본 데이터 기준 (진짜 실력 측정)
이상적 패턴:
Overfitting 패턴 (나쁨):
15. Overfitting (과적합)#
한 줄 정의: 학습 데이터를 외워버려서 새 데이터에 약해진 상태
원인: 너무 많이 학습 (epochs ↑, iters ↑)
대처: 학습 일찍 멈추기, 데이터 늘리기, 정규화 기법
비유: 시험 족보만 외운 학생. 족보 내용은 완벽하지만, 응용 문제에서 0점.
16. Catastrophic Forgetting (파국적 망각)#
한 줄 정의: 파인튜닝 후 원본이 갖고 있던 일반 지식을 잊는 현상
예시: - 파인튜닝 전: "프랑스 수도는?" → "파리" ✅ - 파인튜닝 후: "프랑스 수도는?" → "환자 김○○..." ⚠️
대처: 도메인 데이터에 일반 대화도 섞기 (10-20% 정도)
🔧 하이퍼파라미터 관련 용어 4개#
17. 하이퍼파라미터 (Hyperparameter)#
한 줄 정의: 학습 방법을 조절하는 "손잡이들"
예시: learning rate, batch size, epochs, LoRA rank 등
파라미터(parameter)와 차이: - 파라미터 = 모델이 학습해서 얻는 값 (자동) - 하이퍼파라미터 = 우리가 정해주는 값 (수동)
18. Learning Rate (학습률)#
한 줄 정의: 한 번 학습할 때 얼마나 크게 바꿀지
우리 값: 2e-4 (= 0.0002)
비유: 산 정상 찾기 걸음 크기 - 너무 크면: 정상 지나쳐 건너편으로 튀어감 (loss 진동) - 너무 작으면: 한참 걸어도 못 감 (loss 감소 없음) - 2e-4: LoRA에 일반적으로 잘 맞는 값
19. Batch Size (배치 크기)#
한 줄 정의: 한 번에 몇 개의 예시를 같이 학습할지
우리 값: 2 (4bit 양자화 맥미니 기준)
트레이드오프: - 크면: 안정적 학습, 메모리 많이 필요 - 작으면: 덜 안정적, 메모리 적게
20. LoRA Rank (r) / Alpha (α)#
한 줄 정의: LoRA 어댑터의 "용량"
우리 값: r=32, α=64
감 잡기: - r=8: 가벼운 조정만 (빠르고 작음) - r=32: 표준적인 범용 모델 ⭐ - r=64: 많은 도메인 지식 (무거움)
α 규칙: 보통 r의 2배로 설정
🎬 용어 흐름 정리#
실제 사용 순서대로:
[베이스 모델] google/gemma-4-E4B-it 선택
↓
[데이터셋] train.jsonl 준비 (PHI 제거, JSONL 포맷)
↓
[하이퍼파라미터] r=32, α=64, lr=2e-4, epochs=3 설정
↓
[학습] iter마다 loss 기록 (train + validation)
↓
[어댑터] adapters.safetensors 생성 (300MB)
↓
[병합] 원본 + 어댑터 = 통합 모델 (8GB)
↓
[양자화] Q4_K_M으로 압축 (3GB)
↓
[GGUF] Ollama에 올림
↓
[추론] 실제 서비스
💡 처음엔 이것만 기억하세요#
| 쓸 때 | 떠올릴 용어 |
|---|---|
| 모델 얼마나 큰가? | 파라미터 (Gemma 4 E4B = 40억 개) |
| 어떻게 효율적으로 학습? | LoRA (원본 고정, 어댑터만) |
| 얼마나 반복? | 에폭 (3번 정도) |
| 얼마나 작게? | 양자화 Q4_K_M (3GB) |
| 학습 잘 되나? | Loss (낮을수록 좋음) |
| 지나친 학습? | Overfitting 주의 |
나머지는 실습하면서 익혀도 충분합니다.
다음 단계#
용어를 대충 훑어봤다면, 이제 그림으로 전체 구조를 머리 속에 그려봅시다.
다음 문서: 03_MENTAL_MODEL.md - 머리 속에 그려야 할 그림
❓ 용어가 이해 안 될 때#
Claude Code에게 물어보세요:
"파인튜닝에서 에폭이 뭐야? 우리 프로젝트 기준으로 설명해줘"
"우리 설정에서 LoRA rank 32는 얼마나 큰 거야? 직관적으로 이해하고 싶어"
"Loss 값이 뭘 의미하는지 간호 기록 예시로 설명해줘"