← 회귀분석
PART 2 · 03 회귀분석 · 02

최소제곱법 (OLS)

잔차제곱합을 최소화하는 회귀계수 추정

잔차잔차제곱합 SSE기울기 · 절편 공식MSE · RMSEOLS의 가정

SSE 최소기울기 b₁SSE여러 직선을 시험해 보면

회귀분석에서 데이터의 관계를 직선이나 수식으로 표현하려면 각 변수의 계수를 정해야 합니다. 그런데 실제 데이터에는 오차와 변동이 있기 때문에 모든 관측값을 정확하게 통과하는 직선을 찾기는 어렵습니다.

최소제곱법(Ordinary Least Squares, OLS)은 관측값과 모형의 예측값 사이의 차이를 제곱해 합한 값이 가장 작아지도록 회귀계수를 정하는 방법입니다. 회귀분석이 데이터를 가장 잘 설명하는 관계를 어떻게 찾는지 이해하려면 먼저 OLS의 원리를 알아야 합니다.

SECTION 01

왜 최소제곱법이 필요할까?

1장의 광고비 예제를 다시 보겠습니다. 광고비가 늘어날수록 매출도 증가하는 경향이 있지만, 매출은 광고비만으로 결정되지 않으므로 관측값이 완벽하게 직선 위에 놓이지는 않습니다. 이 점들 사이에 직선은 얼마든지 그을 수 있습니다.

102030405060012345678910광고비 (백만 원)매출 (백만 원)A SSE 360B SSE 360C SSE 144
그림 1. 광고비 예제에 그어 본 세 직선과 잔차제곱합

그림 1의 세 직선 중 어느 것이 “가장 잘 맞는” 직선일까요? 각 점과 직선 사이의 수직 거리는 실제값과 예측값의 차이를 의미합니다. 회귀분석은 이 점들 사이를 가장 잘 대표하는 직선을 찾으려 합니다. 판단 기준은 다음과 같습니다.

OLS는 이러한 문제를 해결하기 위해 오차를 제곱한 뒤 모두 더한 값을 기준으로 사용합니다. 그림 1에서 이 값(SSE)을 계산하면 직선 A와 B는 360, 빨간 직선 C는 144입니다. C가 가장 작으므로 OLS는 C, 즉 “매출 = 20 + 3 × 광고비”를 선택합니다. 실제로 이 데이터에서는 어떤 직선을 그어도 144보다 작아지지 않습니다.

SECTION 02

잔차란 무엇인가?

잔차(Residual)는 실제 관측값에서 회귀모형이 예측한 값을 뺀 차이입니다.

ei = yi − ŷi
yi: 실제 관측값 · ŷi: 회귀모형의 예측값 · ei: 잔차

예를 들어 실제 매출이 50이고 모형이 예측한 매출이 46이라면 잔차는 50 − 46 = 4입니다. 반대로 실제 매출이 50인데 54로 예측했다면 잔차는 50 − 54 = −4입니다. 잔차가 양수이면 실제값이 예측값보다 크고, 음수이면 실제값이 예측값보다 작습니다.

관측값실제 y예측 ŷ잔차 e = y − ŷ11012-221514+132018+2← 실제값이 예측보다 작음실제값이 예측보다 큼 →
그림 2. 세 관측값의 실제값, 예측값, 잔차

그림 2는 다음 절에서 사용할 세 관측값의 잔차입니다. 첫 번째 관측값은 실제값(10)이 예측값(12)보다 작아 잔차가 −2이고, 나머지 두 관측값은 실제값이 더 커서 잔차가 +1, +2입니다.

SECTION 03

OLS는 무엇을 최소화할까?

OLS는 각 잔차를 제곱한 다음 합산합니다. 이를 잔차제곱합(Sum of Squared Errors, SSE)이라고 합니다.

SSE = Σ (yi − ŷi)²
i = 1부터 n까지, 모든 관측값의 잔차 제곱을 더합니다.

관측값이 3개이고 실제값과 예측값이 다음과 같다고 가정해 보겠습니다.

관측값실제값 yi예측값 ŷi잔차잔차 제곱
11012−24
2151411
3201824
합계19
(-2)² = 4관측값 1(+1)² = 1관측값 2(+2)² = 4관측값 3SSE = 4 + 1 + 4 = 9파란 점: 실제값 · 빨간 점: 예측값
그림 3. 세 관측값의 잔차를 한 변으로 하는 정사각형 넓이의 합

이 모형의 잔차제곱합은 4 + 1 + 4 = 9입니다. 이름 그대로 잔차를 한 변으로 하는 정사각형을 그리면, SSE는 그 정사각형 넓이의 합입니다. OLS는 가능한 회귀계수 중에서 이 넓이의 합이 가장 작아지는 계수를 선택합니다. 즉, 위 표의 예측값을 만드는 모형보다 SSE가 더 작은 모형이 있다면 그 모형을 선택하는 방식입니다.

SECTION 04

왜 오차를 제곱할까?

