콘텐츠로 이동

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에게 주는 질문/지시문

구조:

System:   너는 간호사 AI야.
User:     환자 김○○ 혈압 140/90...
Assistant: S: ... O: ... A: ... P: ...

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: 한 번도 안 본 데이터 기준 (진짜 실력 측정)

이상적 패턴:

Train Loss:      2.5 → 1.5 → 0.9 → 0.7
Validation Loss: 2.5 → 1.6 → 1.0 → 0.9  ← 비슷하게 감소

Overfitting 패턴 (나쁨):

Train Loss:      2.5 → 1.0 → 0.3 → 0.1  ← 너무 낮아짐
Validation Loss: 2.5 → 1.5 → 1.4 → 1.6  ← 다시 올라감 ⚠️

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 값이 뭘 의미하는지 간호 기록 예시로 설명해줘"