관리 메뉴

DeseoDeSeo

[ Machine Learning ] ex06_타이타닉실습_앙상블모델 본문

Python

[ Machine Learning ] ex06_타이타닉실습_앙상블모델

deseodeseo 2023. 9. 5. 15:47

Ensemble ( 앙상블 )

 : 여러개의 모델이 예측한 값을 결합하여 정확한 최종 예측을 도출하는 기법

  -> 한 명의 전문가보다 여러명의 집단지성을 이용하여 문제를 해결하는 방식.

 

1. 전처리된 파일 불러오기
import pandas as pd
# 같은 위치에 있으므로 파일명만 집어넣으면 된다.
x_train = pd.read_csv("x_train.csv")
y_train = pd.read_csv("y_train.csv")
x_test = pd.read_csv("x_test.csv")
x_train.shape, y_train.shape, x_test.shape

2. 앙상블 모델 사용하기
  • 머신러닝에서 성능이 좋은 모델
  • 여러개의 DecisionTree를 사용하는 모델
 2.1 RandomForest모델 사용
from sklearn.ensemble import RandomForestClassifier

< 모델 생성 >

forest_model = RandomForestClassifier()
2.2 교차 검증
from sklearn.model_selection import cross_val_score
cross_val_score(forest_model, x_train, y_train, cv=5).mean()

3.학습
forest_model.fit(x_train, y_train)
import warnings
warnings.filterwarnings('ignore')
# 워닝을 없앰.

 

4. 평가
# 학습한 모델로 예측
pred = forest_model.predict(x_test)
# 평가 결과 답안지 불러오기.
sub =pd.read_csv('./data/titanic/gender_submission.csv')
# 평가 결과를 답안지에 예측한 값 넣기
sub['Survived'] =pred
# 예측한 값 내보내기 -> kaggle
sub.to_csv('xx_submission03.csv',index=False)