Многозадачное обучение

Материал из MachineLearning.

Версия от 11:01, 16 июля 2026; Dmitrii Vishovan (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Содержание

Статья написана с использованием 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$):

  1. Устранение неопределенности (Uncertainty Weighting): Предложен в работе Kendall et al. (2018). Метод оценивает гомоскедастичную (зависящую от задачи) неопределенность и динамически снижает вес $w_t$ для задач с высоким уровнем шума, позволяя модели сфокусироваться на более "чистых" задачах.
  2. GradNorm: Алгоритм динамически настраивает веса функций потерь так, чтобы нормы градиентов от всех задач были примерно равны. Это не дает задаче с крутыми градиентами доминировать над остальными.
  3. PCGrad (Projecting Conflicting Gradients): Метод изменяет сами векторы градиентов. Если градиенты двух задач направлены в противоположные стороны (угол между ними больше 90 градусов), алгоритм проецирует градиент одной задачи на нормаль к градиенту другой, устраняя конфликт.

Почему MTL работает? (Теоретическое обоснование)

В своей классической работе 1997 года Рич Каруана (Rich Caruana) выделил несколько механизмов, благодаря которым MTL превосходит однозадачное обучение:

  • Неявная аугментация данных: Каждая задача приносит дополнительный шум и паттерны, действуя как эффективный регуляризатор.
  • Фокусировка внимания (Attention Focusing): Если признаки сильно зашумлены, модели сложно понять, на что обращать внимание. Дополнительные задачи обеспечивают дополнительный "сигнал" для правильного отбора признаков.
  • Подслушивание (Eavesdropping): Признак G может быть легко выучен через задачу A, но трудно через задачу B. Обучая их вместе, задача B может "подслушать" и использовать признак G.

Применение в индустрии

  • Обработка естественного языка (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.

См. также