노력에는 지름길이 없으니까요

4.2 다중선형회귀 본문

통계학

4.2 다중선형회귀

데건 2024. 8. 5. 11:42
728x90

두개 이상의 변수에 의한 결과를 예측

일반적으로 많이 사용되는 선형회귀가 이쪽에 가까움

 

 다중선형회귀

두 개 이상의 독립 변수(X1, X2, ..., Xn)와 하나의 종속 변수(Y) 간의 관계를 모델링.

공간적으로 확장이 됨! -> 직선보다 평면으로 생각

 

☑️ 회귀식

Y = β0 + β1X1 + β2X2 + ... + βnXn

☑️ 특징

여러 독립 변수의 변화를 고려하여 종속 변수를 설명하고 예측

종속변수에 영향을 미치는 여러 독립변수가 있을 때 사용합니다.

여러 변수의 영향을 동시에 분석할 수 있습니다.

변수들 간의 다중공선성 문제가 발생할 수 있습니다.

 

https://young-1-2.tistory.com/162

 

다중공선성이란?

다중공선성이란?다중공선성(Multicollinearity)은 회귀분석에서 독립 변수들 간에 높은 상관관계가 있는 경우를 말합니다.이는 회귀분석 모델의 성능과 해석에 여러 가지 문제를 일으킬 수 있습니다

young-1-2.tistory.com

 

 

두 개 이상의 독립 변수와 종속변수와의 관계를 분석 및 예측

  • 다양한 광고비(TV, Radio, Newspaper)과 매출 간의 관계 분석.
  • 현재의 광고비(TV, Radio, Newspaper)를 바탕으로 예상되는 매출을 예측 가능.

# 예시 데이터 생성
data = {'TV': np.random.rand(100) * 100,
        'Radio': np.random.rand(100) * 50,
        'Newspaper': np.random.rand(100) * 30,
        'Sales': np.random.rand(100) * 100}
df = pd.DataFrame(data)

# 독립 변수(X)와 종속 변수(Y) 설정
X = df[['TV', 'Radio', 'Newspaper']]
y = df['Sales']

# 데이터 분할
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 다중선형회귀 모델 생성 및 훈련
model = LinearRegression()
model.fit(X_train, y_train)

# 예측
y_pred = model.predict(X_test)

# 회귀 계수 및 절편 출력
print("회귀 계수:", model.coef_)
print("절편:", model.intercept_)

# 모델 평가
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)
print("평균 제곱 오차(MSE):", mse)
print("결정 계수(R2):", r2)

 

>회귀 계수: [-0.02208636 -0.04524956  0.36955755]
절편: 47.47458066489462

평균 제곱 오차(MSE): 953.8458662397383
결정 계수(R2): -0.14044120780448188

 

728x90
반응형

'통계학' 카테고리의 다른 글

4.4 다항회귀, 스플라인 회귀  (0) 2024.08.05
4.3 범주형 변수  (0) 2024.08.05
다중공선성이란?  (0) 2024.08.05
4.1 단순선형회귀  (0) 2024.08.05
3.6 제 1종 오류와 제 2종 오류  (0) 2024.08.02