среда, 15 августа 2018 г.

Тренировка модели и потери

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

Потеря - это наказание за ошибочное предсказание. Потеря - это число, показывающее насколько ошибочным было предсказание моделью конкретного примера. Если предсказание модели совершенно, тогда потеря равна нулю, иначе потеря больше нуля. Цель в тренировке модели - найти набор весов и смещений, которые имеют низкую потерю в среднем по всем примерам. Например, следующий график показывает модель с высокой потерей слева и модель с низкой потерей справа. Красная стрелка представляет собой потерю. Синяя линия представляет собой предсказания.

Высокие потери в левой модели, низкие потери в правой модели

Стоит отметить что красные стрелки на левом графике намного длиннее, чем их двойники на правом графике. Очевидно, что синяя линия на правом графике - это более правильная модель, чем синяя линия на левом графике.

Можно ли создать математическую функцию - функцию потери - которая будет объединять отдельные потери.

Квадратичная потеря: популярная функция потери

Модели линейной регресии, которые мы рассматриваем здесь, используют функцию потери называемую квадратичной потерей (также известную как L2 потеря). Квадратичная потеря для отдельного примера - это квадрат разницы между меткой и предсказанием.

Средний квадратичная ошибка (Mean square error (MSE)) -это средняя квадратичная потеря для каждого примера по всему набору данных. Чтобы вычислить среднюю квадратичную ошибку необходимо сложить все квадратичные потери для отдельных примеров и затем разделить на количество примеров.

где:
(x,y) это пример в котором
x - это набор свойств (например, количество стрекотов в минуту, возраст, пол), которые модель использует чтобы делать предсказания.
y - это метка примера (например, температура)
prediction(x) - это функция весов и смещений в комбинации с набором свойств x.
D - это набор данных, содержащий много примеров с метками, представляющими собой (x,y) пары.
N - это количество примеров в D

Хотя средняя квадратичная ошибка общеиспользуема в машинном обучении, она не единственная функция потери, используемая на практике, и она не является самой оптимальной функцией потери при различных условиях.