일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데이터베이스
- 데이터 분석
- 데이터 가공
- 데이터
- 시각화
- 훈련
- pythone
- tensorflow
- 파이썬
- 데이터 수집
- 정확도
- 알고리즘기초
- keras
- 머신러닝
- Deep Learning
- SQL예제
- Database
- 회귀모델
- HeidiSQL
- python
- pandas
- python기초
- MariaDB
- sklearn
- 크롤링(crawling)
- 해석
- 딥러닝
- 선형회기모델
- 예측
- 데이터전처리
- Today
- Total
코딩헤딩
[ML(머신러닝)] 다중회귀모델(Multiple Regression) 본문
<다중회귀모델(Multiple Regression)>
- 여러 개의 특성을 사용한 회귀모델
- 특성이 많을수록 복잡도가 증가됨, (훈련시간이 오래 걸림, 시간 성능에 따라 빠를 수도 있음
- 다중회계모델 공식
=> y = a*x1 + b*2 + c*3 + ... + y절편
* 훈련 정확도 및 검증(test) 정확도 확인해 보기
1. 독립변수 생성하기
- 데이터프레임의 특성 중에 독립변수로 사용하 특성들을 2차원의 리스트 또는 배열 형태로 만들어주어야 함.
perch_full = df.to_numpy()
perch_full.shape
2. 종속변수 생성하기
import numpy as np
perch_weight = np.array(
[데이터 넣을 곳]
)
perch_weight.shape
**독립변수와 종속변수의 개수는 같아야 한다.
3. 훈련 및 테스트 데이터로 분류하기
from sklearn.model_selection import train_test_split
train_input, test_input, train_target, test_target = train_test_split(perch_full,
perch_weight,
test_size=0.3,
random_state=42)
print(f"{train_input.shape} / {train_target.shape}")
print(f"{test_input.shape} / {test_target.shape}")
- 분류기준 : 테스트 데이터를 30%로, 랜덤규칙은 42번
4. 모델생성하기
from sklearn.linear_model import LinearRegression
lr = LinearRegression()
lr
5. 모델 훈련시키기
lr.fit(train_input, train_target)
6. 훈련 정확도 및 검증(test) 정확도 확인하기
train_r2 = lr.score(train_input, train_target)
test_r2 = lr.score(test_input, test_target)
train_r2, test_r2
* 과적합 여부 파악하기
<해석>
훈련과 검증(테스트) 결정계수의 결과로 볼 때 과소적합은 발생하지 않았으며,
또한, 0.07~0.08 정도로 과대적합 또한 일어나지 않은 일반화된 모델로 볼 수 있음.
- 다만, 검증(테스트) 정확도가 0.8대에서 0.9대로 올릴 수 없을지 고민해 본다.
- 특성공학을 적용하여 특성 늘리는 방법으로 집중도를 강화하는 방식을 사용 해서 성능 향상이 되는지 확인
<특성을 생성하는 라이브러리>
- 사용 패키지 : sklearn.preprocessing
- 사용 클래스 : PolynomalFeatures(변환기라고 보통 칭함)
- 사용함수 : fit(훈련 독립변수에서 생성할 특성의 패턴 찾기), transform(찾은 패턴으로 특성 생성하기)
- 종속변수는 사용되지 않는다.
'머신러닝 | 딥러닝' 카테고리의 다른 글
[ML(머신러닝)] 다중회귀모델 3 (규제, 릿지, 라쏘) (0) | 2023.12.31 |
---|---|
[ML(머신러닝)] 다중회귀모델(Multiple Regression) 2 (1) | 2023.12.30 |
[ML(머신러닝)] KNN 회귀모델 -5 <다항회귀모델(곡선)> (0) | 2023.12.28 |
[ML(머신러닝)] KNN 회귀모델 -4 <회귀모델> (1) | 2023.12.27 |
[ML(머신러닝)] KNN 회귀모델 -3 <하이퍼파라미터 튜닝> (0) | 2023.12.26 |