Единичный метод (Single Example Method)
Подход в машинном обучении и работе с нейронными сетями, при котором анализ или обработка данных осуществляется поочерёдно, по одному объекту (образцу, примеру) за раз, без агрегирования или пакетной обработки.
В контексте нейронных сетей и ML единичный метод часто противопоставляется пакетным (batch) или мини‑пакетным (mini‑batch) подходам. Суть в том, что модель получает на вход не группу примеров, а лишь один — выполняет прямой проход (forward pass), вычисляет ошибку (loss), а затем сразу обновляет веса через обратный проход (backpropagation). Такой цикл повторяется для каждого примера в выборке.
Представьте, что вы учите ребёнка читать. При «единичном методе» вы даёте ему одно слово, он его читает, вы сразу указываете на ошибки и корректируете — и только потом переходите к следующему слову. В «пакетном» подходе вы дали бы сразу десяток слов, ребёнок прочитал бы их все, а вы потом разобрали бы ошибки разом.
Исторический контекст
Идея обработки по одному примеру восходит к ранним алгоритмам обучения перцептронов и градиентного спуска. В 1950–1960‑х годах, когда вычислительные ресурсы были ограничены, единичный (он же «онлайн-») метод был практически единственным реалистичным способом обучения: машины не могли накопить и обработать большие пакеты данных. С развитием аппаратного обеспечения и появлением GPU пакетные методы стали доминировать из‑за лучшей векторизации и параллелизации. Однако в ряде задач (например, онлайн‑обучение, потоковая обработка) единичный метод остаётся актуальным.
Смежные понятия и различия
- Пакетный метод (batch) — обработка всей обучающей выборки за один проход. Требует больше памяти, но даёт более стабильные градиенты.
- Мини‑пакетный метод (mini‑batch) — компромисс: данные делятся на небольшие группы (например, по 32–128 примеров), и градиенты вычисляются по каждой группе. Сочетает скорость единичного метода и стабильность пакетного.
- Онлайн‑обучение (online learning) — близкий термин; часто подразумевает единичную обработку, но акцентирует непрерывное поступление новых данных (например, в рекомендательных системах).
Примеры использования
- Стохастический градиентный спуск (SGD) — классический алгоритм, где на каждом шаге используется один пример (или мини‑пакет). В «чистом» SGD часто подразумевается именно единичная обработка.
- Онлайн‑обучение в рекомендательных системах — когда модель обновляется после каждого нового клика/просмотра пользователя.
- Обработка потоковых данных — например, анализ логов или финансовых транзакций в реальном времени, где каждый новый пример приходит поочерёдно.
- Некоторые реализации рекуррентных сетей (RNN) — при обучении на последовательностях, где каждый тайм‑степ обрабатывается поочерёдно.
