축구선수의 유망 여부 예측 AI 해커톤

알고리즘 | 정형 | 분류 | 스포츠 | Macro f1 score

  • moneyIcon 상금 : 인증서
  • 387명 마감

 

[Private 5위] Decision Tree 의 이중 앙상블

2022.12.02 14:26 3,738 조회 language

Random Forest기법은 Decision Tree에 Bootstrap, Random Feature Selection 적용해 Ensemble한 것입니다.

주어진 데이터는 Validation data가 별도로 주어지지 않아, Train data를 split 하여 validation으로 사용하였고, 이에 따른 편향을 줄이기 위해 앙상블을 이중으로 적용했습니다. 또한, 경험적으로 Position 변수의 변수중요도가 높지 않음에도 불구하고, 위의 CART 알고리즘에 따라 지나치게 많은 연산시간이 소요되어 변수에서 제외하였습니다.

Sklearn 패키지의 Decision Tree는 카테고리 데이터를 다루지 못하여, 카테고리 데이터의 경우 모든 조합을 고려하는 CART의 원래적 방법론을 직접 코딩하였습니다. 그리고 이상의 로직 - 앙상블마다 validation data를 다르게 split하고, Random Feature selection과 Bootstrap을 수행하도록 하는 -을 Ensemble로 구현한 뒤, 이를 여러 개 형성한 모델들을 다시 묶었습니다. 해당 로직은 주피터 노트북의 Double Ensemble 파트에 수록하였습니다.

대회에서 제출한 예측 결과물은 max_depth(의사결정 나무의 최대깊이) = 4, p(변수 갯수 중 Random Feature Selection에서 취할 변수의 비율) = 0.4, B(개별 앙상블에서 iterate 할 의사결정나무의 수)=101로 5개의 앙상블 모델을 이중 앙상블한 결과입니다. 노트북 하단의 Reproduction의 결과가 그것입니다.

코드