수학 개념 지도
데이터와 학습(Data and learning)

편향–분산 분해(Bias–variance decomposition)

새 자료에서의 제곱 오차의 기댓값⁠(expected value)⁠은 잡음(σ²) + 편향의 제곱 + 분산⁠(variance)⁠으로 정확히 나뉜다. 모형이 단순하면 늘 같은 쪽으로 빗나가고(편향), 복잡하면 표본⁠(sample)⁠마다 크게 흔들린다(분산).

E[(y0−f^(x0))2]=σ2+(Ef^(x0)−f(x0))2+Var⁡f^(x0)\mathbb E\bigl[(y_0 - \hat f(x_0))^2\bigr] = \sigma^2 + \bigl(\mathbb E\hat f(x_0) - f(x_0)\bigr)^2 + \operatorname{Var}\hat f(x_0)
먼저 보면 좋은 개념기댓값분산과 표준편차과적합

실험을 통째로 여러 번 되풀이한다고 상상해 봅시다. 같은 x 자리 15곳에서 y=f(x)+εy = f(x) + \varepsilon를 새로 재고(흐린 점선이 참 함수⁠(function)⁠ f, 잡음 ε의 표준편차⁠(standard deviation)⁠는 σ = 0.3), 그 15개 점에 d = 차 다항식⁠(polynomial)⁠을 최소제곱⁠(least squares)⁠으로 맞춥니다. 흐린 보라 곡선 30개가 그렇게 되풀이한 결과이고, 흰검은 점은 그 가운데 한 번의 자료입니다. 굵은 청록 곡선은 되풀이를 한없이 했을 때 맞춘 곡선들의 평균⁠(mean)⁠, 곧 기댓값 Ef^(x)\mathbb E\hat f(x)입니다. 다른 30번

노란 손잡이를 좌우로 끌어 x₀를 옮기세요. 그 자리의 보라 점들이 30번의 예측값입니다. 흰검은 고리는 참값 f(x₀), 청록 점은 평균 예측, 둘을 잇는 분홍 선분이 편향이고, 보라 띠는 평균 예측에서 위아래로 표준편차 하나만큼의 폭입니다.

x₀ = 에서 새로 잴 값 y0y_0를 예측한다고 합시다. 제곱 오차의 기댓값은 정확히 세 조각으로 나뉩니다.

E[(y0−f^(x0))2]=σ2⏟잡음+(Ef^(x0)−f(x0))2⏟편향2+Var⁡f^(x0)⏟분산\mathbb E\bigl[(y_0 - \hat f(x_0))^2\bigr] = \underbrace{\sigma^2}_{\text{잡음}} + \underbrace{\bigl(\mathbb E\hat f(x_0) - f(x_0)\bigr)^2}_{\text{편향}^2} + \underbrace{\operatorname{Var}\hat f(x_0)}_{\text{분산}}

지금은 잡음 + 편향² + 분산 = 입니다. 편향은 평균 곡선이 참 함수에서 얼마나 비켜 있는지, 분산은 되풀이할 때마다 곡선이 얼마나 흔들리는지입니다. 잡음은 어떤 모형으로도 줄일 수 없습니다. 이 값들은 30번의 표본으로 어림한 것이 아니라, 최소제곱이 y에 대해 일차식이라는 사실을 써서 정확히 계산한 것입니다.

왜 정확히 나뉘는지는 한 줄로 보입니다. y0=f(x0)+ε0y_0 = f(x_0) + \varepsilon_0로 쓰고 y0−f^=ε0+(f−Ef^)+(Ef^−f^)y_0 - \hat f = \varepsilon_0 + (f - \mathbb E\hat f) + (\mathbb E\hat f - \hat f)로 나눈 뒤 제곱해서 기댓값을 취합니다. 새 잡음 ε0\varepsilon_0는 학습 자료와 독립⁠(independence)⁠이고 평균이 0이며, Ef^−f^\mathbb E\hat f - \hat f도 평균이 0이고, 가운데 항은 상수입니다. 그래서 교차항의 기댓값이 모두 0이 되고 세 제곱만 남습니다. 새 잡음이 학습 자료와 독립이고 평균이 0이라는 것 말고는 아무 가정도 쓰지 않았으니, 제곱 오차에 대해서는 늘 성립하는 항등식입니다. 반면 흔히 말하는 '편향과 분산은 서로 맞바꾼다'는 말은 정리가 아니라 자주 관찰되는 경향입니다.

차수에 따른 편향²(분홍), 분산(보라), 잡음(회색 점선), 그리고 그 합(노랑). x를 [−1, 1]에서 고르게 골랐을 때의 평균입니다. 노란 점에 마우스를 올리면 정확한 값이 뜹니다.

차수를 올려 보세요. 편향²은 d = 1에서 약 0.278이다가 d = 3에서 약 0.015, d = 5에서 약 0.0001로 거의 0이 됩니다. 분산은 거꾸로 차수와 함께 커집니다. 여기에는 깔끔한 정리가 있습니다. x 자리를 고정하고 최소제곱으로 맞추면, 자료가 있는 n곳에서 잰 예측의 분산을 평균한 값이 정확히

1n∑i=1nVar⁡f^(xi)=σ2 (d+1)n\frac{1}{n}\sum_{i=1}^{n}\operatorname{Var}\hat f(x_i) = \frac{\sigma^2\,(d+1)}{n}

