일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데이터베이스
- python
- MariaDB
- 파이썬
- 예측
- 시각화
- 회귀모델
- 데이터 분석
- sklearn
- 크롤링(crawling)
- keras
- Deep Learning
- pandas
- 머신러닝
- 훈련
- Database
- 정확도
- HeidiSQL
- 데이터전처리
- tensorflow
- 알고리즘기초
- 해석
- 딥러닝
- 데이터 가공
- python기초
- 데이터 수집
- DB
- SQL예제
- 데이터
- pythone
- Today
- Total
코딩헤딩
[ML(머신러닝)] KNN 회귀모델 -4 <회귀모델> 본문
<회귀모델의 종류>
- 선형회귀모델(직선)
- 다항회귀모델(곡선)
- 다중회귀모델(직선 여러 개)
- 릿지
- 라쏘
==> 회귀모델만
- 랜덤포레스트
- 그레디언트부스트
- 히스토그램그리디언트부스트
- XGBoost(별도 라이브러리), 기타 등등...
==> 회귀 분류 동시에 사용가능
- 주로 많이 사용되는 회귀모델 : 릿지, 히스토그램그레디언트부스트, XGBoost
<선형회귀모델(LR; Liner Regression Model)>
* 모델 라이브러리 불러들이기
from sklearn.linear_model import LinearRegression
* 모델생성하기
lr = LinearRegression()
lr
* 모델 훈련시키기
lr.fit(train_input, train_target)
* 훈련 정확도 및 테스트(검증) 정확도
train_r2 = lr.score(train_input, train_target)
test_r2 = lr.score(test_input, test_target)
print(f"훈련 : {train_r2} / 검증 : {test_r2}")
결과 : 훈련 : 0.9398463339976041 / 검증 : 0.8247503123313559
<해석>
- 결정계수 확인 결과 [훈련> 테스트] 이기에 과소적합은 일어나지 않으나, 두 계수의 차이가 0.12로 과대적합이 의심됨
임의 데이터로 예측하기
* 데이터 : 50
lr.predict([[50]])
결과 : array([1241.83860323])
=> KNN에서는 1033g으 예측했었음
* 추세선(예측선)을 그리기 위한 계수값 추출하기
lr.coef_, lr.intercept_
결과 : (array([39.01714496]), -709.0186449535477)
- 직선의 방정식 : y = a * x + b
- coaf_ : 기울기(계수) -> a
- intercept_ : 절편 -> b
추세선 그리기
### 훈련데이터 산정도
plt.scatter(train_input, train_target)
### 예측값 산정도
plt.scatter(50, 1241.839, marker="^")
### 추세선
plt.plot([15, 50], [lr.coef_ * 15 + lr.intercept_,
lr.coef_ * 50 + lr.intercept_])
plt.grid()
plt.show()
<해석>
- 임의 값 예측 시 KNN보다는 성능이 좋은 예측이 가능하며, 과적합이 발생하지 않는 일반화된 모델로 보이나,
y절편의 값이 음수로 예측 시 음수의 데이터가 예측 될 가능성이 있는 모데로 보임
- 종속변수 무게의 합은 0 이하로 나올 수 없기에 이상치를 예측할 수 있는 모델로 현재 사용하는 데이터를 예측하기에는 부적합한 모델로 여겨짐.
'머신러닝 | 딥러닝' 카테고리의 다른 글
[ML(머신러닝)] 다중회귀모델(Multiple Regression) (0) | 2023.12.29 |
---|---|
[ML(머신러닝)] KNN 회귀모델 -5 <다항회귀모델(곡선)> (0) | 2023.12.28 |
[ML(머신러닝)] KNN 회귀모델 -3 <하이퍼파라미터 튜닝> (0) | 2023.12.26 |
[ML(머신러닝)] KNN 회귀모델 -2 <절대평균오차(MAE)> (0) | 2023.12.24 |
[ML(머신러닝)] KNN 회귀모델 -1 (0) | 2023.12.23 |