[PYTHON - 머신러닝_캐글_모델]★선형 회귀 모델★
2023. 1. 31. 16:45
728x90
반응형
1. 선형 회귀 모델(Linear Regression)
https://knowallworld.tistory.com/371
==> 선형 회귀식을 활용한 모델이다.
==> 선형 회귀 모델을 훈련한다는 것은 훈련 데이터에 잘 맞는 모델 파라미터(회귀계수)를 찾는 것이다.
==> 여러가지 데이터를 연속형 변수인 목표 변수를 예측해 내는 것이 목적이다.
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
np.random.seed(0) # 시드값 고정
w0 = 5 # y 절편
w1 = 2 # 회귀 계수(쉐타)
noise = np.random.randn(100,1) # 노이즈 , 표준 정규분포를 따르는 데이터 100개를 생성하는 코드
x = 4 * np.random.rand(100, 1) # 0~4 사이 실숫값 100개 생성
y = w1 *x + w0 + noise # y = 2x + 5 에 근사하는 데이터
plt.scatter(x,y)
from sklearn.linear_model import LinearRegression
linear_reg_model = LinearRegression() # 선형 회귀 모델
linear_reg_model.fit(x, y) # 모델 훈련
print('y절편(w0) :' , linear_reg_model.intercept_)
print('회귀계수(w1) : ' , linear_reg_model.coef_)
y절편값은 : intercept_
회귀계수는 : coef_
실제 y절편값 : 5 , 회귀계수값: 2 ==> 근사하게 예측하였다.
y_pred = linear_reg_model.predict(x) # 예측
plt.scatter(x,y)
plt.plot(x,y_pred) # 선형 회귀선 그리기
2. 로지스틱 선형 회귀 모델(Logistic Regression)
https://knowallworld.tistory.com/372
==> 선형 회귀 방식을 응용해 분류에 적용한 모델
==> 스팸 메일일 확률을 구하는 이진 분류 문제에 로지스틱 회귀를 사용할 수 있다.
==> 로지스틱 회귀는 시그모이드 함수를 활용해 타깃값에 포함될 확률을 예측한다.
x = np.arange(-6,6,.1)
y = 1/ (1 + np.exp(-x))
plt.plot(x,y)
이진분류 문제에선 시그모이드 값(확률)이 0.5 보다 작으면 0(음성) , 0.5보다 크면 1(양성) 이라고 예측한다.
출처 : 머신러닝·딥러닝 문제해결 전략
(Golden Rabbit , 저자 : 신백균)
※혼자 공부용
728x90
반응형
'머신러닝 > 캐글_머신러닝_이론' 카테고리의 다른 글
[PYTHON - 머신러닝_캐글_모델]★XGBoost★LightGBM (0) | 2023.02.01 |
---|---|
[PYTHON - 머신러닝_캐글_모델]★결정 트리★엔트로피★앙상블 학습★보팅★배깅★부스팅★랜덤포레스트 (0) | 2023.02.01 |
[PYTHON - 머신러닝_캐글_교차검증]★K-폴드 교차검증★충화 K-폴드 교차검증★folds.split(data)★ (1) | 2023.01.31 |
[PYTHON - 머신러닝_캐글_피처 스케일링]★min-max 정규화★표준화(Standardization) (0) | 2023.01.31 |
[PYTHON - 머신러닝_캐글_데이터 인코딩]★LabelEncoder★One-Hot-Encoder (0) | 2023.01.31 |