Мы продолжаем разбирать статьи с конференции NeurIPS 2021, крупнейшей конференции по машинному обучению. Первая часть разбора была посвящена около-рекомендательным статьям. Во второй части мы собрали работы, не объединенные общей тематикой: они просто показались нам интересными.

Из этой статьи вы узнаете:

  • Какие модели помогут оценить не только значение целевой переменной, но и вычислить доверительный интервал на него (читать).

  • Как модифицировать BERT, чтобы разделить музыкальный трек на отдельные дорожки, соответствующие разным музыкальным инструментам (читать).

  • Какая метрика позволит оценить качество сгенерированных машиной текстов (читать).

  • Как заставить робота исследовать новые стратегии поведения (читать).

Conformal Prediction using Conditional Histograms

ссылка 

Автор разбора: Коля Анохин, ведущий специалист по машинному обучению в ОК (@anokhinn)

В некоторых задачах важно уметь оценивать интервал, в котором находится целевая переменная Y для данных значений признаков X. Допустим, мы разрабатываем систему, которая анализирует резюме и предсказывает, какую зарплату стоит предложить соискателю. Рекрутеру будет удобнее, если система выдаст “зарплатную вилку”, а не точечную оценку. Если предложить меньше нижней границы, кандидат даже не станет общаться. Верхняя граница позволяет понять, до какой зарплаты можно торговаться.

Формально требуется оценить интервал C(X), такой что

P(Y \in C(X)) \geq 1 - \alpha \qquad(1)

Эту задачу можно решить, заложив предположения о распределении P(Y | X) в модель. Когда такие предположения сделать не получается, на помощь приходит метод conformal prediction.

В статье применяется вариация split conformal prediction, в которой обучение состоит из трех шагов:

  1. Делим данные на две части: обучающую и калибровочную.

  2. На обучающей выборке тренируем базовый алгоритм, который может строить какие-то интервалы для Y.

  3. Используем калибровочную выборку, чтобы научиться преобразовывать эти интервалы так, чтобы новые интервалы удовлетворяли условию (1).

В качестве бейзлайна авторы рассматривают Conformalized Quantile Regression (CQR). В этом методе базовым алгоритмом служат две квантильные регресии: они предсказывают верхнюю и нижнюю границы интервала на Y. Интервал, определенный этими границами, не гарантирует выполнение условия (1), особенно когда используются сложные модели (нейросети). Поэтому проводится дополнительная калибровка: выучивается дельта, на которую нужно расширить базовый интервал, чтобы в среднем выполнялось условие (1).

В статье предлагается новый метод Conformal Histogram Regression (CHR). Множество возможных значений Y разбивается на последовательные интервалы i1, …iN. Базовый алгоритм обучается предсказывать вероятность P(Y ∈ ij | X) для каждого интервала – таким образом на выходе получается гистограмма вероятности Y для данного X. С помощью этой гистограммы можно вычислить минимальную последовательность интервалов, такую чтобы Y попало в один из них с вероятностью не меньше ????. На этапе калибровки строится соответствие между ???? и α: для каждого ???? считаем, в какой доле (1-α) случаев из калибровочной выборки Y попадает в интервал, соответствующий ????

Имея обученный базовый алгоритм и соответствие между ???? и α, получаем алгоритм построения интервалов для Y:

  1. Для данного X применяем базовый алгоритм и строим гистограмму распределения P(Y ∈ ij | X).

  2. Выбираем ????, соответствующий нужному α, и находим последовательность интервалов ij для выбранного ????. Верхняя и нижняя границы интервалов этой последовательности определяют итоговый интервал на Y.

Авторы доказывают, что интервалы построенные методом CHR, удовлетворяют условию (1). На синтетических и реальных данных интервалы CHR получились значимо Уже, чем у CQR и других методов. Кроме того, в отличие от CQR, предложенный метод может строить несимметричные интервалы, и его не нужно обучать заново, для нового значения α. Статья понятно написана, а предложенный алгоритм Conformal Histogram Regression кажется удачным выбором в задаче conformal prediction.

TriBERT: Full-body Human-centric Audio-visual Representation Learning for Visual Sound Separation

ссылка

Автор разбора: Яна Ульяненко, разработчик в группе машинного обучения ОК (@yaulyanenko)

BERT был анонсирован в 2018 году. С тех пор каждый мог пощупать данную архитектуру своими руками и убедиться в её эффективности. Текстовые представления, полученные с помощью предобученного BERTа, используются во множестве задач и приложений. В рассматриваемой статье подход BERT был расширен на новую предметную область и тип данных – авторы представили архитектуру TriBERT, основанную на обучении мультимодальных представлений, для решения задачи разделения звука (sound separation).

Краткое содержание

