영국항공 예약 데이터셋(50,000건)을 활용해 랜덤 포레스트 분류 모델을 구축하고 그리드 서치로 하이퍼파라미터를 튜닝하는 과정을 설명한다. SMOTE로 클래스 불균형을 처리하고 튜닝 전후 정밀도·재현율·F1 스코어 변화를 수치로 비교한다.
핵심 포인트- SMOTE 적용 순서가 중요하다 — 데이터 분할 전에 적용하면 테스트 데이터에 합성 데이터가 섞여 데이터 누수가 발생한다.
- 초기 모델은 정확도 84%이지만 재현율 23%, 정밀도 42%로 불균형 클래스를 제대로 포착하지 못한다.
- 그리드 서치 후 F1 스코어 0.366, 재현율 47%, 정밀도 30%로 소수 클래스 검출 성능이 향상됐다.
- 출발 요일, 출발지, 비행 시간, 체류 기간, 판매 채널이 상위 예측 특성으로 확인됐다.
상세 정리- 데이터셋: 50,000건 영국항공 예약 데이터. 5개 범주형 변수를 원-핫 인코딩으로 수치형으로 변환한다.
- SMOTE 적용 순서: 먼저 학습/테스트 데이터를 분리한 후 학습 데이터에만 SMOTE를 적용한다. 분리 전 적용하면 데이터 누수가 발생해 모델 평가를 왜곡한다.
- 초기 모델 한계: 정확도 84%는 다수 클래스 편향 때문이다. 소수 클래스 재현율이 23%에 불과해 실제 예약 완료 고객을 대부분 놓친다.
- 그리드 서치 대상: max_depth, n_estimators, max_features, min_samples_leaf 네 파라미터 조합을 격자 탐색한다.
- 튜닝 결과: 재현율 23%→47%, 정밀도 42%→30%, F1 스코어 0.366으로 소수 클래스 포착률이 크게 높아졌다.
- 특성 중요도: 출발 요일이 1위, 출발지가 2위로 예약 여부 예측에 가장 큰 영향을 미쳤다. 비행 시간, 체류 기간, 판매 채널이 뒤를 이었다.
- 한계: 정밀도 30%로 실제 서비스 적용은 어렵지만 불균형 데이터 처리와 하이퍼파라미터 튜닝의 기본 흐름을 체험하기에 적합한 실습이다.
왜 읽나SMOTE 클래스 불균형 처리와 그리드 서치 튜닝을 영어 자료로 실습하고 싶은 ML 입문자에게 수치 결과와 함께 단계별 흐름을 제공하는 실습 레퍼런스.