잔차를 제곱하는 데에는 세 가지 주요 이유가 있습니다.

+5−5제곱: 25 + 25 = 50① 상쇄 방지+5와 −5가 0이 되지 않음2² = 45² = 25② 큰 오차에 큰 벌점2 → 4, 5 → 25바닥: 기울기 0③ 최솟값 찾기 쉬움매끈한 곡선의 바닥
그림 4. 잔차를 제곱하는 세 가지 이유

다만 큰 오차를 강하게 반영한다는 특징은 단점이 되기도 합니다. 극단적인 관측값이나 이상치가 있으면 회귀계수가 크게 영향을 받을 수 있습니다. 예를 들어 광고비 예제에서 광고비 10인 매장의 매출 50이 10으로 잘못 입력되면, 그 관측값 하나 때문에 기울기가 3.0에서 0.8로 떨어집니다. 큰 잔차를 제곱하면 아주 커지므로, 회귀선이 그 점 쪽으로 크게 끌려가는 것입니다.

SECTION 05

회귀계수는 어떻게 결정할까?

단순한 선형회귀모형을 예로 들면 예측값은 ŷi = b0 + b1xi로 표현됩니다. 여기서 b0는 절편, b1은 기울기입니다. OLS는 두 계수를 조정하여 잔차제곱합을 최소화합니다.

min Σ [ yi − (b0 + b1xi) ]²
b0, b1을 바꿔 가며 이 값이 가장 작아지는 조합을 찾습니다.

단순선형회귀에서는 다음과 같은 계산식을 사용할 수 있습니다.

b1 = Σ (xi − x̄)(yi − ȳ)Σ (xi − x̄)²    b0 = ȳ − b1x̄

기울기 공식의 분자는 x와 y가 각자의 평균에서 같은 방향으로 벗어나는 정도(함께 움직이는 정도)이고, 분모는 x가 퍼져 있는 정도입니다. 즉 기울기는 “x가 퍼진 만큼에 비해 y가 얼마나 함께 움직였는가”입니다. 절편 공식은 회귀선이 항상 두 평균이 만나는 점 (x̄, ȳ)를 지난다는 뜻입니다.

매장 5곳의 작은 예제로 직접 계산해 보겠습니다.

광고비 x매출 yx − x̄y − ȳ(x − x̄)(y − ȳ)(x − x̄)²
124−2−5104
225−1−441
3300+100
431+1+221
535+2+6124
x̄ = 3ȳ = 29합 28합 10

분자는 28, 분모는 10이므로 b1 = 28 ÷ 10 = 2.8이고, b0 = 29 − 2.8 × 3 = 20.6입니다. 따라서 회귀식은 “매출 = 20.6 + 2.8 × 광고비”입니다. 같은 방법으로 1장의 매장 10곳 데이터를 계산하면 기울기 3, 절편 20이 나옵니다.

이 공식은 데이터를 바탕으로 기울기와 절편을 계산하는 방법입니다. 변수가 여러 개인 다중선형회귀에서도 같은 최소제곱 원리를 적용할 수 있지만, 계수를 계산하는 방식은 행렬 형태로 확장됩니다. 중요한 점은 OLS가 단순히 직선을 그리는 방법이 아니라, 정해진 모형 안에서 어떤 계수가 데이터를 가장 잘 설명하는지 수학적으로 결정하는 방법이라는 것입니다.

SECTION 06

SSE, MSE, RMSE는 어떻게 다를까?

OLS를 공부할 때 자주 등장하는 세 지표를 구분해야 합니다.

지표계산식의미
SSEΣ ei²잔차 제곱의 합
MSE(1/n) Σ ei²관측값당 평균 제곱오차
RMSE√((1/n) Σ ei²)평균 제곱오차의 제곱근
SSE4 + 1 + 4 = 9÷ nMSE9 ÷ 3 = 3√RMSE√3 ≈ 1.73단위²의 합관측값당 평균 (단위²)원래 단위 (예: 백만 원)
그림 5. SSE에서 MSE, RMSE로 (3개 관측값 예제)

SSE는 모형의 전체 잔차 제곱을 합산합니다. MSE는 이를 관측값 수로 나누고, RMSE는 다시 제곱근을 취합니다. 앞의 세 관측값 예제라면 SSE 9, MSE 9 ÷ 3 = 3, RMSE √3 ≈ 1.73입니다.

같은 데이터에서 같은 관측값 수를 사용하는 경우 SSE, MSE, RMSE는 모두 동일한 방향으로 모형의 오차를 평가합니다. 따라서 이 경우 세 지표를 최소화하는 모형은 같습니다.

다만 RMSE는 원래 종속변수와 같은 단위를 가지므로 오차 규모를 직관적으로 이해하기 쉽습니다. 매출이 백만 원 단위라면 RMSE 1.73은 “예측이 평균적으로 170만 원 정도 빗나간다”로 읽을 수 있습니다. 반면 SSE는 관측값 수와 단위의 영향을 받으므로 서로 다른 데이터셋을 직접 비교할 때 주의해야 합니다.

