суббота, 18 августа 2018 г.

Градиентный спуск: скорость обучения

Как было отмечено ранее, градиентный вектор имеет направление и величину. Алгоритмы градиентного спуска умножают градиент на скалярную величину, известную как скорость обучения (также иногда называемую размером шага), для определения следующей точки. Например, если величина градиента равна 2.5 и скорость обучения равна 0.01, тогда алгоритм градиентного спуска возьмет следующую точку на 0.025 дальше от предыдущей точки.

Гиперпараметры - это ручки управления, которые разработчики используют в алгоритмах машинного обучения. Большинство разработчиков машинного обучения тратят изрядное количество времени, настраивая скорость обучения. Если задать скорость обучения слишком маленькой, то обучение будет идти очень долго:

Скорость обучения слишком маленькая

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

Скорость обучения слишком большая

Существует золотая середина в определении скорости обучения для любой проблемы регрессии. Это значение основывается на том, насколько плоская функция потери. Если известно, что градиент функции потери маленький, тогда можно использовать большую скорость обучения, которая компенсирует маленький градиент и приводит к большему размеру шага.

Скорость обучения правильная