많은 선형 회귀 모델 중 규제가 적용되지 않은 단순 선형 회귀를 구현할 수 있는 클래스다.
말 그대로 최소제곱법을 활용해서 최적의 회귀계수값들을 구해준다. 최적의 회귀계수 값은 학습시키고 난 뒤의 coef_ 속성에 저장된다.
sklearn.linear_model.LinearRegression(fit_intercept=True, normalize=False)
- fit_intercept : 절편을 포함할 것인지 아닌지
- normalize : 회귀를 수행하기 전 입력 데이터를 정규화할 것인지
•
coef_ : fit() 메서드를 수행하고 난 뒤의 최적의 회귀계수이 배열의 형태로 저장.
•
intercept_ : 절편 값
선형 회귀 계수 계산은 피처의 상관관계에 큰 영향을 받는다. 따라서 분산이 커지고 오류에 민감해진다. 이런 문제를 ‘다중공선성’이라고 부른다. 일반적으로는 독립적인 중요한 변수들을 남기고 나머지 변수들을 제거하거나 규제를 적용하거나 주성분분석을 통해 차원 축소를 하여 해결한다.
보스턴 주택 가격 회귀 구현
사이킷런에 내장된 보스턴 주택 가격 데이터를 이용해보겠다.
아래는 피처에 대한 설명이다.
•
CRIM : 지역별 범죄 발생률
•
ZN : 25,000 평방피트를 초과하는 거주 지역의 비율
•
INDUS : 비상업 지역 넓이 비율
•
CHAS : 찰스강에 대한 더미 변수(강의 경계에 위치하면 1, 아니면 0)
•
NOX : 일산화질소 농도
•
RM : 거주할 수 있는 방 개수
•
AGE : 1940년 이전에 건축된 소유 주택의 비율
•
DIS : 5개 주요 고용센터까지의 가중 거리
•
RAD : 고속도로 접근 용이도
•
TAX : 10,000 달러당 재산세율
•
PTRATIO : 지역의 교사와 학생 수 비율
•
B : 지역의 흑인 거주 비율
•
LSTAT : 하위 계층의 비율
•
MEDV : 본인 소유의 주택 가격(중앙값)