SGD
Практически всё современное машинное обучение — от рекомендательных систем до голосовых ассистентов — использует варианты SGD. Полный градиентный спуск математически точнее, но на больших наборах данных невозможен: один проход по всем примерам занял бы дни. SGD позволяет обучаться на огромных объёмах быстро и с минимальными требованиями к памяти.
Интуитивно это спуск с горы в густом тумане: полной карты нет, вы шагаете туда, где чувствуете уклон вниз. Направление всегда немного случайное и неверное, но в среднем ведёт к цели. Именно случайность помогает не застрять в ложных «ямах» — локальных минимумах, которых боится точный метод.
Пример: учим модель распознавать котиков по миллиону фото. SGD берёт случайную пачку из тридцати картинок, проверяет ошибки и чуть меняет внутренние настройки. Затем следующая пачка. Никаких сложных вычислений. Через миллионы таких шагов модель надёжно отличает пушистый хвост от фона.
Итог: SGD не идеален, но это удивительно простой и надёжный способ настроить даже «полотно» из миллиардов параметров. Отказываясь от полной информации и доверяясь случайным наблюдениям, он выигрывает в скорости и практичности — поэтому без него не обходится почти ни одна настоящая нейросеть.
Поделиться