- 불필요한 x (변수, feature) 의 가중치를 규제를 통해 조절해주어 성능을 향상시키는 방법입니다!
- 중요한 x 만 가중치를 주도록 하게 됩니다.
- 학습 성능 : model.score(x_train, y_train)
- 평가 성능 : model.score(x_test, y_test)
Linear Regression
- x 값이 많아지면 모델이 복잡해져서 학습성능은 높으나 평가성능은 낮은 과적합이 발생할 수 있다.
Ridge, RidgeCV
- Linear Regression의 과적합을 막기 위해 가중치의 크기를 줄이면서 제어 가능
- 줄이는 방법은 알파값을 조절, 불필요한 가중치를 0으로 바꾸지 않음.
- RidgeCV를 통해 최선의 알파값을 찾아서 과적합을 줄여서 평가성능을 높임
Lasso, LassoCV
- 필요없는 가중치의 경우에 가중치를 0으로 바꿔서 제거
- LassoCV를 통해 최선의 알파값을 찾아서 과적합을 줄여서 평가성능을 높임
Elasticnet, ElasticnetCV
- Ridge 와 Lasso 둘다 사용하는 하이브리드형
- model.l1_ratio_ : l1, l2 규제의 비율
- model.alpha_ : 알파 값
가중치 시각화
plt.figure(figsize=(16, 8))
plt.bar(x=range(1, 501), height=model.coef_)
plt.show()
'Experience > - KT AIVLE School' 카테고리의 다른 글
KT AIVLE School 4주차 정리 - 회귀, 분류 모델 선택 방법 (2) | 2023.03.06 |
---|---|
KT AIVLE School 5주차 정리 - Keras (Functional) (0) | 2023.03.03 |
KT AIVLE School 5주차 정리 - Keras (Sequential) (0) | 2023.02.28 |
KT AIVLE School 4주차 정리 - 앙상블(Ensenble) (0) | 2023.02.27 |
KT AIVLE School 4주차 정리 - 지도 학습 (0) | 2023.02.21 |
KT AIVLE School 3주차 - 알고리즘 스터디 기록 (0) | 2023.02.19 |
댓글