Авторы TriBERT вдохновились статьей 2019 года, в которой была предложена идея совместного обучения представлений для решения визуально-текстовых задач. Созданную для этого архитектуру назвали VilBERT (Visual + linguistic BERT). В чем же суть? Текстовые представления BERTа работают очень хорошо. Но часто задачи, с которыми мы сталкиваемся в реальном мире, работают не только с текстом или только с картинками, но одновременно с несколькими потоками данных. Сама природа многих процессов и связанных с ними задач основана на синхронизированной информации разных типов. Например, когда вы смотрите мем, вы улавливаете иронию, анализируя одновременно визуальный и текстовый контекст. При просмотре и анализе видео в подавляющем большинстве случаев мы обрабатываем два отдельных, но при этом синхронизированных между собой потока информации – картинку и звук. Поэтому возникла идея, что при решении таких ML задач правильно не просто учитывать несколько потоков информации, но также взаимосвязь между ними. Существующие на момент создания VilBERT архитектуры использовали обработку двух потоков информации (например картинки и текст), но в итоге различными способами просто конкатенировали выходы для получения финального результата. VilBERT предложили применить хорошо показавший себя BERT и обучать два потока представлений для картинок и для текста, а для учета взаимосвязи между ними добавить специальный блок совместного attention.

Создатели TriBERT применили аналогичную логику для решения задачи разделения звука. Например, есть запись, на которой звучит одновременно скрипка и виолончель. Нужно получить две отдельные аудио-дорожки для каждого инструмента. Предшествующие работы на эту тему показывали, что при наличии видео к музыке добавление в архитектуру обработки кадров и ключевых точек исполнителей позволяло значительно повысить качество решения такой задачи. Поэтому в архитектуре TriBERT решили обучить трехмодальные представления для трех потоков – кадров (картинка), позы (keypoints) и аудио. Общая архитектура TriBERT выглядит следующим образом:

Для обмена информацией между потоками авторы используют аналогичной VilBERT модуль co-attention, который выглядит так:

Каждый поток вычисляет индивидуальный запрос (Q), ключ (K) и матрицы значений (V) как в обычном блоке-трансформере. Ключи и значения из двух модальностей затем конкатенируются и подаются в качестве входных данных в multihead attention блок третьей модальности. В результате блок генерирует attention признаки, обусловленные другими двумя модальностями. Остальные элементы архитектуры, такие как полносвязные слои, остаточные связи и т.д., остаются такими же, как и в стандартном блоке-трансформере, который затем используется для генерации эффективных мультимодальных признаков.

Каждый поток перед попаданием в BERT проходит различную предобработку для извлечения признаков: для видео применяется сегментационная сетка; координаты поз извлекаются с помощью AlphaPose, а затем Graph CNN; к аудио применяется стандартное оконное преобразование Фурье для перевода в спектрограмму и VGGish Network для извлечения признаков по типу сверток. Выходы BERTа обучаются на классификации, а скрытые состояния передаются дальше, где они объединяются с выходами энкодера attention Unet, декодируются и обучаются на маскировку спектрограммы, которая разделяет два источника звука.

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

Комментарий автора разбора 

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

MAUVE: Measuring the Gap Between Neural Text and Human Text using Divergence Frontiers 

ссылка

Автор разбора: Карина Зайнуллина, ML инженер в голосовом помощнике Маруся (@Karina97)

В настоящее время большие языковые модели, которые генерируют текст, становятся все более популярны, а их качество становится все лучше. Авторы статьи предлагают метрику под названием MAUVE для определения  схожести сгенерированных и естественных текстов. Эта метрика не требует обучения в отличии от дискриминаторов. Основной идеей метрики является сравнение распределений текстов сгенерированных моделью (Q) и текстов написанных человеком (P). 

Краткое содержание

Для того чтобы сравнить распределения P и Q, можно  использовать две KL-дивергенции KL(P||Q) и KL(Q||P). Проблема возникает, если множества, где P и Q ненулевые, не совпадают. Тогда KL дивергенции не определены. Для того, чтобы решить эту проблему, в KL дивергенции подставляется смешанное распределение Rλ = λ P + (1 - λ) Q

Для вычисления метрики MAUVE строится кривая:

C(P, Q) = \{ \exp(-c \, KL(Q||R_\lambda), \exp(-c \, KL(R||R_\lambda))) \;|\; \lambda \in (0, 1)  \}

где c – это гиперпараметр для красивой отрисовки кривой. Значение метрики MAUVE – площадь под графиком этой кривой.

Примеры кривой метрики MAUVE для разных размеров генеративных моделей и разных способов сэмплирования
Примеры кривой метрики MAUVE для разных размеров генеративных моделей и разных способов сэмплирования

