Kaggle - PUBG Finish Placement Prediction 순위 예측 모델 개발 프로젝트
- 기계학습을 통한 매치 순위에 영향을 미치는 요인 파악
- 대회 당시(2018)년 리더보드 기준 상위 5% (76/1528) 이상의 성능을 가진 모델 개발
- 02/27 ~ 3/25
- 1주차(2/27~3/5) : 데이터 내 cheating 유저 파악 & EDA
- 2주차(3/6~3/12) : EDA 기반 Feature Engineering & Baseline 모델 생성, 세부적 분석 방법 조정
- 3주차(3/13~3/18) : 분석 계획에 따른 분석 모델 선정, 생성, 학습 및 고도화
- 4주차(3/19~3/25) : 분석 결과, 분석 방법, 분석 상의 한계점 및 개선사항 정리 후 보고서 작성
- Project description
Project outline, purpose, weekly plan, etc.
- Project process
Hypotheses, EDA, feature engineering, model selection, etc.
- Our strategy
Stretegies used to develop performance and save time & memory, etc.
- Result & Conclustion
Our rank in LB, MAE Most effective factors in predicting finish placement.
Baseline → Pre-processing(& Feature engineering) → Group place → Post-processing
- 메모리, 시간을 절약하기 위해 데이터 타입 변경
- killPlace 변수를 통해서 그룹 간의 순위 관계를 추론함.
높은 순위를 차지하기 위해서 유저들이 취하는 방법에는 크게 2가지가 있음.
1. 교전을 통해서 적을 제거하는 방법
2. 교전을 피하면서 오래 살아남는 방법
분석 결과, 높은 등수를 차지한 그룹은 교전을 피하는 그룹이 아니라 전투력이 높고 교전을 많이 진행한 그룹이었음을 확인할 수 있었음.
따라서, 매치 순위에 영향을 주는 요인은 그룹의 전투력이라고 할 수 있음.
Rank : 5 / 1528 (0.327%)
MAE : 0.01836
📂 Project
├── 📂 code
│ ├── Baseline.ipynb # Baseline model
│ ├── EDA.ipynb
│ ├── get_group_place_function.ipynb # Function for getting group places
│ ├── postprocessing.ipynb # Postprocessing predicted valuefrom continuous to discrete
│ └── LightGBM_final.ipynb # Final model
├── 📂 dataset
│ ├── train_sample.csv # train data sample
│ ├── test_sample.csv # test data sample
│ └── sampleSubmission_sample.csv # submission file sample
└── 📂 final
├── report.pptx
├── report.pdf
└── submission.csv # final submission file