종속변수
AI
gpt-oss-120b
종속변수
개요
종속변수(Dependent Variable)는 통계·머신러닝 모델에서 예측하거나 설명하고자 하는 대상을 의미한다. 회귀분석(regression analysis)에서는 독립변수(설명변수, predictor)와의 관계를 통해 종속변수의 값을 추정한다. 종속변수는 연구 목적에 따라 연속형, 이산형, 범주형 등 다양한 형태를 가질 수 있으며, 모델 선택·평가·해석에 핵심적인 영향을 미친다.
회귀분석에서의 역할
1. 종속변수와 독립변수의 관계
- 독립변수는 종속변수에 영향을 미치는 요인으로 가정한다.
- 회귀모형은
Y = f(X) + ε형태로 표현되며, 여기서Y가 종속변수,X가 독립변수,ε는 오차항이다. - 모델이 학습되는 과정은 독립변수들의 조합이 종속변수를 얼마나 잘 설명하는가를 최적화하는 과정이다.
2. 종속변수의 특성
| 유형 | 설명 | 대표적인 회귀모형 |
|---|---|---|
| 연속형 | 실수값을 갖는 변수(예: 키, 매출액) | 선형 회귀, 다항 회귀 |
| 이산형(계수형) | 0,1,2…와 같이 정수값을 갖는 변수(예: 사고 건수) | 포아송 회귀, 음이항 회귀 |
| 범주형 | 두 개 이상의 클래스(예: 질병 유무, 고객 등급) | 로지스틱 회귀, 다항 로지스틱 회귀 |
주의: 범주형 변수를 그대로 회귀모델에 넣으면 오류가 발생한다. 반드시 더미코딩(one‑hot encoding) 등으로 변환해야 한다.
종속변수 선택 및 전처리
1. 변수 선택 기준
- 연구 목표와 가설에 부합하는가?
- 측정 가능성: 실제 데이터에서 신뢰성 있게 측정될 수 있는가?
- 분포 형태: 정규성(continuous)이나 포아송성(계수형) 등 모델 가정에 맞는가?
2. 결측치 처리
3. 변환(스케일링·변형)
| 변환 방법 | 적용 대상 | 효과 |
|---|---|---|
| 표준화(z‑score) | 연속형 변수 | 평균 0, 표준편차 1로 변환 → 계수 해석 용이 |
| 최소‑최대 스케일링 | 연속형 변수 | 0~1 구간으로 변환 → 경계값 해석에 유리 |
| 로그 변환 | 양의 연속형 변수(예: 매출) | 오른쪽 꼬리(heavy‑tail) 완화, 선형성 향상 |
| Box‑Cox 변환 | 정규성 위배 시 | 최적 파라미터 λ 찾음으로 정규성 근접 |
회귀모형별 종속변수 유형
1. 선형 회귀 (Linear Regression)
- 종속변수: 연속형, 정규분포 가정.
- 예시:
집값 = β0 + β1·면적 + β2·방수 + ε
2. 로지스틱 회귀 (Logistic Regression)
- 종속변수: 이진(0/1) 범주형.
- 예시:
암 발생 여부 = σ(β0 + β1·연령 + β2·흡연), 여기서 σ는 시그모이드 함수.
3. 포아송 회귀 (Poisson Regression)
- 종속변수: 사건 발생 횟수(계수형).
- 예시:
교통사고 건수 = exp(β0 + β1·교통량 + β2·날씨)
4. 다항 로지스틱 회귀 (Multinomial Logistic Regression)
- 종속변수: 3개 이상 범주형.
- 예시:
고객 등급(고·중·저) = softmax(β0 + β1·구매액 + β2·방문빈도)
종속변수와 모델 평가
| 평가 지표 | 적용 대상 | 설명 |
|---|---|---|
| MSE (Mean Squared Error) | 연속형 | 오차 제곱 평균, 값이 작을수록 좋음 |
| RMSE (Root MSE) | 연속형 | MSE의 제곱근, 해석이 직관적 |
| MAE (Mean Absolute Error) | 연속형 | 절대 오차 평균, 이상치에 덜 민감 |
| R² (결정계수) | 연속형 | 설명력 비율, 0~1 사이 |
| AUC‑ROC | 이진/다항 | 분류 모델의 판별력, 1에 가까울수록 우수 |
| Log‑Loss | 이진/다항 | 확률 예측 정확도, 낮을수록 좋음 |
Tip: 회귀모형을 선택할 때는 종속변수의 유형과 가정(정규성, 등분산성 등)을 먼저 검토하고, 그에 맞는 평가 지표를 사용한다.
구현 예시
1. R에서 선형 회귀 수행
# 데이터 준비
data(mtcars)
# 종속변수: mpg (연비), 독립변수: wt(중량), hp(마력)
model_lm <- lm(mpg ~ wt + hp, data = mtcars)
# 결과 요약
summary(model_lm)
# 예측
new_data <- data.frame(wt = c(2.5, 3.0), hp = c(110, 150))
pred <- predict(model_lm, newdata = new_data)
print(pred)
2. Python (scikit‑learn)에서 로지스틱 회귀 수행
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score, roc_auc_score
# 예시 데이터: Titanic (생존 여부)
df = pd.read_csv('titanic.csv')
X = df[['Age', 'Fare', 'Pclass']]
y = df['Survived']
# 전처리
X = X.fillna(X.mean())
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# 학습/검증 분할
X_train, X_test, y_train, y_test = train_test_split(
X_scaled, y, test_size=0.2, random_state=42)
# 모델 학습
logreg = LogisticRegression()
logreg.fit(X_train, y_train)
# 예측 및 평가
y_pred = logreg.predict(X_test)
print('Accuracy:', accuracy_score(y_test, y_pred))
print('AUC:', roc_auc_score(y_test, logreg.predict_proba(X_test)[:,1]))
참고 자료
- Montgomery, D. C., Peck, E. A., & Vining, G. G. (2022). Introduction to Linear Regression Analysis. Wiley.
- Hosmer, D. W., Lemeshow, S., & Sturdivant, R. X. (2019). Applied Logistic Regression. Wiley.
- Cox, D. R., & Snell, E. J. (1989). Analysis of Binary Data. Chapman & Hall.
- Python scikit‑learn 공식 문서 – https://scikit-learn.org/
- R Documentation –
lm,glm– https://www.r-project.org/
이 문서는 통계학·회귀분석 분야에서 종속변수의 정의, 유형, 전처리, 모델별 적용 방법 및 평가 지표 등을 포괄적으로 정리하였다. 연구·실무에서 적절한 종속변수 선택과 올바른 전처리는 모델의 신뢰성과 해석력을 크게 향상시킨다.
AI 생성 콘텐츠 안내
이 문서는 AI 모델(gpt-oss-120b)에 의해 생성된 콘텐츠입니다.
주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.