모던지 / 데이터분석 준전문가 / 데이터분석 8강. 회귀분석

데이터분석 8강. 회귀분석

회귀 결과표에서 먼저 볼 것은 결정계수가 아니라 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의 상관계수의 절댓값은 얼마입니까?
단순회귀의 결정계수는 두 변수의 상관계수를 제곱한 값과 같으므로, 0.64의 제곱근인 0.8이 상관계수의 절댓값입니다. 부호는 기울기의 부호를 따릅니다.
문제 7. 결정계수 대신 수정된 결정계수로 모형을 비교하는 이유는 무엇입니까?
변수를 더하면 결정계수는 우연히라도 조금씩 늡니다. 수정된 결정계수는 변수 개수만큼 벌점을 줘, 설명력이 충분히 오르지 않는 변수를 넣으면 오히려 줄어듭니다.
문제 8. 결과표에서 ad의 추정치가 2.5일 때 옳은 해석은 무엇입니까?
회귀계수는 독립변수가 1단위 늘 때 종속변수의 평균적인 변화량입니다. 상관계수는 1을 넘을 수 없으므로 2.5가 될 수 없습니다.
문제 9. 절편 12, 기울기 2.5인 회귀식에서 광고비가 10일 때 매출의 예측값은 얼마입니까?
예측값은 절편에 기울기 곱하기 x를 더해 12 더하기 25로 37입니다.
문제 10. 회귀 결과에서 F통계량이 25이고 자유도가 1과 14로 나왔습니다. 이 모형의 관측치 수는 몇 개입니까?
단순회귀에서 잔차 자유도는 관측치 수에서 추정한 계수 두 개(절편과 기울기)를 뺀 값입니다. 14에 2를 더해 16개입니다.

묶음 2

문제 1. 회귀 결과표를 읽는 순서로 가장 알맞은 것은?
모형 전체가 유의하지 않다면 계수 하나하나를 해석할 근거가 약합니다. 그래서 F검정, 계수, 설명력의 순서로 봅니다.
문제 2. 어떤 회귀계수의 p값이 0.40으로 나왔습니다. 옳은 해석은 무엇입니까?
계수의 p값은 그 계수가 0이라는 귀무가설에 대한 것입니다. 0.40은 유의수준 0.05보다 훨씬 커서 이 변수의 효과를 입증하지 못했습니다.
문제 3. 다중회귀에서 어떤 변수의 계수가 뜻하는 것으로 옳은 것은?
다중회귀의 계수는 다른 변수의 영향을 통제한 순수한 효과입니다. 그래서 단순회귀의 기울기와 다를 수 있고, 부호가 바뀌기도 합니다.
문제 4. 지역이 서울, 부산, 대구 세 범주일 때 회귀에 넣을 더미 변수는 몇 개입니까?
범주가 k개면 더미는 k−1개를 만듭니다. 세 개를 모두 만들면 더미의 합이 늘 1이 되어 절편과 완전히 겹치므로, 하나를 빼고 비교 기준으로 둡니다.
문제 5. 더미 변수를 만들 때 한 범주를 빼는 이유는 무엇입니까?
모든 더미를 넣으면 완전한 다중공선성이 생깁니다. 빠진 범주가 기준이 되고, 다른 더미의 계수는 그 기준과의 차이를 뜻합니다.
문제 6. 회귀의 네 가지 기본 가정이 아닌 것은?
정규성 가정은 독립변수가 아니라 잔차에 대한 것입니다. 독립변수는 정규분포를 따르지 않아도 됩니다.
문제 7. 잔차를 예측값에 대해 그렸더니 예측값이 커질수록 잔차가 깔때기처럼 넓게 퍼졌습니다. 깨진 가정은 무엇입니까?
잔차의 흩어짐이 예측값에 따라 달라지므로 등분산성이 깨졌습니다. 종속변수에 로그를 취하는 변환이 흔한 처방입니다.
문제 8. 잔차의 Q-Q 그림에서 점들이 직선을 크게 벗어났습니다. 의심되는 것은 무엇입니까?
Q-Q 그림은 잔차의 분위수를 정규분포의 분위수와 맞대 그린 것이라, 직선에서 벗어나면 잔차가 정규분포를 따르지 않는다는 신호입니다.
문제 9. 시간 순서로 쌓인 자료에서 잔차끼리 서로 관계가 있는지 볼 때 쓰는 검정은 무엇입니까?
더빈-왓슨 검정은 이웃한 잔차 사이의 자기상관을 봅니다. 샤피로-윌크 검정은 잔차의 정규성을 봅니다.
문제 10. 분산팽창계수(VIF)로 확인하는 것은 무엇입니까?
VIF는 한 독립변수가 다른 독립변수들로 얼마나 설명되는지를 보여 줍니다. 흔히 10을 넘으면 다중공선성이 심각하다고 봅니다.

