지난시간에 진행한 3개의 모델에 대한 하이퍼파라미터 튜닝을 진행한 후,

스태킹앙상블을 진행하였다.

 

 

< 지난 포스팅 >

https://jayindustry.tistory.com/41

 

[머신러닝/딥러닝] 회귀예측 11 - 머신러닝 모델학습함수와 메서드 (partial, trials_dataframe(), optuna, k-

오늘은 이번에 진행중인 회귀(Regressor)모델 학습시, 사용되었던 기법, 함수, 메서드 등의 개념정리를 해보려고 한다. < 지난 포스팅 > https://jayindustry.tistory.com/40 [머신러닝/딥러닝] 회귀예측 10 - 하

jayindustry.tistory.com

 

 

 

3개의 회귀모델, LightGBM, XGBoost, CatBoost에 대한 하이퍼파라미터 튜닝결과,

확연히 손실함수가 낮아진 것을 볼 수 있었다.

 

그래서 이 3개를 스태킹앙상블기법으로 모아 하나의 메타모델로 최종 학습/예측을 한다면

더 결과가 좋아지겠지 기대했다.

 

 

[ 코드 ]

 

옵튜나 + k fold를 재실행하여 best params를 구하려면 너무 오래걸리므로,

저번에 나온 결과값을 각각의 변수로 저장하여 파라미터를 셀프로 세팅한 모습이다.

 

 

 

각각을 검증한 결과이다.

그리고 바로 csv로 3개의 모델을 저장한 후, load하여 각각의 예측값들을

스태킹앙상블을 위한 학습데이터셋을 만들었다.

 

 

 

그리고 최종 메타모델 LGBM으로 검증한 결과..

 

 

[ 최종 결과 ]

 

이게뭐지..

CatBoost 단일모델로 진행한 결과와 똑같이나왔다.

결과가 좋아진것도 아니고.. 이유가 뭘까?

 

 

[ 고민 ]

 

- 사전에 예측한 3개의 모델 LGBM,XGB,Cat 중에 메타모델과 같은 LGBM이 있어서 그런가?

- 메타모델은 KNN과 같이 다른모델로 해야하나?

- 메타모델의 하이퍼파라미터 튜닝을 하지않아서 그런걸까?

 

다음에 더나은성능을 위해서

KNN이나 AdaBoost로 메타모델을 변경해보고

메타모델의 하이퍼파라미터 튜닝을 해보려고한다.

 

그래도 바뀌지 않거나 성능이 저하된다면 더 추가적인 고민+구글링을 해봐야겠다.

+ Recent posts