입니다. 계수 하나를 늘릴 때마다 분산이 σ2/n=0.006\sigma^2/n = 0.006씩 늘어납니다(지금은 ). 맞춘 값들의 벡터⁠(vector)⁠는 y를 계수 d + 1개로 만들 수 있는 벡터들의 공간(열공간⁠(column space)⁠)에 내린 정사영⁠(orthogonal projection)⁠이고, 정사영 행렬⁠(matrix)⁠ H는 H2=HH^2 = H, HT=HH^{\mathsf T} = H라서 ∑i,jHij2=tr⁡H=d+1\sum_{i,j} H_{ij}^2 = \operatorname{tr} H = d + 1이기 때문입니다. 둘째 그림의 분산은 x를 [−1, 1]에서 고르게 골라 평균한 것이라 이 값과 조금 다르고, 차수가 높으면 더 커집니다. 자료가 있는 자리 사이와 양 끝에서 곡선이 더 크게 흔들리기 때문입니다. 이 자료에서 셋의 합은 d = 4에서 가장 작고, d = 5도 거의 같습니다.

흔한 오해는 편향이 없는 추정이 가장 좋다는 생각입니다. 추정값의 평균제곱오차⁠(mean squared error)⁠도 편향² + 분산이라서, 편향을 조금 들여 분산을 크게 줄이면 이깁니다. 정규분포⁠(normal distribution)⁠ 표본의 분산을 추정할 때 편차 제곱합을 n − 1로 나누면 편향이 없지만, 평균제곱오차는 n + 1로 나눌 때 가장 작습니다. 더 극적인 예는 1956년 찰스 스타인이 존재를 보이고 1961년 제임스와 스타인이 구체적인 식을 내놓은 추정량입니다. 서로 독립이고 분산이 같으며 그 분산을 아는 정규분포 셋 이상의 평균을, 분포마다 관측값 하나씩으로 한꺼번에 추정한다고 합시다. 이때 관측값들을 정해진 규칙에 따라 모두 원점 쪽으로 당긴 값은, 참 평균이 무엇이든 관측값을 그대로 쓸 때보다 전체 평균제곱오차가 작습니다. 원점 대신 미리 정한 아무 점 쪽으로 당겨도 됩니다. 계수를 일부러 0 쪽으로 당기는 정규화는 이 생각을 실용으로 옮긴 것입니다. 그림의 U자 모양도 법칙은 아닙니다. 매개변수⁠(parameter)⁠가 자료보다 훨씬 많은 모형에서는 오차가 다시 내려가는 이중 하강⁠(double descent)⁠이 여러 실험에서 관찰되었습니다(과적합⁠(overfitting)⁠). 또 0과 1로 맞히고 틀리는 분류의 오차는 이렇게 깔끔하게 더해지는 조각으로 나뉘지 않습니다.

분산은 평균을 내서 줄일 수 있습니다. 분산이 v인 모형 B개의 예측을 평균하면, 모형들이 서로 독립일 때는 분산이 v/B가 되고, 어느 두 모형의 상관계수⁠(correlation coefficient)⁠도 ρ이면 ρv+(1−ρ)v/B\rho v + (1-\rho)v/B가 됩니다. B를 아무리 늘려도 ρv 아래로는 내려가지 않으므로, 모형들을 서로 덜 닮게 만드는 것이 중요합니다. 이것이 랜덤 포레스트⁠(random forest)⁠의 설계 원리입니다. 자료를 늘려도 분산은 줄어듭니다. 위의 정리에서 n이 분모에 있고, 큰 수의 법칙⁠(law of large numbers)⁠이 말하는 것도 같은 방향입니다. 통계학⁠(statistics)⁠에서는 오래전부터 알던 분해였고, 1992년 스튜어트 제먼, 엘리 비넨스톡, 르네 두르사가 신경망⁠(neural network)⁠에 관한 논문에서 이 분해로 학습의 어려움을 설명하며 기계 학습⁠(machine learning)⁠에 널리 퍼졌습니다.

이어지는 곳. 과적합은 대개 분산이, 과소적합⁠(underfitting)⁠은 편향이 지나친 상태입니다. 실제로는 f를 모르므로 세 조각을 따로 잴 수 없고, 합만 교차 검증⁠(cross-validation)⁠으로 어림합니다. 최근접 이웃⁠(nearest neighbor)⁠ 회귀에서 이웃 k개의 y를 평균하면 x 자리가 고정일 때 분산이 정확히 σ2/k\sigma^2/k여서, k가 복잡도의 손잡이가 됩니다. 깊은 결정 트리⁠(decision tree)⁠는 편향이 작고 분산이 큰 대표적인 모형입니다. 정규화의 λ는 편향을 얼마나 들여 분산을 줄일지 정하는 연속된 손잡이입니다.

이 개념이 나오는 큰 생각근사와 오차

이 개념이 나오는 긴 글

역문제 거꾸로 푸는 문제는 왜 어려운가 원인에서 결과를 계산하기는 쉽다. 흐린 사진, CT, 블랙홀 사진은 왜 결과에서 원인을 되찾기 어려웠을까? 작은 특잇값이 잡음을 키우는 벽과, 정규화·릿지 회귀·베이즈 사전확률이 사실은 같은 처방이라는 이야기. 압축과 과학 압축하는 것이 이해하는 것이다 튀코 브라헤가 20년 동안 적은 행성의 위치를 케플러는 법칙 세 줄로 줄였다. 짧게 적는 일과 이해하는 일은 정말 같은 일일까? 오컴의 면도날을 비트로 재는 법, 과적합을 압축의 실패로 읽는 법, 그리고 그 말이 정리인 곳과 철학인 곳.

이 개념을 언급하는 페이지

이 페이지가 가리키는 개념