Skip to content

Разработка модели машинного обучения, предсказывающей рыночную стоимость автомобиля

Notifications You must be signed in to change notification settings

egorumaev/2023-cost-of-the-car

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

2023-cost-of-the-car

Разработка модели машинного обучения, предсказывающей рыночную стоимость автомобиля

ПРОЕКТ «Определение рыночной стоимости автомобилей»


Примененные библиотеки и технологии

  • Pandas, Numpy, Matplotlib, Seaborn, Joypy, Skimpy, Datetime, Sklearn, Feature-engine, Catboost, LightGBM

  • KNNImputer, SimpleImputer, OneHotEncoder, OrdinalEncoder, MinMaxScaler, DropCorrelatedFeatures, SelectKBest, mutual_info_regression, make_scorer, RandomizedSearchCV


Цель и задачи проекта

Популярный среди автолюбителей портал по продаже автомобилей с пробегом «Не бит, не крашен» разрабатывает приложение для привлечения новых клиентов и расширения своего присутствия в онлайн-пространстве. Новый сервис должен позволить быстро узнать рыночную стоимость автомобиля. Администрацией портала накоплены исторические данные: технические характеристики, комплектации и цены автомобилей, – которые станут основой для обучения машинного алгоритма.

Цель исследования: разработка модели машинного обучения, предсказывающей рыночную стоимость автомобиля.

Для достижения цели были выполнены следующие задачи:

  • проведен исследовательский анализ данных; данные подготовлены для машинного обучения;

  • проведено обучение нескольких моделей с подбором лучших гиперпараметров для каждой модели;

  • проанализировано время обучения модели; время, затраченное моделью на предсказание; качество модели;

  • выбрана лучшая модель, качество которой проверено на тестовой выборке.

Заказчиком определены следующие критерии, по которым будет выбрана лучшая модель:

  • должно быть исследовано несколько моделей, одна из которых — LightGBM, как минимум одна — не бустинг;

  • время обучения модели;

  • время, затраченное моделью на предсказание;

  • качество модели, определяемое по метрике RMSE, значение которой должно быть ниже 2500.


Основные результаты

(1) Обучены две линейные модели ипять моделей, основанных на решающих деревьях:

  • Ridge

  • LassoCV

  • DecisionTreeRegessor

  • RandomForestRegressor

  • HistGradientBoostingRegressor

  • CatBoostRegressor

  • LGBMRegressor

(2) создана собственная метрика rmse, позволившая получать значение метрики по итогам кросс-валидации на RandomizedSearchCV с помощью атрибута best_score_

(3) Ни в одном из случаев проверки простых (линейных) моделей на обучающем комплекте с использованием кросс-валидации не было получено значение метрики RMSE, которое соответствовало бы пороговому уровню в 2500. Удаление коррелирующих признаков и выявление 150-ти важнейших признаков не позволило снизить RMSE.

Все пять 'сложных' (основанных на решающих деревьях) моделей на обучающей выборке с использованием кросс-валидации показали значение метрики RMSE меньшее, чем 2500.

Лучшей моделью, соответствующей ограничениям, установленным в техзадании, стала модель HistGradientBoostingRegressor, показавшая на тестовой выборке значение RMSE, равное 1873.984.

About

Разработка модели машинного обучения, предсказывающей рыночную стоимость автомобиля

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published