Многозадачное обучение – это один из методов контролируемого обучения, который включает подбор модели на основе одного набора данных для решения нескольких связанных задач. Это дает возможность одновременно решать многие проблемы, включая узкие места в данных и вычислениях. Наше обсуждение структурировано в соответствии с разделением существующих методов глубокого MTL на три группы: архитектуры, методы оптимизации и изучение отношений задач.

Архитектуры:

  1. Разделение сети на компоненты для конкретных задач и общие компоненты таким образом, чтобы обеспечить обобщение за счет совместного использования и потока информации между задачами, минимизируя при этом отрицательную передачу.
  2. Общая магистраль. Сеть содержит несколько общих магистральных линий, и каждая выходная головка для конкретной задачи получает в качестве входных данных линейную комбинацию выходов каждой общей магистральной линии. Веса линейной комбинации вычисляются отдельной функцией стробирования, которая выполняет линейное преобразование на входе сети для вычисления весов линейной комбинации. Функция стробирования может быть разделена между всеми задачами, чтобы каждая выходная головка для конкретной задачи получала одни и те же входные данные, или специфична для задачи, чтобы каждая выходная головка получала различную смесь выходов общей магистрали.
  3. Cross-Talk:сеть Cross-Stitch состоит из отдельных сетей для каждой задачи, но входные данные для каждого уровня представляют собой линейную комбинацию выходных данных предыдущего уровня из каждой сети задач. Веса каждой линейной комбинации изучены и зависят от задачи, поэтому каждый уровень может выбирать, из каких задач использовать информацию.
  4. Дистилляция прогноза. В настройке MTL для совместного обучения прогнозированию глубины и семантической сегментации разрывы в карте глубины подразумевают вероятные разрывы в метках семантической сегментации, и наоборот.
  5. Маршрутизация задач. Несмотря на успех, архитектура с общими магистральными и перекрестными соединениями несколько жестка в своей схеме совместного использования параметров. Детализированный обмен параметрами между задачами, который происходит на уровне объекта, а не на уровне слоя. Новым компонентом этой архитектуры является уровень маршрутизации задач, который применяет специфичную для задачи двоичную маску к выходным данным сверточного слоя, к которому она применяется, обнуляя подмножество вычисленных признаков и эффективно назначая подсеть каждой задаче, которая перекрывается. с другими задачами.

Оптимизация для многозадачного обучения

  1. Взвешивание потерь: очень распространенный подход к упрощению многозадачной оптимизации заключается в балансировке отдельных функций потерь для разных задач. Когда модель должна быть обучена более чем одной задаче, различные функции потерь для конкретной задачи должны быть объединены в единую агрегированную функцию потерь, минимизацию которой обучает модель.
  2. Регуляризация. Регуляризация уже давно играет важную роль в многозадачном обучении, в основном в форме мягкого совместного использования параметров.
  3. Планирование задач. Планирование задач — это процесс выбора задачи или задач для обучения на каждом этапе обучения.
  4. Градиентная модуляция
  5. дистилляция знаний: внедрить в единую многозадачную «студенческую» сеть знания многих индивидуальных однозадачных «учительских» сетей.
  6. Многоцелевая оптимизация.

Мета-обучение, другими словами, обучение обучению, автоматическое обучение, при котором нет необходимости вмешиваться в такие задачи, как настройка модели, выбор параметров. Метаобучение представляет собой альтернативную парадигму, в которой модель машинного обучения накапливает опыт в течение нескольких эпизодов обучения — часто охватывая распределение связанных задач — и использует этот опыт для повышения эффективности обучения в будущем.

Методы/архитектуры

  1. Трансферное обучение может относиться к проблемной области, метаобучение относится к методологии, которую можно использовать для улучшения TL, а также других проблем. TL как методология отличается от мета-обучения, поскольку предшествующее извлекается путем ванильного обучения исходной задаче без использования мета-цели. В метаобучении соответствующий априор будет определяться внешней оптимизацией, которая оценивает, насколько хорошо априор работает, помогая изучить новую задачу, как показано, например, MAML.
  2. Сдвиг домена относится к ситуации, когда исходная и целевая задачи имеют одни и те же классы, но распределение входных данных целевой задачи смещается относительно исходной задачи, что приводит к снижению производительности модели при переносе. DA — это вариант трансферного обучения, который пытается решить эту проблему, адаптируя модель, обученную источником, с использованием разреженных или немаркированных данных от цели.
  3. Непрерывное обучение (CL)Непрерывное обучение и обучение на протяжении всей жизни относятся к способности учиться на последовательности задач, взятых из потенциально нестационарного распределения, и, в частности, стремиться делать это, ускоряя изучение новых задач и не забывая о старых задачах.
  4. Многозадачное обучение (MTL) направлено на совместное изучение нескольких связанных задач и извлекает выгоду из регуляризации эффекта за счет совместного использования параметров и разнообразия результирующего общего представления.
  5. Оптимизация гиперпараметров (HO) входит в компетенцию метаобучения, поскольку гиперпараметры, такие как скорость обучения или сила регуляризации, могут быть включены в определение «как учиться».

Приложения

  1. Мультиклассовое распознавание изображений
  2. Обнаружение малозаметных объектов
  3. Прогноз ориентира
  4. Сегментация объектов с несколькими кадрами
  5. Генерация изображений и видео
  6. Генеративные модели и оценка плотности

Задачи

  1. Разнообразное и мультимодальное распределение задач
  2. Метаобобщение Метаобучение ставит перед задачами новую задачу обобщения, аналогичную проблеме обобщения примеров в традиционном машинном обучении.
  3. Семейства задач. Многие существующие фреймворки метаобучения, особенно для обучения в несколько приемов, требуют семейств задач для метаобучения.
  4. Стоимость вычислений и многократное выполнение: наивная реализация двухуровневой оптимизации требует больших затрат времени (поскольку каждый внешний шаг требует нескольких внутренних шагов) и памяти (поскольку дифференциация в обратном режиме требует сохранения промежуточных внутренних состояний).

Выводы:

Я представил очень перспективную информацию об архитектуре, методах оптимизации и приложениях многозадачности и метаобучения.

Я считаю, что развитие многозадачного обучения (и связанных с ним областей метаобучения, трансфертного обучения и непрерывного обучения/обучения на протяжении всей жизни) является важным шагом на пути к развитию искусственного интеллекта с более человеческими качествами. Чтобы создать машины, способные обучаться так же быстро и надежно, как и люди, мы должны создать методы изучения общих базовых понятий, применимых между задачами, и применения этих понятий к новым и незнакомым ситуациям.

В области метаобучения наблюдается быстрый рост интереса. Это привело к некоторой путанице в отношении того, как это связано с соседними областями, к чему его можно применить и как его можно сравнить. В этом обзоре я стремился к темам на очень высоком уровне, чтобы дать представление о том, где метаобучение стояло до сих пор и может пойти дальше.

Я благодарю всех, кто посетил блог, и прошу вас также просмотреть приведенную ниже ссылку для подробного понимания тем.

Использованная литература:

  1. https://arxiv.org/pdf/2004.05439.pdf
  2. https://arxiv.org/pdf/2009.09796.pdf