머신러닝 프로세스
데이터 수집 - 데이터 정리 - 테스트 데이터 셋(간직) - 모델 학습 - 모델테스트 - 모델배포

Linear Regression
가설 : 공부를 많이 하면 공부를 잘할 것이다.
y=wx+b
w가중치 y토익점수 x는 학습시간
최적의 직선구하기
예측값 - 실제값 = error, cost
y=wx
(예측값 -실제값)^2/N = cost
포물선 모양이 나옴
그래프상에서 비용이 제일 낮은 아래부분을 찾으면 된다.
경사하강법.
gradient Descent Algorithm 이용
잘 정리된 데이터 확보가 중요!
지도학습 vs 비지도 학습

분류모델
이산적으로 나눠질 수 있는 문제
밥값 많이 남성, 적게 여성
예측 모델
레이블 값들이 연속적인 문제
밥값이 많이 나올 수록 팁의 크기도 커짐

data set
train validation test
train : 참고서
val : 모의고사
test : 수능
공부를 잘 하게 된다면 error율이 떨어짐
test는 조금은 떨어지긴 함

과적합
Confusion Matrix
오차행렬을 기반으로 설명
예측값
TN FP
FN TP 실제값
성능지표
정밀도(스팸메일), 재현율(암환자)
F1 score
정밀도와 재현율의 조화
Scikit-learn
인기 있는 머신러닝 패키지
Liear Regression
선형회귀

Logistic Regression
x가 0, 1,2,3,4,5
6,7,8,9,10

이진분류로 사용하기 쉽지 않음
로지스틱 함수를 사용하여 로지스특 회귀 곡선으로 변환하여 이진 분류를 할 수 있음
sigmoid나 로지스틱이라고 함
0~1사이 값으로 변함

K-Nearest Neighbor
KNN
k=1
k=3
k=5
원을 그었을 때 어떤 카테고리가 더 많이 포함이 되어 있는지

Decision Tree
랜덤 포레스트, 앙상블
붓꽃분류

코딩

Random Forest
일련의 예측기로부터 예측을 수집하면 가장 좋은 모델보다 더 좋은 예측을 얻을 수 있음

Ensemble
여러개의 분류기를 생성하고 예측을 결합 함으로써 보다 정확한 예측을 도출하는 기법
약한 모델 여러 개를 조합하여 더 정확한 예측 방식, 적절한 하이퍼파라미터 튜닝이 중요
Boosting
이전 학습에 대하여 잘못 예측된 데이터에 가중치를 부여해 오차를 보완
XGBoost, LightGBM
순차적인 학습을 하며 weight를 부여해서 오차를 보완하므로 학습시간이 길 수 있음

Stacking
여러 개 모델이 예측한 결과 데이터를 기반으로 final_estimator 모델로 종합하여 예측 수행
과대적합 위험성 있음

Weighted Blending
각 모델의 예측값에 대하여 weight를 곱하여 최종 output계산
XGBoost

LightGBM


get.dumies ==> 원핫인코딩
범주형 데이터를 (ex 남자 여자) 1과 0으로 컴퓨터가 이해하기 쉽게 표현

train test 데이터셋 분할

데이터 정규화

값을 0~1사이로 바꾸어야 함


predict로 예측값 확인
오차행렬


정밀도 재현율 전부 합치고 확인


KNN


결정트리


앙상블 기법
랜덤포레스트


XGBoost


Lightgbm

트리를 늘리거나 하면 성능이 더 좋아질 수있음
Stacking
성능을 극으로 끌어올리나, 과대적합을 유발함

stack_model 사용할 모델
모은 결과를
rfc - 랜덤포레스트
로 분류를 하겠다.

Weighted Blending


'Tech Stack > AICE - Associate' 카테고리의 다른 글
| AICE - associate 실습1 (0) | 2024.01.24 |
|---|---|
| AICE - Associate - 7 딥러닝 모델링 (0) | 2024.01.19 |
| AICE - associate - 5 데이터 전처리 (0) | 2024.01.16 |
| AICE - associate - 4 pandas 2 (0) | 2024.01.15 |
| AICE - Associate - Python 기본 2 - pandas (1) | 2023.12.28 |