CHAPTER 05.15 / MULTIPLE LINEAR REGRESSION
5.15 여러 설명변수를 함께 사용하는 회귀
원자료로 다중회귀 OLS 계수를 먼저 적합하고 예측값·잔차·RSS를 검산한 뒤, 한 입력을 고정해 각 계수를 해석합니다.
5.15 여러 설명변수를 함께 사용하는 회귀
이 페이지는 5장의 선택 개념이다. 공부 시간과 이전 시험 점수를 함께 사용해 최종 점수를 설명하고, OLS 적합이 끝난 뒤 한 계수를 다른 입력이 같은 조건에서 해석하는 것이 목표다.
결과를 설명하는 입력을 Explanatory variable(설명변수), 설명하려는 결과를 Response variable(반응변수)라고 5.11에서 배웠다. 5.12에서는 Ordinary least squares(최소제곱법, OLS)가 Residual sum of squares(잔차제곱합, RSS)를 가장 작게 만드는 직선을 고르는 방법을 살펴봤고, 5.13에서는 그 직선이 평균 기준보다 제곱거리를 얼마나 줄였는지 R-squared(결정계수)로 비교했다.
이번 페이지는 이 개념들을 그대로 사용하되 설명변수를 한 개에서 두 개로 늘린다. 순서가 중요하다. 먼저 원자료로 OLS 계수를 구하고, 그다음 이미 구한 계수를 해석한다.
여섯 명의 원자료를 모두 사용한다
학생 여섯 명의 가상 자료를 생각해 보자. 은 이번 시험을 위해 공부한 시간, 는 이전 시험 점수, 는 이번 최종 시험 점수다.
| 학생 | 공부 시간 | 이전 시험 점수 | 최종 점수 |
|---|---|---|---|
| A | 1시간 | 50점 | 50점 |
| B | 2시간 | 40점 | 50점 |
| C | 3시간 | 70점 | 70점 |
| D | 4시간 | 60점 | 70점 |
| E | 5시간 | 90점 | 90점 |
| F | 6시간 | 80점 | 90점 |
두 입력으로 OLS를 먼저 적합한다
여러 설명변수를 한 회귀식에 함께 넣는 방법을 Multiple linear regression(다중 선형회귀)이라고 한다. 두 설명변수를 사용하는 모형은 다음과 같이 쓴다.
- 번째 학생의 예측한 최종 시험 점수
- 단위: 점
- 번째 학생의 공부 시간
- 단위: 시간
- 번째 학생의 이전 시험 점수
- 단위: 점
- 자료에서 OLS로 추정할 Intercept(절편)
- 단위: 점
- 자료에서 OLS로 추정할 공부 시간 Coefficient(계수)
- 단위: 점/시간
- 자료에서 OLS로 추정할 이전 시험 점수 계수
- 단위: 점/점
OLS는 먼저 를 60점으로 바꾸거나 계수를 따로 구하지 않는다. 표에 있는 여섯 명의 원래 , , 를 모두 사용하여 세 계수 , , 를 동시에 조정하고 RSS가 가장 작은 조합을 찾는다.
실제 분석에서는 보통 Statistical software library(통계 소프트웨어 라이브러리)가 이 계산을 수행한다. 여기서는 세 계수를 구하는 복잡한 계산 절차는 다루지 않고, 라이브러리가 구한 결과를 예측값·잔차·RSS로 검산한 뒤 각 계수의 뜻을 해석하는 데 집중한다.
이 자료에서 OLS가 고른 적합식은 다음과 같다.
- 번째 학생의 Fitted value(적합값)
- 단위: 점
- 번째 학생의 공부 시간
- 단위: 시간
- 번째 학생의 이전 시험 점수
- 단위: 점
- OLS가 추정한 절편
- 단위: 점
- OLS가 추정한 공부 시간 계수
- 단위: 점/시간
- OLS가 추정한 이전 시험 점수 계수
- 단위: 점/점
지금은 5와 0.5의 뜻을 해석하기 전이다. 먼저 이 계수들이 원자료를 어떻게 적합하는지 확인하자.
예측값, 잔차와 RSS로 적합 결과를 검산한다
각 학생의 원래 과 를 적합식에 넣는다. 예측값에서 실제값을 뺀 것이 아니라, 실제값에서 예측값을 뺀 값이 Residual(잔차) 다.
| 학생 | 예측값 계산 | 실제 | 잔차 | 잔차제곱 |
|---|---|---|---|---|
| A | 점 | 50점 | 0점 | |
| B | 점 | 50점 | 0점 | |
| C | 점 | 70점 | 0점 | |
| D | 점 | 70점 | 0점 | |
| E | 점 | 90점 | 0점 | |
| F | 점 | 90점 | 0점 |
- 번째 학생의 실제 점수에서 예측 점수를 뺀 잔차
- 단위: 점
- 번째 학생의 실제 최종 시험 점수
- 단위: 점
- 번째 학생의 예측한 최종 시험 점수
- 단위: 점
- 여섯 잔차를 각각 제곱해 더한 잔차제곱합
- 단위:
- 학생 A부터 F까지를 나타내는 관측값 번호
- 단위: 없음
잔차제곱은 음수가 될 수 없으므로 RSS도 0보다 작아질 수 없다. 위 계수 조합은 RSS가 도달할 수 있는 가장 작은 값 0을 만들었으므로 OLS 적합 결과임을 바로 검산할 수 있다.
원래 자료로 적합한다
이전 시험 점수 X₂를 60점으로 바꾸지 않고 관측된 값을 그대로 사용합니다.
- 공부 시간 X₁
- 1, 2, 3, 4, 5, 6
- 이전 점수 X₂
- 50, 40, 70, 60, 90, 80
- 최종 점수 Y
- 50, 50, 70, 70, 90, 90
OLS가 세 계수를 동시에 추정
- 절편
- 20
- X₁ 계수
- 5
- X₂ 계수
- 0.5
검산 결과: 여섯 예측값이 실제값과 같아 잔차는 모두 0점, RSS는 0점²입니다.
적합된 계수를 해석한다
적합이 끝난 식에서 이전 시험 점수 X₂에 60점을 대입하고 공부 시간 X₁만 바꿉니다.
X₂에 60점을 대입한 뒤 X₁만 비교
- 01원래 자료를 유지한다여섯 명의 X₁, X₂, Y를 한꺼번에 OLS에 넣습니다.
- 02세 계수를 함께 구한다절편과 두 설명변수 계수를 동시에 조정합니다.
- 03적합 결과를 검산한다예측값과 실제값이 같아 잔차와 RSS가 모두 0인지 확인합니다.
- 04그다음 계수를 해석한다적합된 식에 X₂=60을 대입하고 X₁만 바꾸어 계수를 읽습니다.
적합이 끝난 뒤 한 입력을 고정해 해석한다
이제 “이전 시험 점수가 같은 학생끼리 비교한다”는 질문을 생각한다. 예를 들어 이전 시험 점수가 모두 60점인 두 학생을 가정하고, 한 학생은 2시간, 다른 학생은 3시간 공부했다고 비교한다.
이것은 원자료의 모든 를 60점으로 바꾸고 OLS를 다시 구한다는 뜻이 아니다. 이미 원자료로 구한 적합식에 해석을 위한 값 을 대입하고, 만 바꾸어 두 예측값을 비교한다는 뜻이다.
다른 설명변수의 값을 같게 놓고 한 설명변수와 반응변수의 평균적인 관계를 읽는 것을 Conditional mean relationship(조건부 평균관계)이라고 한다.
먼저 이미 적합한 식에 을 대입한다.
- 이전 시험 점수를 60점으로 놓았을 때의 예측 최종 점수
- 단위: 점
- 비교할 공부 시간
- 단위: 시간
- 계수 해석을 위해 같게 놓은 이전 시험 점수
- 단위: 점
- 이전 시험 점수가 같을 때 공부 시간 1시간 차이와 연결된 추정 계수
- 단위: 점/시간
이 식에서 공부 시간만 2시간에서 3시간으로 바꾸면 다음과 같다.
- 2시간 공부하고 이전 시험 점수가 60점일 때의 예측값
- 단위: 점
- 3시간 공부하고 이전 시험 점수가 60점일 때의 예측값
- 단위: 점
- 이전 시험 점수를 고정하고 공부 시간만 1시간 늘렸을 때의 예측값 차이
- 단위: 점
따라서 공부 시간 계수 5점/시간은 “이전 시험 점수가 같은 학생끼리 비교했을 때 공부 시간이 1시간 길면 예측 최종 점수가 평균 5점 높다”라고 읽는다.
계수도 같은 순서로 해석한다. 이미 적합한 식에서 공부 시간을 2시간으로 고정하고 이전 시험 점수만 60점에서 61점으로 바꾼다.
- 공부 시간 2시간, 이전 시험 점수 60점일 때의 예측값
- 단위: 점
- 공부 시간 2시간, 이전 시험 점수 61점일 때의 예측값
- 단위: 점
- 공부 시간을 고정하고 이전 시험 점수만 1점 높였을 때의 예측값 차이
- 단위: 점
따라서 이전 시험 점수 계수 0.5점/점은 공부 시간이 같은 조건에서 이전 시험 점수 1점 차이와 연결된 예측값 차이다.
빠진 변수의 정보가 한 계수에 섞일 수 있다
이제 의도적으로 이전 시험 점수 를 빼고, 공부 시간 만 사용해 Simple linear regression(단순 선형회귀)을 같은 자료에 OLS로 적합한다.
- 공부 시간만 사용해 예측한 최종 시험 점수
- 단위: 점
- 이번 시험을 위해 공부한 시간
- 단위: 시간
- 공부 시간이 0시간일 때의 추정 절편
- 단위: 점
- 단순회귀에서 공부 시간 1시간 차이와 연결된 기울기
- 단위: 점/시간
공부 시간이 긴 학생일수록 이전 시험 점수도 대체로 높기 때문에, 를 보지 않은 단순회귀의 기울기 9.1429에는 두 변수의 관계가 함께 섞일 수 있다. 두 모형의 결과를 비교하면 차이가 선명하게 보인다.
| 모형 | 공부 시간 계수 | 이전 시험 점수 계수 | RSS | |
|---|---|---|---|---|
| 만 사용 | 약 9.1429점/시간 | 포함하지 않음 | 약 | 약 0.9143 |
| , 함께 사용 | 5점/시간 | 0.5점/점 | 0 | 1 |
모형에 들어가야 할 관련 변수가 빠진 상태를 Omitted variable(누락변수) 문제라고 한다. 이 예시에서 이전 시험 점수는 최종 점수와 관련되어 있고 공부 시간과도 함께 움직이지만, 단순회귀에서는 빠져 있다. 그 결과 공부 시간 계수 9.1429가 이전 시험 점수의 관계까지 일부 담았다. 두 변수를 함께 넣자 공부 시간 계수는 5, 이전 시험 점수 계수는 0.5로 나뉘었다.
빠진 변수가 있다는 사실만으로 언제나 계수가 바뀌는 것은 아니다. 그 변수가 반응변수와 관련되어 있고, 포함된 설명변수와도 함께 움직일 때 섞임이 생길 수 있다. 따라서 계수 변화는 어떤 자료가 만들어졌고 어떤 변수가 빠졌는지와 함께 해석해야 한다.
설명변수를 늘려도 인과가 증명되지는 않는다
이 가상 자료는 다중회귀가 두 관계를 정확히 분리하도록 만들었기 때문에 RSS가 0이고 이다. 실제 자료에는 보통 잔차가 남으며, 설명변수를 추가하면 같은 자료에서 계산한 는 내려가지 않기 때문에 증가만으로 새 변수가 유용하다고 판단할 수 없다. 사용하지 않은 새 자료의 예측오차와 연구 목적도 함께 확인해야 한다.
다중회귀 계수는 다른 설명변수를 고정한 평균관계이지 Causal effect(인과효과)를 자동으로 증명하는 값이 아니다. Measurement error(측정오차), Reverse causality(역인과), Nonlinearity(비선형성), Sample selection(표본선택)과 측정하지 않은 변수의 영향은 여전히 남을 수 있다.
자주 생기는 오해
- OLS는 계수와 계수를 차례로 따로 구하는 것이 아니라 원자료로 세 계수를 동시에 추정한다.
- 은 OLS를 다시 계산하기 위한 새 자료가 아니라 이미 적합된 계수를 해석하기 위해 대입하는 값이다.
- 단순회귀 계수 9.1429와 다중회귀 계수 5는 서로 다른 조건의 질문에 답한다.
- 설명변수를 많이 넣는다고 측정하지 않은 모든 누락변수가 사라지지는 않는다.
- 같은 자료의 가 높아져도 새 자료의 예측 성능이 좋아진다고 보장할 수 없다.
- 회귀식에서 변수를 고정한 비교는 실제 실험에서 그 변수를 통제했다는 뜻이 아니다.
이해 점검
OLS는 이전 시험 점수를 모두 60점으로 바꾼 뒤 공부 시간 계수를 구하는가?
아니다. 여섯 명의 원래 공부 시간, 이전 시험 점수와 최종 점수를 모두 사용해 절편과 두 계수를 동시에 구한다.
이전 시험 점수를 60점으로 고정했을 때 공부 시간이 2시간에서 3시간으로 늘면 예측값은 얼마나 달라지는가?
60점에서 65점으로 5점 높아진다. 이 차이가 공부 시간 계수 5점/시간이다.
공부 시간만 사용했을 때 계수가 약 9.1429로 더 큰 이유는 무엇인가?
공부 시간과 함께 움직이던 이전 시험 점수를 모형에서 빼면서 그 변수의 관계가 공부 시간 계수에 일부 섞였기 때문이다.
두 설명변수를 사용해 이 되면 공부 시간의 인과효과가 증명되는가?
아니다. 이 값은 가상 자료의 모든 점을 정확히 적합했다는 뜻일 뿐이며 측정오차, 역인과와 측정하지 않은 변수의 영향은 따로 검토해야 한다.
완료 기준
원래의 두 설명변수로 OLS 계수를 먼저 구하고 예측값·잔차·RSS로 검산한 뒤, 이미 적합한 식에서 이전 시험 점수를 고정해 공부 시간 계수 5점/시간을 해석할 수 있으면 다음 페이지로 넘어간다. 다음 페이지에서는 설명변수끼리 비슷한 정보를 담을 때 개별 계수가 불안정해지는 이유를 살펴본다.
이 자료의 학생 점수와 회귀계수는 다중회귀 원리를 설명하기 위한 가상값이며 실제 교육 효과나 투자성과를 주장하지 않는다.