1. 선형회귀
- 단순 선형회귀와 다중 선형회귀가 있지만 흔히 사용하는 것은 다중 선형회귀입니다.
- Feature가 한 개인 경우가 드물기 때문에 보통 feature가 두 개 이상인 다중 선형회귀를 만들게 됩니다.
2. 비용함수
- 데이터와 모델 간의 거리를 계산합니다.
- 비용함수(cost function) 또는 손실함수, 목적함수라 부르기도 합니다.
- 오차(error)를 계산합니다. (실제 값과 예측값의 차이)
- 평균 제곱 오차를 최소화하는 파라미터를 찾습니다.
3. 경사하강법
- 오차를 찾아 나가는 방식
- 비용함수의 기울기 절대값이 가장 작은 지점을 찾아서 오차가 작은 모델을 만듭니다.
실행 완료
1) 데이터 불러오기
실행 완료
[3]:
((353, 10), (89, 10), (353,), (89,))
2) 선형 회귀
실행 완료
[5]:
2707.6236708320466
이번 시간 정리
1. 릿지 회귀
- 오버피팅 문제로 규제(regularization)를 적용한 모델
- 규제 방식: L2 규제
- 파라미터(alpha) 값을 활용해 조절
- alpha 값이 커질수록 회귀 계수 값을 작게 만듦
*규제를 통해서 모델의 성능을 올릴 수 있습니다.
아래의 코드 실행 버튼을 눌러 실습을 진행해 보세요!
1) 릿지 회귀
실행 완료
[11]:
3522.1129142470336
실행 완료
[10]:
alpha1agesexbmibps1s2s3s4s5s6
-14.226237 |
-252.596638 |
478.237599 |
374.575253 |
-1027.276426 |
669.703861 |
228.639350 |
209.055969 |
787.865881 |
51.760485 |
코드 실행
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_13/134143487.py in <module>
1 # 릿지 회귀 (alpha=10)
----> 2 model = Ridge(alpha=10)
3 model.fit(X_train, y_train)
4 pred = model.predict(X_test)
5 mean_squared_error(y_test, pred)
NameError: name 'Ridge' is not defined
코드 실행
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_13/2718849389.py in <module>
1 # 회귀 계수 (alpha 10)
----> 2 coef['alpha10'] = model.coef_
3 coef
NameError: name 'coef' is not defined
코드 실행
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_13/425803006.py in <module>
1 # 릿지 회귀 (alpha=0.05)
----> 2 model = Ridge(alpha=0.05)
3 model.fit(X_train, y_train)
4 pred = model.predict(X_test)
5 mean_squared_error(y_test, pred)
NameError: name 'Ridge' is not defined
코드 실행
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
/tmp/ipykernel_13/337844646.py in <module>
1 # 회귀 계수 (alpha 0.05)
----> 2 coef['alpha0.05'] = model.coef_
3 coef
NameError: name 'coef' is not defined
'언어 > 파이썬' 카테고리의 다른 글
머신러닝with파이썬6강(3)_랜덤포레스트&XGBoost, 하이퍼파라미터 튜닝 (0) | 2024.03.15 |
---|---|
머신러닝with파이썬6강(2)_라쏘회귀,엘라스틱넷회귀 (2) | 2024.03.14 |
머신러닝with파이썬5강(3)_분류모델평가, 회귀모델평가 (1) | 2024.03.12 |
머신러닝with파이썬5강(2)_XGBoost, 교차검증 (0) | 2024.03.11 |
머신러닝with파이썬5강(1)_의사결정나무, 랜덤포레스트 (0) | 2024.03.10 |