Machine Learning
Machine learning은 AI를 이해하기 위한 기본 문법입니다. 복잡한 deep learning model도 결국 data, feature, objective, optimization, evaluation의 조합으로 봐야 합니다.
가장 기본적인 관점은 데이터셋 에서 모델 를 학습해, 보지 못한 입력에서도 손실이 작아지게 만드는 것입니다.
여기서 는 입력, 는 label 또는 target, 은 loss function, 는 model parameter입니다.
문제 유형
- Probabilistic prediction: label 하나가 아니라 가능한 출력의 분포를 예측합니다.
- Decision rule: probability, score, uncertainty를 실제 action으로 바꿉니다.
- Classification: discrete label을 예측합니다.
- Regression: continuous value를 예측합니다.
- Ranking: 후보들을 순서화합니다.
- Clustering: label 없이 비슷한 sample을 묶습니다.
- Density estimation: data distribution 자체를 모델링합니다.
- Representation learning: downstream task에 쓸 embedding을 학습합니다.
Problem to Loss Map
| Problem | Output | Common loss | Evaluation |
|---|---|---|---|
| Classification | class probability | cross-entropy / NLL | accuracy, F1, AUROC, PR-AUC, calibration |
| Regression | scalar 또는 vector | MSE, MAE, Gaussian NLL | RMSE, MAE, , rank correlation |
| Ranking | ordered candidate list | pairwise/listwise ranking loss | NDCG, MAP, enrichment, top-k success |
| Density estimation | probability model | negative log-likelihood | held-out NLL, sampling quality |
| Representation learning | embedding | contrastive, masked, predictive, reconstruction loss | linear probe, retrieval, transfer task |
| Clustering | cluster assignment 또는 latent grouping | reconstruction, mixture likelihood, contrastive proxy | purity, ARI/NMI, downstream utility |
Probabilistic prediction에서는 hard decision을 내리기 전에 uncertainty가 드러나야 합니다.
Decision rule 와 probability distribution 는 같은 대상이 아닙니다.
기본 구성
Machine learning note는 아래 다섯 층을 분리해서 읽습니다.
| Layer | Question | Start |
|---|---|---|
| Data contract | example, label, split, preprocessing이 무엇인가? | Dataset checklist, Example unit, Split unit, Label semantics |
| Representation | raw input이 feature, token, graph, coordinate, embedding으로 어떻게 바뀌는가? | Data preprocessing, Feature engineering, Representation learning |
| Model family | 어떤 function space와 inductive bias를 쓰는가? | Linear model, Tree-based model, Kernel method, Ensemble method, MLP |
| Objective | 무엇을 줄이거나 키우는가? | ERM, Loss function, Objective-metric alignment |
| Evidence | 학습된 모델이 어떤 범위에서 작동한다고 말할 수 있는가? | Generalization, Model selection, Evaluation |
Minimum Mental Model
새 모델을 볼 때는 먼저 아래 식으로 압축합니다.
각 화살표는 별도의 실패 지점입니다.
| Arrow | Common failure |
|---|---|
| dataset representation | preprocessing leakage, wrong unit, missing metadata |
| representation prediction | architecture mismatch, lost structure, bad inductive bias |
| prediction loss | loss가 실제 utility와 맞지 않음 |
| loss update | instability, undertraining, overfitting |
| metric claim | weak split, noisy comparison, cherry-picked selection |
Loss and Objective
Objective는 모델이 실제로 학습하는 신호입니다. 같은 architecture라도 objective가 달라지면 representation과 failure mode가 달라집니다.
| Objective family | Use for | Notes |
|---|---|---|
| Empirical risk | observed label이 있는 supervised prediction | ERM, Loss function |
| Classification likelihood | class probability prediction | Cross-entropy loss, Negative log-likelihood |
| Regression error | scalar 또는 vector prediction | Mean squared error, Regression |
| Ranking objective | ordered candidate list | Ranking, Ranking metrics |
| Representation objective | transfer, retrieval, probing에 유용한 embedding | Representation learning, Self-supervised learning |
| Alignment check | reported metric이 training loss와 다른 경우 | Objective-metric alignment |
Optimization and Training
Training은 objective를 parameter update로 연결합니다. 최소 loop는 아래와 같습니다.
| Topic | Ask | Start |
|---|---|---|
| Training loop | forward, loss, backward, update가 어떤 순서로 도는가? | Training loop |
| Gradient estimate | full gradient가 아니라 어떤 mini-batch estimate를 쓰는가? | Stochastic gradient, Batch size |
| Gradient computation | autograd와 backprop이 올바른가? | Backpropagation, Automatic differentiation, Gradient checking |
| Update rule | gradient를 parameter update로 어떻게 바꾸는가? | Optimization, Optimizer, Adam, AdamW |
| Stabilization | learning rate, clipping, weight decay, accumulation을 어떻게 쓰는가? | Learning-rate schedule, Gradient clipping, Weight decay, Gradient accumulation |
| Diagnostics | loss surface, curvature, instability를 어떻게 읽는가? | Training stability, Loss landscape, Second-order optimization |
| State tracking | step, checkpoint, optimizer state, data state가 구분되는가? | Training step accounting, Model state contract |
Generalization and Selection
성능 claim은 train loss가 아니라 선택 절차와 held-out evidence로 정해집니다.
| Question | Risk | Start |
|---|---|---|
| train/validation/test가 분리되어 있는가? | validation decision이 test에 새어 들어갈 수 있음 | test split |
| 어떤 후보 중 최종 모델을 골랐는가? | best checkpoint나 best seed를 test score처럼 읽을 수 있음 | Model selection, Hyperparameter tuning |
| 언제 멈췄는가? | early stopping이 hidden test tuning이 될 수 있음 | Early stopping |
| curve가 무엇을 말하는가? | optimization failure와 overfitting을 혼동할 수 있음 | Learning curve, Validation curve, Overfitting and underfitting |
| 일반화 claim이 무엇인가? | IID, OOD, deployment claim을 섞을 수 있음 | Generalization, OOD generalization, Leakage |
| overfitting을 어떻게 줄였는가? | regularizer가 claim을 바꾸거나 baseline을 불공정하게 만들 수 있음 | Regularization |
Training State
Training은 loss value 하나로 끝나지 않습니다. Reproducible training note는 아래 state를 식별해야 합니다.
| State | Meaning |
|---|---|
| Parameters | step 의 model weight |
| Optimizer state | momentum, variance estimate 같은 update memory |
| Batch | 한 번의 gradient estimate에 쓰인 example |
| Gradient | current loss에서 추정한 update direction |
| Learning rate | step 의 update scale |
| Checkpoint | parameter, optimizer state, scheduler state, config, step count |
The generic update is:
여기서 는 optimizer마다 달라지는 update direction입니다.
일반화 관점에서는 train loss와 test loss를 구분해야 합니다.
gap이 크면 모델이 training data의 우연한 패턴에 맞춰졌을 가능성을 의심합니다.
Representation과 Feature
Classical ML에서는 feature design이 중심이고, deep learning에서는 feature extractor 자체를 학습합니다. 이 차이를 이해하면 self-supervised learning이나 transfer learning이 왜 중요한지 더 분명해집니다.
평가 질문
- train/test split이 deployment 상황을 반영하는가?
- example unit, split unit, label semantics가 명확한가?
- metric이 실제 목표와 맞는가?
- baseline과 비교했을 때 개선이 의미 있는가?
- ablation study가 설계 선택을 지지하는가?
- training objective와 reported metric이 같은 claim을 지지하는가?
- overfitting, leakage, distribution shift를 확인했는가?
- generalization claim이 IID인지, OOD인지, deployment claim인지 명확한가?