
Variance
분산
분산은 데이터나 모델의 예측값이 얼마나 흩어져 있는지를 나타내는 지표로, 통계학과 학습 이론에서 주로 등장합니다.
통계학에서는
DataSet이 평균으로부터 얼마나 멀리 퍼져 있는지를 측정하는 산포도(Dispersion)의 의미를 가집니다.
즉, 여러 값들이 평균에서 얼마나 퍼져있는가?
정의: 각 관측값과 평균의 차이(편차)를 제곱한 값들의 평균
- 분산이 크면 데이터가 평균을 중심으로 넓게 퍼져 있음을 의미합니다.
- 분산이 작으면 데이터가 평균 근처에 집중되어 있음을 의미합니다.
- 데이터의 변동성(Fluctuation)을 파악하는데 사용됩니다.
학습 이론 / 머신러닝에서는 (Model Sensitivity)
학습 이론에서 분산은 모델이 학습 데이터 세트의 변동에 얼마나 민감하게 반응하는지를 나타냅니다.
물론 머신러닝 도메인에서도 통계학의 의미랑 같습니다. 여러 값들이 얼마나 퍼져있는가? 라는 이 질문을 똑같이 던지지만, 그 "여러 값들"이 뭐냐가 다를 뿐입니다.
정의: 서로 다른 훈련 데이터로 학습된 모델들이 각기 다른 DataSet에서 예측 겨로가가 얼마나 달라지는지를 의미
같은 분포에서 training set을 5번 다르게 뽑는다고 할 때, $D_1, D_2, D_3, D_4, D_5$. 그리고 매번 같은 구조의 모델을 학습시켜서 5개의 모델 $f_1, f_2, f_3, f_4, f_5$ 를 얻었다고 해볼께요.
이제 새로운 input $x$를 하나 넣으면 5개의 예측값이 나오게 됩니다. $f_1(x), f_2(x), f_3(x), f_4(x), f_5(x)$.
이 5개의 예측값의 통계적 variance를 그대로 구하는 겁니다. 편차 제곱의 평균. 이게 Machine Learning에서는 variance가 되는 겁니다.
High Variance
모델이 훈련 데이터의 무작위 노이즈까지 학습하여, 학습 데이터가 조금만 바뀌어도 예측값이 크게 변합니다. 이는 과적합(Overfitting) 상태를 의미합니다.
Low Variance
모델이 훈련 데이터의 작은 변화에 민감하지 않고 일관된 예측을 합니다. 탄착군이 잘 형성되었다고나 할까요?
평향-분산 트레이드오프(Bias-Variance Trade-off)
모델의 전체 오차를 줄이기 위해 편향(Bias)과 분산 간의 균형을 맞추는 것이 핵심입니다.
실무에서는 왜 train / dev error gap으로 판단하는걸까?
Training set을 고작 몇 번 뽑아서 비교하는 건 현실적이지 않습니다. 그래서 간접적 지표를 쓰는거죠.
Train error는 낮은데 dev error가 높다면?
모델이 training data에 과적합 되었다는 뜻이죠. 만약 다른 training set으로 학습했으면 또 그 data에 특화되어서 완전히 다른 예측을 내놓았을 겁니다. 즉, training set 변화에 따른 예측값의 변동성(즉, variance)이 크다는 의미가 되죠.
결국 train-dev error gap은, 직접 여러 번 학습시켜보지 않고도 variance가 높은지를 한 번의 학습으로 간접 추정하는 실용적 방법인 겁니다.
Bias
편향
추정값들의 평균과 실제 참값(True Value) 사이의 차이를 의미합니다.
통계학적으로는
모델이 너무 단순해서 체계적으로 실제값에서 벗어나는 경향을 뜻합니다. 이는 과소적합 가능성을 보인다고 할 수 있어요.
머신러닝, 학습 이론 측면에서는
모델의 기대 오차(Expected Error)를 줄이기 위해 이 두 가지를 분해하여 분석합니다.
과소적합에서 학습 알고리즘의 지나치게 단순화된 가정으로 인해서 발생하는 오류인 것이죠.
학습 DataSet이 바뀌어도 모델의 형태가 거의 변하지 않지만, 실제 정답을 제대로 맞추지 못합니다.
요약
통계학적으로는 데이터가 평균 주변에 얼마나 퍼져있는가 라는 분포
학습 이론적으로는 모델이 학습 데이터의 변동에 얼마나 예민한가 라는 예측 변동성
정답과 얼마나 멀리 떨어져 있는지를 보여주는 편향(Bias)
우리는 이 분산과 편향 두 요소의 합이 최소가 되는 균형점을 찾아, 학습하지 않은 데이터에서도 높은 예측 성능을 내는 것이 목표입니다.
'CS & AI > Deep Learning' 카테고리의 다른 글
| [Coursera] Computation Graph / Deep Learning Specialization (0) | 2026.04.10 |
|---|---|
| [궁금증] Norm? (0) | 2026.04.07 |
| [Coursera] Gradient Descent / Deep Learning Specialization (0) | 2026.03.26 |
| [Coursera] Cost Function / Deep Learning Specialization (0) | 2026.03.26 |
| [Coursera] Logistic Regression / Deep Learning Specialization (0) | 2026.03.25 |
나의 성장 드라마
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!