Research Notes

[R] Data Mining: Multiple Linear Regression 본문

Programming Language/R

[R] Data Mining: Multiple Linear Regression

jiachoi 2023. 7. 3. 11:50

1. 데이터 마이닝 기법

▶ 지도학습(정답이 있음)

- 예측 : 종속변수가 continuous(연속형)인 값.

방법으로는 회귀분석, 선형모형, 비선형모형 등이 존재. (이번 글에서는 지도학습-예측-회귀분석- 다중회귀분석을 공부.)

(ex. 자동차의 연비, 야구선수의 연봉, 주식변동, 수질오염 등)

- 분류 : 종속변수가 categorical(범주형)인 것들

방법으로는 의사결정나무, 서포트벡터머신, 판별분석, 로지스틱회귀모형 등이 존재.

(ex. 대출심사, 신용등급, 고객분류, 품종분류 등)

▶ 비지도학습(정답이 없음)

- 군집 : 주어진 속성으로 군집화

- 연관규칙 : 변수들간의 연관관계를 도출.

 

2. 다중회귀분석(Multiple Linear Regression)

- 종속변수 Y를 설명하는 독립변수가 여러개인 것.

1) R을 시작하기 전에

# set working directory ; R프로그램 실행 이전 작업 디렉토리를 필수적으로 설정. 
setwd("/Users/choijia/postech_ai/ML/week9-1")

# autompg data ; 데이터 불러들이기 
car<-read.csv("autompg.csv") # read.csv로 파일을 연다. 데이터의 이름을 car로 지정.  
head(car) # car데이터를 6개 미리보기 
str(car)
attach(car)

2) 전체변수를 모두 포함한 다중회귀분석

# 다중회귀분석 : 1st full model (전체 변수를 모두 포함한 회귀식)
r1<-lm(mpg ~ disp+hp+wt+accler, data=car) 
   # lm : linear regression, lm(y변수 ~ x1+x2+x3, data=)
summary(r1)

- Residuals : 잔차(오차)에 대한 기술통계치

- Coefficient : 회귀계수

--> 선형회귀식 도출 : mpg = 40.88 - 0.011disp + 0.0048hp-0.0061wt + 0.17accler

- Multiple-Rsquared : 결정계수 (변수들의 설명력)

3) 데이터 탐색을 위한 다중회귀모형 (그래프 그리기)

# pariwise plot - Explanatory Data Analysis
var1<-c("mpg","disp","hp","wt", "accler" )
pairs(car[var1], main ="Autompg",cex=1, col=as.integer(car$cyl))

종속변수와 독립변수간의 관계를 볼 수 있음.

 

3. 다중회귀분석 - 변수선택방법

* 변수선택방법 - 다수의 독립변수들이 있을 때의 최종모형

(1) 전진선택법(forward selection) : 독립변수 중 종속변수에 가장 큰 영향을 주는 변수부터 모형에 포함

(2) 후진제거법(backward elimination) : 독립변수를 모두 포함한 모형에서 가장 영향이 적은 변수부터 제거

(3) 단계별방법(stepwise method) : 전진선택법에 의한 변수 추가, 변수 추가시 기존 변수의 중요도가 정해진 유의수준에 포함되지 않으면 앞에서 들어간 변수도 다시 제거

# 2rd model using variable selection method : 단계별 선택방법에 의한 회귀모형
# step(r1, direction="forward") # 전진선택법
# step(r1, direction="backward") # 후진제거법 
# stepwise selection # 단계별 방법 
step(r1, direction="both") 
#step(lm(mpg ~ disp+hp+wt+accler, data=car), direction="both")

# final multiple regression
r2<-lm(mpg ~ disp+wt+accler, data=car)
summary(r2)
# residual diagnostic plot : 회귀분석의 가정과 진단 
layout(matrix(c(1,2,3,4),2,2)) # optional 4 graphs/page 
plot(r2)

 

4. 다중회귀분석 - 탐색과 진단

* 다중공선성(Multicollinearity) : 독립변수들 사이에 상관관계가 있는 현상, 다중공산성이 존재하는 경우 회귀계수 해석 불가.

- 다중공선성의 척도

= 분산팽창계수 : 다중공선성의 척도(VIF가 10이상이면 다중공선성을 고려)

'Programming Language > R' 카테고리의 다른 글

[R] Support Vector Machine (SVM)  (0) 2023.07.03
[R] Discriminant Analysis  (0) 2023.07.03
[R] K-Nearest Neighbor (KNN)  (0) 2023.07.03
[R] Data Mining: Classification Rules and Overfitting  (0) 2023.07.03