Домашнее задание 1
Часть 1.
- На стадии обработки признаков были произвдено следующее:
- Удалены дубликаты в трейне и тесте
- Вместо признака torque создали 2 отдельных признака max_torque И max_torque_rpm ( max_torque оказался действительно важным признаком для предсказания целевой переменной)
- Проверили во всех ли mileage,max_power, engine имеют одинокую размерность едениц измерения и привели к единой размерности в каждой фиче. и в этих же признаках удалили еденицы измерения и если значения были близки к 0 заменили nan
- В числовых признаках заменили пропуски медианами
- Преобразовали числовые стобцы в int и float Типы
- На этапе визуализации посмотрели на корреляцию как признаков между собой , так и таргета с признаками. Так же проанализировано распределение признаков и таргета.
Часть 2. Построение моделей.
- При использовании как модели линейной регрессии , так и модели лрегересси с регуляризацией на данных только числовых признаков не дает хорошего скора. Max скор r2 = 0.6 . Все же недостаточно только численных признаков для предсказания более точных. Часть 3.
- Добавили теперь и категориальные признаки. Закодировали их OHE кодированием. И используя модель с регуляризацией увидели что скор немного подрос.R2 = 0.64 на тесте. Делаем вывод, что с признаками нужно еще поработать.
Часть 4.
-
Спарсим данные с названий машин и увидим что некотрые модели наиболее популярны. Взяли первую 10 ку моделей и закодировали. Остальные ( тк их мало) добавили в "другие'. тк мы и так названия машин некоторые убрали- то при кодирвоании не будем убирать один столбец. тк он автомтом при фильтрации по количеству машин убрался
-
По графикам можно было заметить что целевая переменная зависит от квадрата значения некоторых признаков. потому добавили новые признаки - как иъ квадраты
-
Добавим признак число лошадей на обьем двигателя и полиномы наиболее скоррелированных признаков между собой( мног оне стала- чтобы не было переобучения)
-
По графикам так же можно было заметить что некоторые признаки как и таргет логномальное распределен. Это не хорошо. Привела к норм распределению.
-
Как итог скор на линейной модели с регуляризацией (она нужна тк некоторые признаки линейно зависимы) увеличился и стал r2 = 0.87 на тесте и r2 = 0.88 на трейне. Самые важные добавление изменения которые улучшили скор - это добавления как признака названия машин и конечно же привдение к норм распределению целевой переменной.
Часть 5. Бизнес метрика получилась = 0.381. Что кажется совсем не плохо)
Был так же написан сервер.Скрины сервиса по ссылкам ниже.