Few-shot learning — это парадигма машинного обучения, в которой модель должна обобщать новую задачу или класс, увидев лишь небольшое число размеченных примеров — зачастую всего один (one-shot) или ни одного (zero-shot). Это противопоставляется классическому обучению с учителем, которому для достижения высокого качества обычно требуются большие размеченные наборы данных. Данный подход стал особенно заметен с появлением больших языковых моделей, способных интерпретировать инструкции и примеры, передаваемые напрямую во входном промпте.
Как работает few-shot learning
Большинство современных систем few-shot learning опираются на большую предобученную модель, которая уже усвоила обширные знания из массивных наборов данных. Для выполнения новой задачи модели подаётся небольшой набор демонстраций прямо во входных данных — техника, известная как in-context learning (обучение в контексте). Например, чтобы научить модель классифицировать отзывы клиентов как положительные, отрицательные или нейтральные, разработчик может включить в промпт три размеченных примера: «Отличный сервис!» → положительный, «Медленный ответ.» → отрицательный и «Было нормально.» → нейтральный. Затем модель применяет тот же шаблон к новым неразмеченным входным данным без какого-либо обновления весов.
Помимо промптинга, few-shot learning можно реализовать путём дообучения (fine-tuning) предобученной модели на небольшом размеченном наборе данных или с помощью подходов мета-обучения, которые явно тренируют модель быстро осваивать новые задачи. Во всех случаях цель одна: задействовать ранее полученные знания так, чтобы нескольких примеров было достаточно для задания нового поведения.
Почему это важно
Few-shot learning радикально снижает стоимость и время, необходимые для адаптации ИИ к специализированным задачам. В областях, где размеченные данные редки, дороги или чувствительны — например, в медицинской диагностике, юридическом анализе или переводе на редкие языки, — сбор тысяч примеров зачастую непрактичен. Методы few-shot позволяют строить полезные приложения на основе небольших, тщательно подобранных примеров. Они также ускоряют итерации: команды могут прототипировать и дорабатывать промпты или дообучение, не дожидаясь масштабных проектов по разметке.
Основные типы
- One-shot learning (однопримерное обучение): модели даётся один пример на класс для обучения.
- Few-shot learning (k-shot): модели даётся небольшое число примеров на класс — обычно от 2 до 10.
- Zero-shot learning (обучение без примеров): модель выполняет задачу вообще без примеров, опираясь только на инструкции или описания.
- Prompt-based few-shot learning (промптовое few-shot обучение): примеры передаются напрямую во входном промпте — подход, популяризированный GPT-3 и последующими моделями.
- Meta-learning (мета-обучение): модель явно обучается на множестве связанных задач, чтобы адаптироваться к новым при минимальном объёме данных — семейство, включающее методы вроде MAML и прототипных сетей.
Few-shot learning — одна из определяющих возможностей современных фундаментальных моделей, и она лежит в основе таких техник, как prompt engineering, retrieval-augmented generation (RAG) и лёгкое дообучение вроде LoRA. По мере того как базовые модели продолжают совершенствоваться, число примеров, необходимое для надёжного выполнения задачи, как правило, сокращается, что делает кастомизацию ИИ доступной командам без выделенных пайплайнов разметки данных.