[내일배움캠프] QA/QC_5기 ( 57
EV 주행거리 예측 프로젝트 - Baseline 모델 구축 및 Feature 정하기
1. 프로젝트 목표
프로젝트의 목표는 전기차(EV) 주행 데이터를 활용하여 주행거리(Distance)를 예측하는 머신러닝 모델을 구축하는 것이다.
예측 변수로는 배터리 상태, 차량 주행 특성, HVAC 사용량, 외기 온도 등의 정보를 활용하였으며, 다양한 머신러닝 모델을 비교하여 최적의 모델을 선정하고자 하였다.
2. 데이터 전처리
2.1 데이터 검증
머신러닝 학습 전 데이터 정합성 검증을 수행하였다.
특히 배터리 사용량을 나타내는 SOC_Consumed 변수에서 0 이하의 값이 존재하는지 확인하였다.
SOC_Consumed ≤ 0 인 경우는 실제 주행 중 배터리 사용량이 음수 또는 0으로 계산된 비정상 데이터로 판단하여 제거하였다.
SOC_Consumed > 0
조건을 만족하는 데이터만 사용하여 학습 데이터를 구성하였다.
2.2 이상치 검토
Distance 변수에 대해 Boxplot과 IQR 기반 이상치 탐색을 수행하였다.
그 결과 약 11개의 데이터가 통계적으로 이상치로 탐지되었다.
그러나 해당 데이터들은 다음과 같은 특징을 보였다.
- Distance 증가
- Duration 증가
- Avg Speed 증가
- SOC_Consumed 증가
즉 실제 장거리 주행 특성을 가진 정상 데이터로 판단되었으며, 데이터 오류가 아닌 실제 운행 패턴으로 확인되어 제거하지 않고 유지하였다.
3. Baseline 모델 구축
타겟 변수
Distance
비교 모델
- Random Forest Regressor
- LightGBM Regressor
- CatBoost Regressor
평가 지표
- R² (설명력)
- MAE (평균 절대 오차)
- RMSE (평균 제곱근 오차)
4. Baseline 성능 비교 결과
SOC_Consumed ≤ 0 데이터를 제거한 후 모델을 학습하였다.
ModelR²MAERMSE
| CatBoost | 0.819 | 3.934 | 6.502 |
| RandomForest | 0.799 | 4.423 | 6.846 |
| LightGBM | 0.680 | 5.472 | 8.633 |
결과 해석
CatBoost가 가장 우수한 성능을 보였다.
특히 RMSE와 MAE 모두 가장 낮은 값을 기록하여 주행거리 예측에 가장 적합한 모델로 판단하였다.
반면 LightGBM은 데이터 수가 적은 환경에서 분할 성능이 제한되어 가장 낮은 성능을 나타냈다.
5. Feature Importance 분석
CatBoost를 활용하여 변수 중요도를 분석하였다.
상위 중요 변수
순위변수Importance
| 1 | Duration | 40.28 |
| 2 | SOC_Consumed | 21.11 |
| 3 | Battery_Temperature_std | 5.83 |
| 4 | Velocity_mean | 2.68 |
| 5 | Battery_Temperature_diff_max | 1.94 |
해석
모델은 주로 다음 정보를 활용하여 주행거리를 예측하였다.
- 주행 시간(Duration)
- 배터리 사용량(SOC_Consumed)
- 배터리 온도 변화
- 평균 속도
- 가감속 패턴
특히 Duration과 SOC_Consumed의 중요도가 전체의 약 60% 이상을 차지하는 것으로 나타났다.
이는 주행거리가 기본적으로 주행시간과 에너지 사용량에 큰 영향을 받음을 의미한다.
6. 중요도 기반 변수 제거 실험
중요도가 매우 낮은 Route, Weather 관련 변수들을 제거한 후 재학습을 수행하였다.
제거 변수
- Route_Area_FTMRoute_2x
- Route_Area_Munich_Northeast
- Route_Area_Munich_North_Fast_Charging
- Weather_dark
- Weather_cloudy
- Route_Area_FTMRoute_reverse
- Route_Area_Highway
- Route_Area_Munich_North
- Route_Area_Munich_South
- Weather_rainy
7. 변수 제거 후 성능 비교
ModelR²MAERMSE
| RandomForest | 0.798 | 4.324 | 6.852 |
| CatBoost | 0.793 | 3.960 | 6.937 |
| LightGBM | 0.680 | 5.472 | 8.633 |
결과 해석
변수 제거 후 CatBoost 성능이 감소하였다.
구분R²RMSE
| 제거 전 | 0.819 | 6.502 |
| 제거 후 | 0.793 | 6.937 |
이는 중요도가 낮은 변수라 하더라도 일부 보조적인 설명력을 제공하고 있었음을 의미한다.
따라서 최종 모델은 모든 변수를 유지하는 방향으로 결정하였다.
8. 현재 결론
이번 실험에서는 CatBoost가 가장 우수한 성능을 보였으며, 중요도 기반 변수 제거는 오히려 성능 저하를 유발하였다.
따라서 현재 단계의 최적 모델은 다음과 같다.
최종 Baseline 모델
- Model : CatBoost
- R² : 0.819
- MAE : 3.934
- RMSE : 6.502
9. 향후 진행 계획
다음 단계에서는 다음 작업을 수행할 예정이다.
- 상위 20개 Feature만 사용한 모델 구축
- 전체 Feature와 성능 비교
- Optuna 기반 하이퍼파라미터 튜닝
- 튜닝 모델 재학습
- 실제값-예측값 시각화
- SHAP 기반 변수 영향력 분석
- Kruskal-Wallis 검정
- 최종 대시보드 구축
현재까지의 결과를 통해 CatBoost가 EV 주행거리 예측에 가장 적합한 모델임을 확인하였으며, 이후 Feature Engineering 및 하이퍼파라미터 최적화를 통해 추가적인 성능 향상을 시도할 예정이다.
일차 )
'내일배움캠프(QA,QC_5기)' 카테고리의 다른 글
| 내일배움캠프(QA,QC_5기)[내일배움캠프] QA/QC_5기 ( 60일차 ) (0) | 2026.06.04 |
|---|---|
| [내일배움캠프] QA/QC_5기 ( 59일차 ) (0) | 2026.06.02 |
| [내일배움캠프] QA/QC_5기 ( 57일차 ) (0) | 2026.05.29 |
| [내일배움캠프] QA/QC_5기 ( 56일차 ) (0) | 2026.05.28 |
| [내일배움캠프] QA/QC_5기 ( 55일차 ) (0) | 2026.05.27 |