묶음 3

문제 1. 다중공선성을 해결하는 방법으로 가장 알맞은 것은?
비슷한 정보를 담은 변수를 정리하면 계수가 안정됩니다. 주성분분석으로 변수를 합치거나 릿지 회귀를 쓰는 방법도 있습니다.
문제 2. 아무 변수도 없는 모형에서 시작해 기준을 가장 많이 개선하는 변수를 하나씩 더하는 방법은 무엇입니까?
전진선택법은 빈 모형에서 출발해 변수를 하나씩 추가합니다. 모든 변수를 넣고 하나씩 빼는 것은 후진제거법입니다.
문제 3. 모든 변수를 넣은 모형에서 시작해 가장 덜 중요한 변수를 하나씩 빼는 방법은 무엇입니까?
후진제거법은 전체 모형에서 출발해 제거해도 기준이 나빠지지 않는 변수를 하나씩 뺍니다.
문제 4. 변수를 더하고 빼기를 함께 하며, 이미 들어간 변수도 다시 뺄 수 있는 방법은 무엇입니까?
단계적 선택법은 매 단계에서 추가와 제거를 모두 검토합니다. 새 변수가 들어와 기존 변수의 쓸모가 사라지면 그 변수를 뺄 수 있습니다.
문제 5. AIC로 여러 회귀모형을 비교할 때 옳은 판단 기준은 무엇입니까?
AIC는 모형의 적합도에 변수 개수에 따른 벌점을 더한 값이라 작을수록 좋습니다. R의 step 함수는 AIC가 줄어드는 방향으로 변수를 더하거나 뺍니다.
문제 6. R에서 AIC를 기준으로 변수 선택을 자동으로 해 주는 함수는 무엇입니까?
step은 lm으로 만든 모형을 받아 AIC가 줄어드는 방향으로 변수를 더하거나 빼 줍니다. lm은 모형을 만들고 summary는 결과를 보여 줍니다.
문제 7. 계수의 제곱에 벌점을 줘 모든 계수를 0 쪽으로 줄이되 0으로 만들지는 않는 방법은 무엇입니까?
릿지는 계수 제곱의 합에 벌점을 줘 계수를 고르게 줄입니다. 계수 절댓값에 벌점을 주는 라쏘는 일부 계수를 정확히 0으로 만듭니다.
문제 8. 변수가 매우 많아 불필요한 변수를 모형이 스스로 걸러 내게 하고 싶을 때 가장 알맞은 방법은 무엇입니까?
라쏘는 벌점 때문에 쓸모없는 변수의 계수를 정확히 0으로 만들어 변수 선택 효과를 냅니다. 릿지는 계수를 줄일 뿐 변수를 없애지 않습니다.
문제 9. 결정계수가 매우 높은데 계수들의 p값이 모두 크게 나왔습니다. 가장 먼저 의심할 것은 무엇입니까?
변수들이 함께 설명하는 힘은 크지만 각자의 몫을 가를 수 없어 개별 계수가 유의하지 않게 나오는 것이 다중공선성의 전형적인 모습입니다.
문제 10. 회귀분석에 관한 진술로 옳지 않은 것은?
결정계수는 변수를 더하면 줄지 않고 늘기만 합니다. 그래서 변수 개수에 벌점을 준 수정된 결정계수로 비교합니다. 나머지 셋은 옳은 진술입니다.

이전: 7강 기술통계와 상관분석 · 다음: 9강 다변량 분석

모던지 · 궁금하면 모던지 GitHub · 2026-09-30