회귀 결과표에서 먼저 볼 것은 결정계수가 아니라 F검정의 p값입니다. 모형 전체가 의미 없다면 계수 하나하나를 읽을 이유도 없습니다.
풀고 시작
문제 1. 광고비로 매출을 설명하는 단순회귀에서 결정계수가 0.64로 나왔습니다. 이 값의 뜻으로 가장 알맞은 것은?
결정계수는 종속변수의 전체 변동 가운데 회귀모형이 설명하는 비율입니다. 단순회귀에서는 상관계수의 제곱과 같아서, 결정계수가 0.64면 상관계수의 절댓값은 0.8입니다. 광고비 1단위의 효과는 기울기인 회귀계수가 알려 줍니다.
직선 하나로 설명하기
회귀분석은 종속변수(결과) y가 독립변수(설명) x에 따라 어떻게 달라지는지를 식으로 나타냅니다. 독립변수가 하나면 단순회귀, 여럿이면 다중회귀입니다. 이름은 19세기 프랜시스 골턴(Francis Galton)이 키가 큰 부모의 자녀가 부모보다는 평균 쪽으로 돌아온다는 "평균으로의 회귀"를 관찰한 데서 왔습니다.
직선은 최소제곱법으로 긋습니다. 관측값과 직선의 예측값 사이의 차이를 잔차라고 할 때, 잔차를 제곱해 더한 값이 가장 작아지는 직선을 고릅니다. 제곱하는 이유는 위아래로 벗어난 잔차가 서로 상쇄되지 않게 하려는 것입니다.
y의 전체 변동(SST)은 모형이 설명한 변동(SSR)과 설명하지 못한 잔차 변동(SSE)으로 나뉩니다. 결정계수(R²)는 SSR을 SST로 나눈 값, 곧 설명된 비율입니다. 그런데 결정계수는 쓸모없는 변수를 넣어도 줄지 않고 늘기만 하므로, 변수 개수만큼 벌점을 준 수정된 결정계수로 모형을 비교합니다.
결과표 읽기
R에서 lm으로 회귀를 돌리고 summary로 결과를 보면 다음과 같은 표가 나옵니다.
fit <- lm(sales ~ ad, data = df)
summary(fit)
# Estimate Std. Error t value Pr(>|t|)
# (Intercept) 12.00 3.00 4.00 0.0013
# ad 2.50 0.50 5.00 0.0002
# Multiple R-squared: 0.64, Adjusted R-squared: 0.61
# F-statistic: 25 on 1 and 14 DF, p-value: 0.0002
읽는 순서는 이렇습니다. 첫째, 맨 아래 F통계량의 p값으로 모형 전체가 유의한지 봅니다. 귀무가설은 "모든 회귀계수가 0이다"입니다. 둘째, 계수마다 Estimate(추정치)와 그 옆의 p값을 봅니다. ad의 추정치 2.5는 광고비가 1 늘면 매출이 평균 2.5 는다는 뜻이고, p값 0.0002는 이 계수가 0이 아니라고 볼 근거가 충분하다는 뜻입니다. t값은 추정치를 표준오차로 나눈 값이라 2.5 나누기 0.5로 5가 됩니다. 셋째, 결정계수로 설명력을 봅니다. 예측은 식에 값을 넣어 구합니다. 광고비가 10이면 12 더하기 2.5 곱하기 10으로 37입니다.
다중회귀의 계수는 다른 변수를 고정했을 때 그 변수가 1 늘면 y가 얼마나 변하는지를 뜻합니다. 성별이나 지역 같은 범주형 변수는 더미 변수로 바꿔 넣습니다. 범주가 k개면 더미는 k−1개를 만들고, 빠진 하나가 비교 기준이 됩니다.
회귀의 가정
최소제곱 회귀의 검정과 신뢰구간이 믿을 만하려면 네 가지 가정이 필요합니다. x와 y의 관계가 직선이라는 선형성, 잔차끼리 서로 관계없다는 독립성, 잔차의 흩어짐이 x에 따라 달라지지 않는다는 등분산성, 잔차가 정규분포를 따른다는 정규성입니다. 잔차 그림에서 깔때기 모양이 보이면 등분산성이, Q-Q 그림에서 점이 직선을 크게 벗어나면 정규성이 깨진 것입니다. 시간 순서로 쌓인 자료에서는 더빈-왓슨 검정으로 잔차의 독립성을 봅니다.
다중공선성과 변수 선택
독립변수끼리 강하게 상관되어 있으면 다중공선성이 생깁니다. 모형 전체의 설명력은 높은데 계수 하나하나의 표준오차가 커지고 부호가 뒤집히기도 합니다. 흔히 분산팽창계수(VIF)가 10을 넘으면 심각하다고 보고, 상관이 높은 변수를 빼거나 합쳐서 해결합니다.
변수가 많을 때는 변수 선택을 합니다. 아무것도 없는 모형에서 하나씩 더하는 전진선택법, 전부 넣고 하나씩 빼는 후진제거법, 더하고 빼기를 함께 하는 단계적 선택법이 있습니다. 비교 기준으로는 AIC나 BIC를 쓰며, 값이 작을수록 좋은 모형입니다. R에서는 step 함수가 AIC로 이 과정을 돌려 줍니다. 계수에 벌점을 줘 과적합을 막는 방법도 있습니다. 릿지는 계수를 0 쪽으로 줄이되 0으로 만들지는 않고, 라쏘는 일부 계수를 정확히 0으로 만들어 변수 선택까지 합니다.
인출 문제
문제 1. 회귀 결과표에서 ad의 추정치가 2.5, 표준오차가 0.5일 때 t값은 얼마입니까?
t값은 추정치를 표준오차로 나눈 값이라 2.5를 0.5로 나눠 5입니다. t값의 절댓값이 클수록 계수가 0과 뚜렷이 다르다는 뜻이고, 그만큼 p값이 작아집니다.
문제 2. 회귀 결과의 F검정이 검정하는 귀무가설로 옳은 것은?
F검정은 모형 전체가 유의한지를 보며, 귀무가설은 독립변수의 회귀계수가 모두 0이라는 것입니다. p값이 작으면 적어도 하나의 계수는 0이 아니라고 봅니다.
문제 3. 다중공선성이 생겼을 때 나타나는 현상으로 가장 알맞은 것은?
독립변수끼리 비슷한 정보를 담으면 각 변수의 몫을 가르기 어려워져 계수가 불안정해집니다. 흔히 분산팽창계수가 10을 넘으면 심각하다고 봅니다.
문제 4. 라쏘 회귀와 릿지 회귀를 옳게 구분한 것은?
라쏘는 계수의 절댓값에, 릿지는 계수의 제곱에 벌점을 줍니다. 그래서 라쏘는 불필요한 변수의 계수를 0으로 만들고, 릿지는 모든 변수를 남긴 채 크기만 줄입니다.
더 풀기
출제기준의 세부항목을 따라 이 강의 범위에서 새로 낸 문제입니다. 모의고사도 여기에서 뽑습니다.
묶음 1
문제 1. 최소제곱법이 고르는 직선은 어떤 직선입니까?
잔차를 그냥 더하면 위아래로 벗어난 값이 서로 상쇄되어 0이 되기 쉽습니다. 그래서 제곱해 더한 값이 가장 작아지는 직선을 고릅니다.
문제 2. 잔차의 정의로 옳은 것은?
잔차는 실제로 관측한 값과 모형이 예측한 값의 차이로, 모형이 설명하지 못한 부분입니다.
문제 3. 회귀분석이라는 이름의 기원이 된 관찰을 한 사람은 누구입니까?
프랜시스 골턴은 키가 큰 부모의 자녀가 부모보다는 평균 쪽으로 돌아오는 현상을 평균으로의 회귀라고 불렀고, 여기서 회귀분석이라는 이름이 나왔습니다.
문제 4. 전체 변동(SST), 회귀로 설명된 변동(SSR), 잔차 변동(SSE)의 관계로 옳은 것은?
종속변수의 전체 변동은 모형이 설명한 부분과 설명하지 못한 잔차 부분으로 나뉩니다. 결정계수는 이 가운데 SSR이 SST에서 차지하는 비율입니다.
문제 5. SST가 100이고 SSE가 36일 때 결정계수는 얼마입니까?
설명된 변동 SSR은 100에서 36을 뺀 64이고, 결정계수는 64를 100으로 나눈 0.64입니다. 0.36은 설명하지 못한 비율입니다.
문제 6. 단순회귀에서 결정계수가 0.64일 때 x와 y의 상관계수의 절댓값은 얼마입니까?