이번 경진대회는 서울의 아파트 실거래가 데이터를 기반으로 아파트 실거래가를 예측하는 대회이었다. 2007년 1월부터 2023년 6월까지의 서울의 아파트 거래 관련 데이터 1,118,822건이 학습 데이터로 주어졌고 2023년 7월부터 2023년 9월까지의 서울의 아파트 거래 관련 데이터 9,272건이 평가 데이터로 주어졌다. 주어진 데이터에는 실거래가 정보 이외 각 거래 건별로 51가지 항목의 데이터가 있었다.
실거래가가 포함된 학습 데이터로 머신러닝 프로세스를 진행하여 실거래가가 제외된 평가 데이터의 각 거래의 실거래가를 예측해 보고 예측한 실거래가와 실제 실거래가의 RMSE(Root Mean Square Error)를 최소화하도록 머신러닝 프로세스를 개선하는 문제이다.
이러한 문제를 해결하기 위해서 5명으로 한 팀을 만들어 협업을 진행하였다.
데이터 전처리 → 모델 선택 → 학습 및 평가 순으로 진행하였는데 실제 진행한 결과 모델 종류나 모델에 사용한 hyperparameter 설정보다는 데이터 전처리 과정이 RMSE에 더 큰 영향을 주었고 시간도 더 많이 소요되었다.
이상치를 제외하는 과정을 생략했는데 오히려 RSME가 절반으로 줄어 드는 충격적인(?) 경험도 하였다.
머신 러닝에 사용한 변수를 어떻게 선택하느냐에 따라 결과가 크게 바뀌었다. 주어진 데이터의 51개 항목 중 어느 것을 채택하고 어느 것을 제외하는지, 새로운 파생 변수로 어떠한 것들을 생성하는지에 따라 결과가 크게 바뀌었다.
또한 아파트의 경도, 위도 결측치를 처리하기 위해서 Kakao API로 주어진 주소에 해당하는 경도, 위도를 구하였는데 이와 같이 API를 사용하여 외부 site에서 데이터를 가져오는 것은 처음이었는데 앞으로도 여러 site의 API를 활용할 일이 있을 것 같은데 그 때 이러한 경험이 도움이 될 것 같다.
사용해 본 모델 종류는 RandomForest, LightGBM, XGBoost, CatBoost, TabNet이고 이 중 우리 팀이 선택한 최종 모델은 XGBoost이었다.
이번 경진대회는 머신러닝 프로세스를 직접 경험해 본 유익한 시간이었고, 비전공자이고 일상적으로 코딩 작업을 해 본 경험이 없었던 나로서는 개인적으로 Python 코딩 작업 워밍업 단계로서의 의미도 큰 시간이었다.
'Upstage AI Lab 5기' 카테고리의 다른 글
Deep Learning 학습 시작... (1) | 2024.12.16 |
---|---|
데이터 전처리부터 모델 서빙까지의 경험 (0) | 2024.12.10 |
Fork를 활용한 Git 작업 절차 (0) | 2024.10.28 |
Data Structure and Algorithms (3) (0) | 2024.10.23 |
Data Structure and Algorithms (2) (1) | 2024.10.23 |