티스토리 뷰

다항 회귀로 모델을 훈련시켰지만 과소적합 문제가 일어나는 경우가 있다.

다중 회귀 : 여러 개의 특성을 사용한 선형 회귀.

 

선형 회귀는 특성이 많을수록 좋은 효과를 내기에 여러 개의 특성을 사용한 다중 회귀가 유용하다.

1개의 특성을 사용한 선형 회귀 모델은 직선이나 곡선(다항 회귀)이며, 2개 이상의 특성을 사용한 선형 회귀 모델은 3차원 공간, 평면(타깃 = a x 특성1 + b x  특성2 + ... + 절편)이 된다.

 

중요한 점은 선형 회귀가 복잡하거나 단순하다고 성능이 무조건 낮은 것이 아니다.

특성이 많은 고차원에선 선형 회귀가 매우 복잡한 모델을 표현할 수 있다.

 

기존의 특성을 가지고 연산을 통해 새로운 특성을 뽑는 작업을 특성 공학이라고 한다.

 

 

특성 공학은 데이터가 많기 때문에 복사 붙여넣기가 까다롭다. 그래서 판다스, 데이터 분석 라이브러리 사용한다.

여기서 판다스의 핵심 데이터 구조를 데이터프레임이라고 한다.

 

사이킷런은 특성을 만들거나 전처리하기 위한 다양한 클래스를 제공하는데 이런 클래스를 변환기라고 한다.

PolynomialFeatures 클래스는 기본적으로 각 특성을 제곱한 항을 추가하고 특성끼리 서로 곱한 항을 추가한다.

여기서 1이 추가되었는데, 무게 = a x 길이 + b x 높이 + c x 두께 + d x 1라는 식이 된다.

사실 선형 방정식의 절편을 항상 값이 1인 특성과 곱해지는 계수라고 볼 수 있기 때문에 1이 추가된 것이다.

include_bias=False를 통해 절편 값을 없앨 수 있지만 사이킷런 모델은 자동으로 특성에 추가된 절편 항을 무시한다.

 

 

위 방식으로 적용하게 되면~!

 

다중 회귀 모델을 훈련하는 것은 선형 회귀 모델을 훈련하는 것과 같다. 그렇기에 선형 회귀 모델을 쓰는 것이다.

5제곱 특성까지 늘리게 되면 특성 수가 과하게 많아지게 되는데 훈련 세트에만 과하게 적용이 되고 테스트 세트에는 적용하기 형편없어 지게 되므로 과대 적합이 일어나게 된다.

 

 

규제머신러닝 모델이 훈련 세트를 너무 과도하게 학습하지 못하도록 훼방하는 것을 말한다.

즉 모델이 훈련 세트에 과대적합되지 않도록 만드는데, 선형 회귀 모델의 경우 특성에 곱해지는 계수의 크기를 작게 만드는 일이다.

 

 

표준점수 적용, StandardScaler 클래스.

스케일이 다양한 특성이 정규화 되지 않으면 계수 값도 차이나게 되므로 규제를 적용하기 전에 정규화를 함.

 

선형 회귀 모델에 규제를 추가한 모델을 릿지, 라쏘라고 한다. 두 모델은 규제를 가하는 방법이 다른데,

릿지의 경우 계수를 제곱한 값을 기준으로 규제를 적용하고, 라쏘는 계수의 절대값을 기준으로 규제를 적용한다.

일반적으로 릿지를 조금 더 선호하며, 두 알고리즘 모두 계수의 크기를 줄이지만 라쏘는 0으로 만들 수 있다.

 

정상!

 

릿지, 라쏘 모델을 사용할 때 규제의 양을 임의로 조절할 수 있다. 모델 객체를 만들 때 alpha 매개변수로 규제의 강도를 조절한다. alpha 값이 크면 규제 강도가 세지므로 계수 값을 더 줄이고 조금 더 과소적합되도록 유도한다. 반대로 alpha값이 작으면 계수를 줄이는 역할이 줄어드니 과대적합될 가능성이 높아진다.

 

이러한 alpha 값을 모델이 학습하는 값이 아닌 사전에 우리가 지정하는 값인데 이러한 파라미터를, 하이퍼파라미터라고 한다.

 

alpha => log10에서 0이 되는 값은 1, alpha = 1일 때 최적의 결정계수라는 것을 알 수 있다. 실제로도 그래프를 통해 과소, 과대적합이 일어나지 않고 값의 차이가 적은 값이 alpha=1일 때이다.

'머신러닝' 카테고리의 다른 글

8. 확률적 경사 하강법  (0) 2022.04.20
7. 로지스틱 회귀  (0) 2022.04.18
5. 선형 회귀  (0) 2022.04.17
4. k - 최근접 이웃 회귀  (0) 2022.04.16
3. 데이터 전처리  (0) 2022.04.16
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함