Python 튜토리얼

Lv1 모델링 python 파이썬 train_test_split / LGBM (2)

2021.10.18 10:45 4,060 Views

안녕하세요. 👸🤴

이전시간에는 train_test_split() 으로 데이터셋을 split 하고 해당 데이터 셋을 이용해 모델을 학습하고 검증하는 방법에 대해 알아 보았습니다.


이번시간에는 거기에 더해 검증하는 평가 산식을 원하는 산식으로 설정하고, 모델이 학습과 검증을 진행하며 그 과정을 출력 할 수 있는 방법에 대해 알아보겠습니다.


학습에 사용 할 모델은 Light GBM 입니다.


✅Light GBM 복습 하러가기 ⏩ 개념 / 실습


Light GBM 모델을 선언 이후 학습을 위해서는 fit() 메소드를 사용합니다. fit () 메소드 내부에 있는 eval_metric 파라미터와, verbose 파라미터를 이용하면 평가 산식을 원하는 산식으로 설정하고, 모델이 학습과 검증을 진행하며 그 과정을 출력 할 수 있습니다.

eval_metric = "원하는 평가산식" 을 넣어주시면  학습을 진행하며 지정해주신 평가 산식과 검증 데이터 셋을 이용해 결과 값을 출력해줍니다.

또한  verbose = "10"  과 같이 파라미터를 지정해주면 n_estimators를 기준으로 10번 마다 결과 값을 출력 하게 됩니다.


-------------------------------------------------------------------------------------------------------------------------------------------

# LightGBM을 이용해 학습 및 검증 진행

from lightgbm import LGBMRegressor



model = LGBMRegressor()


#평가 산식을 AUC로 설정, n_estimators 기준 5번 마다 결과값 출력하게 모델 학습.

model.fit(train_x,train['category'], 

           eval_set = [(x_train,y_train),(x_valid,y_valid)],

          eval_metric = 'auc' ,verbose = 10)


output :

[5] valid_0's auc: 0.746995 valid_0's l2: 0.521992 valid_1's auc: 0.751573 valid_1's l2: 0.519615

[10] valid_0's auc: 0.776377 valid_0's l2: 0.455595 valid_1's auc: 0.779227 valid_1's l2: 0.451593

[15] valid_0's auc: 0.794128 valid_0's l2: 0.416586 valid_1's auc: 0.795274 valid_1's l2: 0.41187

[20] valid_0's auc: 0.807657 valid_0's l2: 0.391972 valid_1's auc: 0.809454 valid_1's l2: 0.386322

...

[90] valid_0's auc: 0.882936 valid_0's l2: 0.299729 valid_1's auc: 0.885849 valid_1's l2: 0.294157

[95] valid_0's auc: 0.885144 valid_0's l2: 0.296722 valid_1's auc: 0.888073 valid_1's l2: 0.291004

[100] valid_0's auc: 0.887198 valid_0's l2: 0.293814 valid_1's auc: 0.890417 valid_1's l2: 0.288158

-------------------------------------------------------------------------------------------------------------------------------------------


[Colab 실습 링크]


↩️ 오늘의 파이썬 리스트


#데이콘_101 #AI #머신러닝 #딥러닝 #파이썬 #파이선 #데이터분석 #데이터사이언티스트 #코랩 #Python #colab #kaggle #pandas #numpy #sckit-learn  # train_test_split()


로그인이 필요합니다
0 / 1000
왼쪽눈썹왁싱
2021.11.03 12:14

액세스 요청이 거절됩니다.

moran
2022.01.04 15:55

dbnoid
2022.01.20 13:32

천상천하유아독존
2022.03.10 22:45

분류 문제인데 원래 LGBMRegressor()를 쓰는건가요?

acebed
2022.03.11 14:52

done

비회원
2022.04.07 12:01

DACON.NPC
2023.02.14 10:33

삭제된 댓글입니다

겔겔
2022.08.15 22:08

기초 잡는데 도움이 많이 되었습니다. 감사합니다

highllight
2023.02.12 21:45