Однако, так как реальное распределение P неизвестно, а распределение Q сложно вычислить, авторы статьи предлагают рассчитывать MAUVE следующим образом:

  1. Использовать методы Монте-Карло, чтобы сэмплировать пример из распределений P и Q.

  2. С помощью внешней языковой модели (RoBERTa, GPT) превратить сэмплированные примеры в представления-эмбеддинги.

  3. Квантовать пространство эмбеддингов на k классов.

  4. Посчитать MAUVE для дискретных распределений классов.

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

Комментарий автора разбора 

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

К сожалению MAUVE не сравнивают с обученными дискриминаторами и не сообщают, насколько она лучше или хуже этих дискриминаторов. Предполагаю, что использование дискриминаторов даст лучший результат.

Interesting Object, Curious Agent: Learning Task-Agnostic Exploration

ссылка

Автор разбора: Максим Блюменталь, инженер по машинному обучению в ОК (@blumental)

В играх с хорошо определенными и частыми вознаграждениями игроки могут исследовать новые стратегии, опираясь на недавние успехи и провалы. Однако часто награда определяется лишь в конце игры. Тогда игроки должны исследовать новые возможности и стратегии без внешних стимулов. Например, если игрок проходит лабиринт, награда определится лишь тогда, когда он найдет выход или истечет время. До той поры игрок должен исследовать возможные пути, опираясь на свое любопытство, опыт прохождения других лабиринтов или что-то ещё. В обучении с подкреплением существует область, рассматривающая подобные задачи, где исследование новых стратегий должно вестись без внешних наград – task-agnostic exploration.

Авторы статьи предложили по-новому взглянуть на task-agnostic exploration. Ранее для исследования без внешних наград агент использовал только внутренние награды, выражающие его любопытство. Авторы предложили наделить агента не только любопытством, но и опытом. Для этого агента нужно обучить в нескольких средах, где он поймет, какие состояния и действия интересные, а какие – нет. Так он приобретёт специальную стратегию исследования нового – exploration policy. После этого при решении конкретной задачи агент будет использовать exploration policy в качестве вспомогательного элемента внутри обычной политикой, тренируемой под воздействием внешней награды.

Политика исследования

Сперва нужно обучить exploration policy. Агент помещается в несколько сред, где обучается, получая только внутреннюю награду. Авторы предложили новую внутреннюю награду C-BET (Change-Based Exploration Transfer):

r(s, a, s') = \frac{1}{N(s') + N(с)},

где

  • N(s’) – сколько раз агент посетил состояние s’.

  • N(c) – сколько раз наблюдалось изменение среды c = s -> s’.

Чем более редкое новое состояние s’ и изменение состояний s->s’, тем выше внутренняя награда.

Обучение exploration policy можно вести любым известным алгоритмом. Авторы выбрали IMPALA. 

Exploration Transfer

Получив exploration policy πEXP(s,a), можно перенести заключенный в ней опыт исследования среды на конкретную задачу с внешней наградой.

Политика исследования представляет собой нейросеть f(s, a) с выходами, количество которых равно количеству действий в задаче. Эти выходы проходят через softmax:

\pi_{EXP}(s, a) = \sigma(f(s, a))

При использовании πEXP веса сети f(s,a) замораживаются. Выходы f(s,a) складываются с выходами новой сети g(s, a), которая будет тренироваться под конкретную задачу и конкретную внешнюю награду:

\pi_{TASK}(s, a) = \sigma(f(s, a) + g(s, a))

В начале обучения g(s,a) будет инициализирована случайно и главную роль будет играть сеть f(s,a), умеющая хорошо исследовать среду. Когда исследование приведет к получению внешней награды, начнется тренировка сети g(s,a), и πTASK(s,a) начнет постепенно переносить акцент с исследования возможностей на получение награды.

Итог

В экспериментах авторы показали, что внутренняя награда C-BET действительно позволяет тренировать πEXP, которая помогает агенту полнее исследовать множество состояний и вступать со средой в большее число взаимодействий. Авторы также разработали и опубликовали на GitHub фреймворк с метриками и бенчмарками для оценки task-agnostic политик исследования среды.

Комментарий автора разбора

Ранее transfer learning в RL применялся для переноса политики решения конкретной задачи, но не опыта исследования среды. В статье авторы продемонстрировали успешный перенос именно exploration. Понимая, какие действия интересны, а какие – нет, агент может успешнее ориентироваться и быстрее обучаться в неизвестных средах. Однако авторы отметили, что существует ряд задач, где обучение, мотивируемое любопытством и интересностью действий, неприемлемо (например, в беспилотных автомобилях, где любопытство может заставить агента заехать в стену или наехать на пешехода).

Заключение

На этом наш обзор статей с конференции NeurIPS 2021 завершен. Мы уверены, что в этом году появятся тысячи новых статей по машинному обучению. Многие из этих статей будут достойны того, чтобы их разобрать. Надеемся, что у нас будет возможность их прочитать и рассказать об этом вам в следующих разборах. До встречи!

Комментарии (0)