Bias–Variance와 과적합을 실제로 진단하는 법

“high bias는 underfitting, high variance는 overfitting"은 다들 왼다. 그런데 실제 학습 결과를 보고 내 모델이 둘 중 뭔지, 그리고 뭘 해야 하는지를 말할 수 있는 사람은 훨씬 적다. 이 글은 둘 다 다룬다: 먼저 bias–variance 분해를 쓸모 있을 만큼 탄탄하게, 그다음 실제 모델의 과적합을 진단하는 실무 플레이북 — learning curve, train/validation gap, cross-validation, 그리고 함정들. 해결책을 다룬 L1/L2·dropout 글의 진단 편이다. 분해 타깃 \(y = f(x) + \varepsilon\), 노이즈 \(\mathbb{E}[\varepsilon]=0\), \(\text{Var}(\varepsilon)=\sigma^2\)라 하자. 무작위 데이터셋으로 모델 \(\hat f\)를 학습시키고, 한 점 \(x\)에서의 기대 squared error를 — 노이즈와 어떤 training set을 뽑았는지의 무작위성 둘 다에 대해 평균 내어 — 보면: ...

2026년 3월 23일 · 6 분

L1 vs L2 Regularization: 왜 L1은 Sparse Solution을 만드는가?

“L1은 weight를 sparse하게 만들고, L2는 weight를 작게 만든다” Regularization이란 무엇인가 용량(capacity)이 충분한 모델은 noise를 포함한 데이터를 외워버려서 training loss를 0까지 떨어뜨릴 수 있다. (overfitting) Linear model에서 이건 계수가 크고 서로 상쇄되는 값으로 폭발하는 형태로 나타난다. 이는 OLS 해 \(\hat{\mathbf{w}} = (X^\top X)^{-1}X^\top y\)의 증폭 효과 때문이다. \(X^\top X\)에 작은 eigenvalue(= 데이터에서 분산이 거의 없는 방향, 예컨대 거의 동일한 두 feature)가 있으면 그 역행렬엔 큰 eigenvalue가 생기고, \(y\)의 작은 노이즈가 그 방향으로 투영되며 큰 계수로 증폭된다. 구체적으로 \(x_1 \approx x_2\)라면, \(y\)를 설명하는 데는 \(w_1=1,\,w_2=0\)이면 충분하지만 마지막 노이즈까지 fit하기 위해 weight에 \(w_1=1000,\,w_2=-999\) 같은 값이 나타난다. \(x_1 - x_2\)는 거의 0인 방향이라, 큰 계수를 곱해야 노이즈만큼의 미세한 출력이 나오기 때문이다. 큰 \(|\mathbf{w}|\)는 함수가 노이즈에 맞추려 뒤틀린 증거다. ...

2026년 3월 2일 · 8 분