2. 1
2
3
STEP 1
STEP 2
STEP 3
https://dacon.io 2
데이터 전처리 & EDA
모델 구축 & 검증
결과 및 결언
데이터 전처리
• LightGBM
• K fold & Random Seed
• 예측 방법
• 데이터 전처리 결과
• 모델 구축 결과
• NAN, Object 데이터 처리
• PCA
• 표준화-Min-Max scaling
모델구축&검증
결과 및 결언
목차 데이터 다운로드
3. https://dacon.io 3
1. 데이터 전처리
▪ NAN, Object data 처리
- Dataset에 문자열과 NA 값이 포함되어 있음
- Dacon에서 제공한 data_loader_v2 를 사용하여 NA와 문자열 값을 0으로 대체
▪ Principal Component Analysis(PCA)
▪ 표준화 Min-Max Scaling
- Feature 간에 correlation 결과, high correlation feature 들이 많이 존재하였음
- Feature간 correlation 이 높은 것들을 선별하여 feature 삭제
- 데이터가 가진 feature의 스케일이 차이가 나는 경우 Feature 를 정규화 함
(데이터의 중요도를 동일하게 반영되도록 하기 위함)
데이터 다운로드
4. https://dacon.io 4
2. 모델 구축 및 검증
▪ 모델 선택
- 모델에 대해 각각 실험하여 성능 비교
- light GBM이 가장 좋은 성능을 보여 lightGBM을 모델로 선택
Random Forest XGBoost lightGBM
데이터 다운로드
5. https://dacon.io 5
2. 모델 구축 및 검증
- 하이퍼 파라미터 튜닝을 위해 K-fold 를 사용해 cross validation(CV) 함
- CV를 가장 좋게 만드는 하이퍼 파라미터를 선택
: n_estimator(Early stopping) 값을 작게 하여 overfitting 을 방지
: min_child_weight 의 값이 낮으면 over-fitting이 되어 CV 를 통해 값을 튜닝하여
over-fitting을 방지
: colsample_bytree 훈련 데이터에서 feature를 샘플링해주는 비율로, feature 선택
- Data split을 robust 하게 해주기위해 3개의 random seed를 사용
- 총 12개의 모델 생성
▪ 모델 최적화
데이터 다운로드
6. https://dacon.io 6
2. 모델 구축 및 검증
- 12개의 모델을 통해 test를 예측
- Hard voting 방식과 Soft voting인 Probability를 평균내는 방법을 사용하여 모델 예측
Hard voting Soft voting
▪ 모델 예측
데이터 다운로드
7. https://dacon.io 7
3. 결과 및 결언
▪ 데이터 전처리
- PCA, Feature 정규화, Min-Max Scaling은 성능 향상에 도움이 되지 않음
- Object와 NAN 값을 0으로 바꾸어 주는 전처리만 진행
▪ 모델 구축 및 검증
- Lgbm 모델 선택
: Random Forest, Xgboost, LightGBM 모델 비교 결과 lgbm의 성능이 가장 좋았음
- K-fold & Random seed를 사용한 모델 하이퍼 파라미터 튜닝
: Robust 한 모델을 만들기 위해 4Kfold * 3seed 총 12개의 모델을 만듬
: Early stopping 값을 작게 설정하여 over-fitting 방지
: min_child_weight 값을 CV를 통해 최적화 하여 over-fitting 방지
- Soft-voting 예측 방법 선택
: 예측 시 Hard-voting 방식과 Probability를 평균내는 Soft-voting 방식을 실험
: evaluation metric이 log-loss였기 때문에 probability를 평균내는 방식의 성능이 좋았음
- 12개의 모델의 예측을 평균 하는 방식으로 최종 결과물 제출
데이터 다운로드