Структурированный блокнот   
 Машинное обучение (Machine Learning, обучающиеся алгоритмы) →  Оптимизация скорости обучения →  

Стохастическое и он-лайн обучение (mini-batch и online)

Идея заключается в том, чтобы на каждом шаге градиентного спуска использовать не всю обучающую выборку, а лишь её небольшую часть, вплоть до 1-й обучающей пары (X,y).

Недостатки:
1) может быть сложнее подобрать шаг обучения и регуляризирующий параметр
2) не сходится к точному минимуму, а лишь подходит близко к нему (можно решить, уменьшая шаг обучения по мере обучения, но чаще всего это не требуется, т.к. на практике нам не нужно очень точно находить минимум).

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

Размер mini-batch выбирается так, чтобы максимизировать производительность. Обычно обучение на 1 значении не даёт получить выигрыш от векторных вычислений. Типично, размер mini-batch составляет 32, 64, 128 значений, вычисления по которым производятся "одновременно" в векторном виде.

Обратите внимание. Функция ошибки может немного расти на некоторых шагах стохастического обучения -- это не является ошибкой. Главное, чтобы на большом числе шагов функция ошибки всё же уменьшалась.
Поиск по записям: только в текущем разделе.