Machine Learning

Machine learning은 AI를 이해하기 위한 기본 문법입니다. 복잡한 deep learning model도 결국 data, feature, objective, optimization, evaluation의 조합으로 봐야 합니다.

가장 기본적인 관점은 데이터셋 에서 모델 를 학습해, 보지 못한 입력에서도 손실이 작아지게 만드는 것입니다.

여기서 는 입력, 는 label 또는 target, 은 loss function, 는 model parameter입니다.

문제 유형

Problem to Loss Map

ProblemOutputCommon lossEvaluation
Classificationclass probability cross-entropy / NLLaccuracy, F1, AUROC, PR-AUC, calibration
Regressionscalar 또는 vector MSE, MAE, Gaussian NLLRMSE, MAE, , rank correlation
Rankingordered candidate listpairwise/listwise ranking lossNDCG, MAP, enrichment, top-k success
Density estimationprobability model negative log-likelihoodheld-out NLL, sampling quality
Representation learningembedding contrastive, masked, predictive, reconstruction losslinear probe, retrieval, transfer task
Clusteringcluster assignment 또는 latent groupingreconstruction, mixture likelihood, contrastive proxypurity, ARI/NMI, downstream utility

Probabilistic prediction에서는 hard decision을 내리기 전에 uncertainty가 드러나야 합니다.

Decision rule 와 probability distribution 는 같은 대상이 아닙니다.

기본 구성

Machine learning note는 아래 다섯 층을 분리해서 읽습니다.

LayerQuestionStart
Data contractexample, label, split, preprocessing이 무엇인가?Dataset checklist, Example unit, Split unit, Label semantics
Representationraw 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

새 모델을 볼 때는 먼저 아래 식으로 압축합니다.

각 화살표는 별도의 실패 지점입니다.

ArrowCommon failure
dataset representationpreprocessing leakage, wrong unit, missing metadata
representation predictionarchitecture mismatch, lost structure, bad inductive bias
prediction lossloss가 실제 utility와 맞지 않음
loss updateinstability, undertraining, overfitting
metric claimweak split, noisy comparison, cherry-picked selection

Loss and Objective

Objective는 모델이 실제로 학습하는 신호입니다. 같은 architecture라도 objective가 달라지면 representation과 failure mode가 달라집니다.

Objective familyUse forNotes
Empirical riskobserved label이 있는 supervised predictionERM, Loss function
Classification likelihoodclass probability predictionCross-entropy loss, Negative log-likelihood
Regression errorscalar 또는 vector predictionMean squared error, Regression
Ranking objectiveordered candidate listRanking, Ranking metrics
Representation objectivetransfer, retrieval, probing에 유용한 embeddingRepresentation learning, Self-supervised learning
Alignment checkreported metric이 training loss와 다른 경우Objective-metric alignment

Optimization and Training

Training은 objective를 parameter update로 연결합니다. 최소 loop는 아래와 같습니다.

TopicAskStart
Training loopforward, loss, backward, update가 어떤 순서로 도는가?Training loop
Gradient estimatefull gradient가 아니라 어떤 mini-batch estimate를 쓰는가?Stochastic gradient, Batch size
Gradient computationautograd와 backprop이 올바른가?Backpropagation, Automatic differentiation, Gradient checking
Update rulegradient를 parameter update로 어떻게 바꾸는가?Optimization, Optimizer, Adam, AdamW
Stabilizationlearning rate, clipping, weight decay, accumulation을 어떻게 쓰는가?Learning-rate schedule, Gradient clipping, Weight decay, Gradient accumulation
Diagnosticsloss surface, curvature, instability를 어떻게 읽는가?Training stability, Loss landscape, Second-order optimization
State trackingstep, checkpoint, optimizer state, data state가 구분되는가?Training step accounting, Model state contract

Generalization and Selection

성능 claim은 train loss가 아니라 선택 절차와 held-out evidence로 정해집니다.

QuestionRiskStart
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를 식별해야 합니다.

StateMeaning
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
Checkpointparameter, 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인지 명확한가?