- 
                Notifications
    You must be signed in to change notification settings 
- Fork 0
Home
Пусть 
Нужно построить регрессионную модель, предсказывающую стоимость автомобиля по его пробегу на основе данных из датасета.
Регрессия — способ выбрать из семейства функций ту, которая минимизирует функцию потерь. 
Регрессионная модель в случае одного признака описывается формулой 
Наша цель подобрать коэффициенты 
Для нахождения минимума, воспользуемся методом градиентного спуска. 
Т.е. зафиксировав некоторые начальные 
Поскольку 
Вычислим градиент (частные производные) 
Для 
Для 
- Фиксируем начальные значения параметров $\Large {a_0 = 0; b_0 = 0}$ 
 
- Вычисляем новые значения параметров $\Large {a_{new}; b_{new}}$ относительно текущих значений$\Large {a_{cnt}; b_{cnt}}$ , двигаясь в сторону антиградиента частной производной$\Large MSE$ (т.е., если частная производная положительна, то она в этой точке возрастает и наоборот) с шагом коэффициента обучения (learning rate)$\Large {\eta = 0.2}$ 
- Повторяем тренировку модели (п.2) заданное в параметре $\Large epochs$ количество раз, либо пока разница между значением функции потерь на текущем и предыдущем шагах не окажется меньше заданного значения$\Large \Delta_{loss}$ :
 
В качестве базового, для регуляризированных значений данных, возьмем 
Регуляризация необходима, т.к. при вычислении значений функции 
Начальная формула: 
Регуляризатор - минимакс. 
После применения регуляризатора, новые значения попадают в отрезок 
Подставляя в начальную формулу новые значения 
Выразим 
Таким образом, для первоначальных значений 
Или,
И, окончательно:
  
Регуляризованные коэффициенты 
 
Т.е. при начальных  
Выражение для линейной регрессии через регуляризованные коэффициенты 
Значения 
Модель тренировалась со следующими параметрами:
Для коэффициентов 
Для достижения указанных результатов при заданном 
Средняя квадратичная ошибка 
- Служит для сравнения моделей, но не для оценки качества модели с т.з. решения задачи
- Выделяет грубые ошибки за счет возведения в квадрат ошибки прогноза
- Чувствительна к выбросам
 
 
 
Коэффициент детерминации 
Нормированная среднеквадратичная ошибка 
- Выражается через $\Large SSR (Sum \ of \ Squares \ Regression)$ и$\Large SST (Sum \ of \ Squares \ Total)$ 
 
- Если значение близко к единице, то модель хорошо объясняет данные 
 
 
 
 
Выразим  
 
Тогда, 
Умножая числитель и знаменатель дроби на 
 
По определению дисперсии: 
Окончательно:
Результат оценки качества описанной выше модели:
Несколько примеров запуска обучающей и предсказывающей программ с разными параметрами.
Запуск обучающей программы train.py с параметрами 
 
 
 
 
 
 
 
 
 
 
 
Запуск программы предсказания цены автомобиля по пробегу predict.py с параметрами 
