Skip to content

Maksim-Gol/Car-pricer-streamlit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1. Что было сделано (краткое описание этапов)

EDA и предобработка

  • Загружены train/test датасеты.
  • Проведён базовый EDA
  • Обнаружены строковые числовые признаки (mileage, engine, max_power); преобразованы к числовому формату, удалён torque
  • Пропуски заполнены медианами (рассчитанными по train).
  • Дубликаты объектов удалены по признакам (без целевой переменной).

Модели на вещественных признаках

  • Построена линейная регрессия на исходных и стандартизованных признаках.
  • Обучены модели Lasso, ElasticNet и Ridge с подбором гиперпараметров через GridSearchCV.

Работа с категориальными признаками

  • Категориальные признаки + seats закодированы через OneHotEncoder.
  • Числовые (scaled) и OHE-признаки объединены для обучения Ridge.

Бизнесовая метрика

  • Реализована бизнесовая метрика: доля предсказаний, отличающихся от реальных не более чем на 10%.

Streamlit-приложение

  • Создан интерактивный сервис с тремя вкладками:

    • EDA-графики
    • Прогноз цены (CSV или ручной ввод)
    • Визуализация весов модели
  • Подготовлен .pickle с моделью и препроцессингом.

  • Сервис работает автономно через streamlit run app.py.


2. Полученные результаты (метрики + интерпретация)

R^2

  • Большинство моделей (линейная, Lasso, ElasticNet) дали R^2 около 0.59 на тесте.
  • Модель Ridge с числовыми + категориальными признаками подняла R^2 до около 0.65, что является лучшим результатом.

Бизнес-метрика (доля предсказаний в пределах +-10%)

Best:

Модель Ridge (Числовые + Категориальные) - 0.245


3. Что дало наибольший прирост качества

  • Явный прирост дала интеграция категориальных признаков через OneHotEncoding.

4. Что сделать не удалось и почему

  • Не получилось корректно обработать столбец "torque". Формат значений не унифицирован (например, "113.75Nm@ 4000rpm" vs "250Nm"). Для качественной обработки требовались бы:

    • доменная экспертиза,
    • сложный парсинг с regex

5. Оценка разработанного сервиса

Удобство использования

  • Приложение получилось responsive, slick, awesome texture и fabric.
  • Спавн хитмапы под чекбоксом - приятно пользоваться

Что визуализируется хорошо

  • Хитмапа, появляющаяся по чекбоксу.
  • Барплот с наиболее важными коэффициентами модели.

Что менее удачно

  • При ручном вводе модель просто выводит численное значение цены без объяснения.

Ограничения и проблемы

  • Нет объяснения ("почему модель предсказала именно такую цену").

Планы на улучшение

  • Добавить объяснение прогноза через:

    • В выводе предсказаний добавить самые влияющие метрики и какой конкретно вклад они внесли
    • Обернуть эту информацию в запрос к API какой-нибудь LLM, чтобы она составила user-friendly summary о том, какие факторы повляли на предсказание цены

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages