HOME
home
About
home

회귀 모델에서 P-값의 중요성

오늘은 회귀 분석에서 많은 분들이 간과하기 쉬운 P-값에 대해 이야기해보려고 합니다. 회귀 분석에서 P-값은 선택 사항이 아닙니다. 이를 무시하면 잘못된 특성을 신뢰하게 될 수 있습니다.

P-값이란 무엇인가?

P-값은 통계학에서 중요한 개념으로, 회귀 모델에서는 특성(변수)의 계수가 실제로 0일 확률을 알려줍니다. 쉽게 말해, 이 값은 "이 특성이 실제로 모델에 가치를 더하고 있는가?"라는 질문에 답해줍니다.
통계적으로 이는 가설 검정 형태를 띠고 있습니다:
H₀(귀무가설): 특성 계수 = 0 (특성이 목표 변수에 영향을 미치지 않음)
H₁(대립가설): 특성 계수 ≠ 0 (특성이 목표 변수에 영향을 미침)
P-값이 낮다는 것은 "이 특성이 쓸모없을 가능성이 낮다 → 아마도 중요하다"는 것을 의미합니다.

P-값 계산 방법

P-값은 다음과 같은 수식으로 계산됩니다:
검정 통계량: t = b/SE₍ᵦ₎ (계수를 표준 오차로 나눈 값)
P-값: p = 2P(t > |검정 통계량|)
실제 회귀 출력 예시를 보면:
상수항: 계수 = 1.352, 표준오차 = 2.401, t = 0.46, p = 0.315
가중치: 계수 = 0.9207, 표준오차 = 0.8194, t = 1.12, p = 0.1375

P-값 해석 기준

일반적으로 P-값은 다음과 같이 해석합니다:
P < 0.05: 통계적으로 유의함 → 특성 유지
P ≥ 0.05: 약한 증거 → 제거 가능 (단, 도메인 지식에 따라 유지할 수도 있음)

회귀 모델에서 P-값이 중요한 이유

좋은 회귀 모델은 단순히 "정확한" 모델이 아니라 다음 특성을 갖춰야 합니다:
설명 가능한: 모델의 판단을 이해할 수 있어야 함
간결한: 불필요한 복잡성 없이 핵심을 포착
통계적으로 유효한: 수학적으로 신뢰할 수 있어야 함
P-값은 이런 목표를 달성하는 데 도움을 줍니다:
과적합 방지: 통계적으로 유의미하지 않은 특성 제거
무관한 특성 제거: 노이즈만 추가하는 변수 식별
핵심 동인 파악: 실제로 예측을 이끄는 요소 명확히 파악

Python에서 P-값 구하기

scikit-learn의 LinearRegression은 P-값을 제공하지 않습니다. 대신 statsmodels를 사용해야 합니다:
import statsmodels.api as sm # 절편 추가 X = sm.add_constant(X) # 모델 적합 model = sm.OLS(y, X).fit() # 결과 요약 출력 print(model.summary())
Python
복사
결과 테이블에서 "P>|t|" 열을 확인하면 각 특성의 P-값을 확인할 수 있습니다.

특성 선택: P-값으로 어떤 결정을 내려야 할까?

P-값이 0.05를 초과하고 도메인 지식으로 뒷받침되지 않는 특성은 제거를 고려해야 합니다. 하지만 P-값만으로 결정하는 것은 위험할 수 있습니다. 다음 지표들과 함께 고려하세요:
VIF(분산 팽창 요인): 다중공선성 확인
조정된 R²: 모델 성능 평가
도메인 지식: 데이터의 맥락 이해

실제 예시

주택 가격 예측 모델을 만든다고 가정해 봅시다:
"우편번호"의 P-값이 0.001이면 매우 유의미하므로 유지해야 합니다.
"건축 연도"의 P-값이 0.43이면 통계적으로 유의미하지 않으므로, 제거하면 모델의 노이즈를 줄일 수 있습니다.

P-값 해석 시 주의사항

P-값은 다음 가정이 충족될 때만 신뢰할 수 있습니다:
선형 관계: 예측 변수와 목표 변수 간의 관계가 선형적
오차의 정규성: 잔차가 정규 분포를 따름
다중공선성 없음: 예측 변수 간에 강한 상관관계 없음
등분산성: 오차의 분산이 일정함
이러한 가정이 위배되면 P-값이 잘못된 결론으로 이끌 수 있습니다.

실전 회귀 모델 워크플로우

1.
statsmodels로 초기 모델 적합
2.
P-값 분석
3.
P > 0.05인 특성 제거 검토
4.
VIF로 다중공선성 확인
5.
모델 재적합 후 조정된 R², 교차 검증, 잔차 플롯으로 검증

결론

P-값은 회귀 모델을 구축할 때 중요한 필터 역할을 합니다. 이를 통해 노이즈를 제거하고 모델을 강화할 수 있습니다. XGBoost와 같은 고급 모델을 사용할 때도 이러한 사고방식은 "어떤 특성이 진정으로 중요한가?"라는 질문에 답하는 데 도움이 됩니다.
회귀 모델에서 P-값을 무시하지 마세요. 이는 선택 사항이 아니라 모델 품질과 해석에 필수적인 요소입니다.