본문 바로가기
ML & DL/혼자 공부하는 머신러닝+딥러닝

다항 회귀(Polynomial Regression)

by Glory_Choi 2022. 7. 27.
반응형

다항 회귀(Polynomial Regression)란?

비선형 데이터를 학습하기 위해서 선형 모델을 사용하는 기법이다. 단순 선형 회귀를 이용해 모든 데이터의 관계성을 직선으로 표현할 수는 없으므로 다항 회귀 또는 다중 선형 회귀등과 같은 조금 더 복잡한 회귀 모델이 때에 따라 최적의 회귀선을 나타내고는 한다.

 

https://glorychoi.tistory.com/entry/%EC%84%A0%ED%98%95-%ED%9A%8C%EA%B7%80-Linear-regression-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98

 

선형 회귀 (Linear regression) 알고리즘

선형 회귀 선형 회귀는 널리 사용되는 대표적인 회귀 알고리즘입니다. 비교적 간단하고 성능이 뛰어나기 때문에 맨 처음 배우는 머신 러닝 알고리즘 중 하나입니다. 특성이 하나인 경우 어떤 직

glorychoi.tistory.com

 

사이킷런 다항 회귀 구현

전에 그려보았던 산점도를 자세히 보면 일직선이라기 보다 왼쪽 위로 구부러진 곡선에 가깝습니다. 최적의 직선을 찾기보단 최적의 곡선을 찾아야 하므로 2차 방정식 그래프를 그려야 합니다.

 

때문에 길이를 제곱한 항이 훈련 세트에 추가 되어야 합니다. 넘파이를 사용하면 아주 간단히 만들 수 있습니다.

train_poly를 사용해서 선형 회귀 모델을 다시 훈련하겠습니다. 여기서 주목할 점은 2차 방정식 그래프를 찾기 위해 훈련 세트에 제곱 항을 추가 했지만, 타깃값은 그대로 사용한다는 것입니다.

훈련한 모델의 계수와 절편을 출력해보면 무게 = 1.01 * 길이 + 116.05로 잘 학습했습니다. 이런 방정식을 다항식이라 부르며 다항식을 사용한 선형 회귀를 다항 회귀라고 부릅니다.

 

다항 회귀 모델 산점도와 2차 방정식 그래프

 

모델 평가

훈련 세트와 테스트 세트의 평가 R스퀘어 점수를 평가해보니 약0.97과 0.98로 높아졌습니다. 하지만 여전히 테스트 세트의 점수가 조금 더 높습니다. 과소 적합이 아직 남아 있다는 것 입니다.

반응형