2.7 Baseline 모델
: 일반적인 머신러닝 파이프라인의 모든 과정을 포함하는 가장 기초적 모델
경진대회 상위 참가자들이 baseline 모델 공개 but 직접 개인 baseline 모델 구축해보면 배움 향상!
- Tabular 데이터를 다루는 캐글 경진대회에서의 머신러닝 파이프라인의 일반적 순서
- 데이터 전처리
- 제품변수 결측값 0으로 대체(보유여부 정보가 없으면 보유하고 있지 않다고 가정)
- 훈련데이터와 테스트데이터 통합(날짜변수(fetcha_dato)로 쉽게 구분가능.
- 동일한 24개의 고객변수 공유, 테스트 데이터에 없는 24개의 제품변수는 0으로 채움
- 범주형, 수치형 데이터 전처리.
- 범주형 데이터는 .factorize()를 통해 Label Encoding 수행.
- 데이터 타입이 object로 표현되는 수치형 데이터 -> .unique() 를 통해 특이값을 대체, 제거 -> 정수형변환
- 추후, 모델학습에 사용할 변수 이름을 features리스트에 미리 담음.
- 피처 엔지니어링
- 머신러닝 모델학습에 사용할 파생변수 생성
- baseline 모델에서는 전체 24개의 고객변수와 4개의 날짜변수기반 파생변수, 24개의 lag-1변수 사용
- fecha_alta(고객이 첫 계약을 맺은 날짜), ult_fec_cli_1t(고객이 마지막으로 1등급이었던 날짜) 에서 각각 연도와 월 정보 추출
- 그외에도 다양한 파생변수 ex) 두개의 날짜 변수간의 차이값, 특별한 날짜까지의 거리
- 결측값은 임시로 -99로 대체, xgboost 모델에서는 결측값도 정상적 입력값으로 받음.(데이터가 결측되었음도 하나의 정보로 인식되고 모델학습에 활용되긴 함
- 시계열데이터 : 고객의 과거데이터를 기반으로 다양한 파생변수 생성가능.
- ex)고객의 나이 변동을 이진변수로 생성, 한 달 전에 구매한 제품에 대한 정보, 최근 6개월간 평균 월급
- 데이터 전처리
'CS > Data Science' 카테고리의 다른 글
[Data Science] EPOCH_ch04. 포르토 세구로 안전 운전자 예측 경진대회 (p.258 ~ p.267) (0) | 2025.03.23 |
---|---|
[Data Science] EPOCH_Kaggle 2주차 (0) | 2025.03.19 |
[Data Science] EPOCH_Kaggle 1주차 (1) | 2025.03.06 |
[Data Science] Kaggle 사용법 (1) | 2025.02.28 |