Data Science Project
[모델링 프로젝트] 전기차 가격 예측 해커톤
ParkS2
2025. 1. 12. 01:21
[주제]
전기차와 관련된 데이터를 활용하여 전기차 가격을 예측하는 AI 알고리즘 개발
전기차와 관련된 데이터를 활용하여 전기차 가격을 예측하는 AI 알고리즘을 개발
데이터 정보


EDA
결측치 시각화

대부분의 결측치가 배터리용량에 존재한다.
결측치 처리를 위한 배터리용량 칼럼 분석


배터리용량과 numerical 칼럼들의 상관관계는 약하다고 판단


배터리용량
- 보증기간이 7년 이상이면 유의미하게 길다.
- brand-new일 경우 배터리용량이 크다

Brand-new인 차량 대부분이 보증 기간이 7년 이상이다
결론 : 보증기간 7년 이상 / 7년 미만을 기준으로 배터리용량 데이터를 나누고 결측치 처리 진행
데이터 전처리
1. 결측치 처리
- 보증년도 7년을 기준으로 데이터를 나누고 예측진행
- 랜덤포레스트 모델을통해 배터리용량 타겟변수로 했을 때 변수중요도 파악
- 차량상태 0.435177
- 주행거리(km) 0.277754
- 중요도가 높은 변수로 하는 랜덤 포레스트 모델을 학습하여, 배터리용량 결측값을 예측 후 결측치 처리

인코딩
피처 엔지니어링


변수 중요도

모델링
각 모델을 학습 및 평가

상위 모델들로 앙상블 기법을 활용
하이퍼 파라미터
기존의 GridSearch – 랜덤하게 파라미터를 설정하여, 메모리 효율성이 떨어지며, 하이퍼 파라미터에 시간이 오래걸림

Optuna : 하이퍼파라미터 최적화를 위한 오픈소스 프레임워크 , 병렬 처리와 조기 종료 기능을 통해 효율적인 탐색이 가능
- Optuna 최적화를 사용하여 하이퍼파라미터 진행
Sqlite 와 연동을 통해 파라미터 저장과 최적화를 반복수행

Optuna의 실험 결과를 저장하기 위해 데이터베이스 파일 경로를 설정하고, 해당 디렉토리가 없으면 생성
결과

🏆 모델 성능 순위
1.GradientBoosting: 가장 높은 막대 그래프 높이와 R² 스코어(약 0.9987) 기록
2.LightGBM, CatBoost, XGBoost: 유사한 수준의 안정적인 성능 보여줌
3.Ensemble 모델들:Ensemble(Mean)과 Ensemble(Weighted) 모두 준수한 성능 기록
4.단일 모델과 비교했을 때 안정적인 예측력 제공
🛠 사용 기술
•언어: Python
•주요 라이브러리:데이터 처리: Pandas, NumPy
•모델링: Scikit-learn
•최적화: Optuna
•시각화: Matplotlib, Seaborn
•데이터베이스: SQLite
💫 주요 학습 포인트
1.체계적인 결측치 처리 방법론 개발
2.효과적인 피처 엔지니어링 전략 수립
3.다양한 인코딩 방식의 적절한 활용
4.Optuna를 활용한 효율적인 하이퍼파라미터 최적화