여기서의 MSE는 예측 성능을 평가하는 지표로, 관측값 수 n으로 나눕니다. 회귀분석 출력표에 나오는 잔차의 평균제곱(MSE)은 추정한 계수의 수만큼 자유도를 빼서, 단순회귀라면 n − 2로 나눕니다. 이 값은 오차의 분산을 추정하는 데 쓰이며 05 회귀계수의 통계적 추론에서 다룹니다.

SECTION 07

OLS를 사용하기 위한 조건은 무엇일까?

OLS는 회귀계수를 계산하는 방법이므로, 모든 통계적 가정이 충족되어야만 계산할 수 있는 것은 아닙니다. 다만 결과를 어떻게 해석하고 추론할 수 있는지는 가정에 따라 달라집니다.

계수를 계산하는 데 필요추론(표준오차·검정)에 필요계수에 대해 선형인 모형완전한 다중공선성 없음오차의 외생성 → 불편성등분산성오차의 독립성정규성 (특히 소표본)계수는 언제든 계산되지만, 믿고 해석하려면 오른쪽까지 확인해야 한다
그림 6. OLS 가정이 영향을 주는 곳
조건 또는 가정중요한 이유
모형의 선형성회귀계수가 모형에 선형적으로 들어가는지 확인합니다. 설명변수 자체를 변환하더라도 계수에 대해 선형이면 OLS를 적용할 수 있습니다.
오차의 외생성설명변수와 오차항이 체계적으로 관련되지 않아야 회귀계수의 불편성 등 주요 성질을 확보할 수 있습니다.
완전한 다중공선성 없음설명변수 사이에 완벽한 선형 종속 관계가 없어야 모든 회귀계수를 개별적으로 식별할 수 있습니다.
등분산성오차의 분산이 일정하면 고전적 표준오차와 효율성에 관한 결과를 얻는 데 도움이 됩니다.
오차의 독립성 또는 적절한 의존 구조 처리관측값 간 상관이 있으면 표준오차와 통계적 검정이 달라질 수 있습니다.
오차의 정규성주로 소표본에서 고전적인 t·F 검정의 정확한 분포를 보장하는 데 중요합니다. OLS 계수 계산 자체에 필수인 것은 아닙니다.

그림 6처럼 표의 조건은 두 묶음으로 나뉩니다. 왼쪽 조건은 계수를 계산하고 그 계수가 평균적으로 맞는 값(불편 추정량)이 되기 위한 것이고, 오른쪽 조건은 표준오차, 신뢰구간, p값을 믿기 위한 것입니다. 이 중 외생성은 1장의 학습 의욕 예처럼 빠진 변수가 X와 Y에 함께 영향을 주면 깨집니다. 이때는 데이터가 아무리 많아도 계수가 한쪽으로 치우칩니다.

따라서 OLS로 계수를 구했다고 해서 그 결과가 자동으로 신뢰할 만한 것은 아닙니다. 모형의 형태, 데이터 구조, 이상치, 잔차의 패턴을 함께 확인해야 합니다.

SECTION 08

OLS가 적합하지 않을 수 있는 상황

이상치비선형이분산관측값 의존잔차를 제곱하므로 이상치에 민감하고, 직선·등분산·독립을 전제로 한 추론은 흔들린다
그림 7. OLS가 적합하지 않을 수 있는 네 가지 상황 (개념 예시)

OLS가 적합하지 않다고 해서 언제나 다른 추정법으로 바꿔야 하는 것은 아닙니다. 먼저 어떤 가정이 위반되었고, 그 문제가 계수 추정과 통계적 추론 중 어디에 영향을 미치는지 구분하는 것이 중요합니다. 예를 들어 이분산성은 계수는 그대로 두고 표준오차만 고치면 되지만, 비선형 관계는 모형의 형태를 바꿔야 합니다. 이런 문제를 찾아내는 방법은 06 회귀모형의 진단, 대안은 08 변수 변환과 다항회귀와 11 로버스트·분위회귀에서 다룹니다.

✓ 핵심 정리

잔차를 제곱해 더한 값이 가장 작은 직선을 고릅니다.


다음은 03 단순선형회귀입니다. 설명변수 하나와 종속변수 하나를 사용하는 단순선형회귀에서 절편과 기울기가 실제 데이터로 어떻게 계산되고, 각각 어떤 의미를 갖는지 구체적인 예제로 알아봅니다.

KEY TAKEAWAYS

OLS는 잔차 e = y − ŷ를 제곱해 더한 SSE가 가장 작아지는 계수를 고르며, 단순회귀에서는 b₁ = Σ(x − x̄)(y − ȳ) ÷ Σ(x − x̄)², b₀ = ȳ − b₁x̄로 계산합니다. 제곱 때문에 이상치에 민감하고, 계수의 계산과 그 계수를 믿을 수 있는지(추론)는 따로 점검해야 합니다.