Многозадачное обучение
Материал из MachineLearning.
|
| | Статья написана с использованием LLM и проверена участником Dmitrii Vishovan 15:01, 16 июля 2026 (MSD) |
Введение и определение
Многозадачное обучение (англ. Multi-Task Learning, MTL) — это парадигма машинного обучения, при которой одна модель обучается решать несколько связанных задач одновременно, используя общее представление данных (shared representation).
В классическом машинном обучении (Single-Task Learning) для каждой задачи строится отдельная независимая модель. В MTL модель оптимизирует единую функцию потерь, объединяющую ошибки всех задач. Цель многозадачного обучения состоит в том, чтобы улучшить обобщающую способность модели и качество предсказаний для каждой отдельной задачи за счет знаний, извлеченных из других задач.
Интуитивно: Когда человек учится управлять мотоциклом, ему сильно помогает тот факт, что он уже умеет держать равновесие на велосипеде и знает правила дорожного движения из опыта вождения автомобиля. Разные, но связанные навыки усиливают друг друга. В машинном обучении, если мы учим нейросеть предсказывать возраст человека по фотографии, параллельное обучение её предсказывать пол и эмоции заставит сеть лучше выделять ключевые черты лица (глаза, морщины, текстуру кожи), что повысит точность предсказания возраста.
Математическая постановка задачи
Пусть имеется $T$ задач, где для каждой задачи $t \in \{1, \dots, T\}$ задана обучающая выборка $D_t = \{(x_i^t, y_i^t)\}_{i=1}^{N_t}$. Пространства признаков $X$ и ответов $Y$ для разных задач могут как совпадать, так и различаться.
Требуется обучить модель $f(x; \Theta)$, параметризованную весами $\Theta$, которая способна выдавать предсказания $\hat{y}^t = f_t(x; \Theta)$ для каждой задачи $t$.
Обучение сводится к минимизации взвешенной суммы эмпирических рисков: $$ \mathcal{L}_{total}(\Theta) = \sum_{t=1}^T w_t \mathcal{L}_t(f_t(x^t; \Theta), y^t) $$ где:
- $\mathcal{L}_t$ — функция потерь для задачи $t$ (например, кросс-энтропия для классификации или MSE для регрессии);
- $w_t$ — вес (важность) задачи $t$ в процессе оптимизации;
- $\Theta = \Theta_{sh} \cup \Theta_1 \cup \dots \cup \Theta_T$, где $\Theta_{sh}$ — общие веса (shared parameters), а $\Theta_t$ — специфичные для конкретной задачи веса (task-specific parameters).
Базовые архитектуры MTL в глубоком обучении
Архитектуры многозадачного обучения традиционно делятся на два класса в зависимости от способа распределения параметров:
Жесткое разделение параметров (Hard Parameter Sharing)
Это самый популярный и простой подход. В нем скрытые слои нейросети (feature extractors) являются общими для всех задач ($\Theta_{sh}$), а на вершине сети формируются независимые «головы» (heads) для каждой задачи ($\Theta_t$).
- Преимущества: Кардинально снижает риск переобучения. Чем больше задач мы решаем одновременно, тем сложнее модели запомнить шум в данных для одной конкретной задачи. Также требует меньше памяти и вычислительных ресурсов при инференсе.
- Недостатки: Эффективен только если задачи сильно коррелируют. Если задачи конфликтуют, качество модели падает (эффект Negative Transfer).
Мягкое разделение параметров (Soft Parameter Sharing)
В этом подходе каждая задача имеет свою собственную независимую нейронную сеть. Однако скрытые слои разных сетей обмениваются информацией. Расстояние между параметрами разных моделей регуляризуется (например, через $L_2$-норму), либо используются механизмы внимания для смешивания признаков (например, архитектура Cross-Stitch Networks).
- Преимущества: Более гибкий подход, позволяющий избежать интерференции при слабой связи задач.
- Недостатки: Резкое увеличение количества параметров и вычислительной сложности.
Продвинутые архитектуры: MMoE
Для решения проблемы конфликтующих задач (когда улучшение одной задачи ведет к деградации другой) в 2018 году исследователи из Google предложили архитектуру MMoE (Multi-gate Mixture-of-Experts).
Она адаптирует концепцию Mixture-of-Experts (MoE) для многозадачного обучения. Вместо одного общего "ствола" (как в Hard Sharing), модель использует несколько параллельных подсетей — «экспертов». Для каждой конкретной задачи $t$ обучается свой шлюз (Gate) — легковесная сеть, которая с помощью функции Softmax решает, выход какого из экспертов наиболее полезен для текущей задачи. $$ f_t(x) = \sum_{i=1}^E g_{t,i}(x) \cdot expert_i(x) $$ MMoE стала индустриальным стандартом в рекомендательных системах для одновременного предсказания кликабельности (CTR) и вероятности конверсии (CVR).
Проблемы MTL и методы их решения
Главный вызов в MTL — это явление Negative Transfer (Отрицательный перенос). Оно возникает, когда задачи противоречат друг другу, и градиенты, приходящие от их функций потерь, указывают в разные стороны (происходит градиентная интерференция).
Для борьбы с этим используются продвинутые методы балансировки функций потерь (подбор весов $w_t$):
- Устранение неопределенности (Uncertainty Weighting): Предложен в работе Kendall et al. (2018). Метод оценивает гомоскедастичную (зависящую от задачи) неопределенность и динамически снижает вес $w_t$ для задач с высоким уровнем шума, позволяя модели сфокусироваться на более "чистых" задачах.
- GradNorm: Алгоритм динамически настраивает веса функций потерь так, чтобы нормы градиентов от всех задач были примерно равны. Это не дает задаче с крутыми градиентами доминировать над остальными.
- PCGrad (Projecting Conflicting Gradients): Метод изменяет сами векторы градиентов. Если градиенты двух задач направлены в противоположные стороны (угол между ними больше 90 градусов), алгоритм проецирует градиент одной задачи на нормаль к градиенту другой, устраняя конфликт.
Почему MTL работает? (Теоретическое обоснование)
В своей классической работе 1997 года Рич Каруана (Rich Caruana) выделил несколько механизмов, благодаря которым MTL превосходит однозадачное обучение:
- Неявная аугментация данных: Каждая задача приносит дополнительный шум и паттерны, действуя как эффективный регуляризатор.
- Фокусировка внимания (Attention Focusing): Если признаки сильно зашумлены, модели сложно понять, на что обращать внимание. Дополнительные задачи обеспечивают дополнительный "сигнал" для правильного отбора признаков.
- Подслушивание (Eavesdropping): Признак
может быть легко выучен через задачу
, но трудно через задачу
. Обучая их вместе, задача
может "подслушать" и использовать признак
.
Применение в индустрии
- Обработка естественного языка (NLP): Флагманская модель BERT обучается в режиме MTL. Она одновременно решает задачу предсказания пропущенного слова (Masked Language Modeling) и задачу бинарной классификации — является ли следующее предложение логическим продолжением предыдущего (Next Sentence Prediction).
- Компьютерное зрение (CV): Модели семейства Mask R-CNN параллельно решают задачи предсказания рамок объектов (Bounding Box Regression), классификации объекта внутри рамки и попиксельной сегментации маски.
- Рекомендательные системы: Практически любая крупная лента (VK, YouTube, Дзен) использует MTL для одновременного предсказания вероятности клика (Click), лайка (Like), комментария и глубины просмотра (Watch Time).
Литература
- Caruana R. Multitask learning // Machine Learning. — 1997. — Т. 28. — С. 41–75.
- Ruder S. An Overview of Multi-Task Learning in Deep Neural Networks // arXiv preprint arXiv:1706.05098. — 2017.
- Ma C. et al. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts // Proceedings of the 24th ACM SIGKDD. — 2018.
- Kendall A., Gal Y., Cipolla R. Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics // CVPR. — 2018.
См. также
- Трансферное обучение (Transfer Learning)
- Многозадачное обучение
- Смесь экспертов
- Функция потерь
- Метаобучение

