13.07.2022

Новинки deep learning. Часть 1: PolyLoss, Imagen, Cogview2 и CoCa

server one

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

HOSTKEY
Арендуйте выделенные и виртуальные GPU серверы с профессиональными графическими картами NVIDIA RTX A5000 / A4000 в надежных дата-центрах класса TIER III в Москве и Нидерландах. Принимаем оплату за услуги HOSTKEY в Нидерландах в рублях на счет российской компании. Оплата с помощью банковских карт, в том числе и картой МИР, банковского перевода и электронных денег.

PolyLoss: не focal loss единым

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

Авторы этой статьи вспомнили, что не зря сидели на парах по матанализу (наконец-то он хоть где-то пригодился!), и что функцию, в том числе и функцию потерь в машинном обучении, можно разложить в ряд Тейлора, то есть представить в виде суммы полиномов разных степеней. Для адаптации под конкретную задачу/датасет было предложено сделать коэффициенты при многочленах обучаемыми параметрами, а чтобы этих параметров было не слишком много, оставить в разложении только младшие степени полиномов. Модификации часто используемых кросс-энтропии и focal loss в итоге дали неплохой прирост в задачах классификации, детекции и сегментации, при этом авторы уделили большое внимание коэффициенту при многочлене первой степени (пресказание-истинный лейбл)1: по мере обучения сети эта часть функции потерь играет все большую роль. Поскольку полиномы других степеней стремятся к нулю, в итоговой функции можно учитывать только этот коэффициент.

Исследование показывает, что красота в простоте, а умелое добавление даже одной строчки кода может привести к значительному улучшению результатов (+0.6% на imagenet сопоставимы с переходом от топовых сверточных моделей к моделям, использующим трансформеры).

Рассвет text-to-image: Imagen и Cogview2

Пока все восхищались работами AI-художников и ждали доступов к модели DALL-E 2, в области text-to-image появилось два достойных конкурента, поэтому придется снова ждать доступов или открытых реализаций.

Напомним, что DALL-E 2 активнее, чем первая версия, использует модель CLIP, которая позволяет спроецировать изображения и текст в единое пространство эмбеддингов (в нем можно сравнить похожесть картинки и ее описания). В DALL-E 2 через CLIP по тексту получается текстовый эмбеддинг и через prior-сеть перегоняется в картиночный clip-эмбеддинг. По нему диффузионная модель (представленная в 2021 году GLIDE, позволяющая генерировать изображения по заданному текстом ограничению/условию) получает изображение размером 64x64. Далее два диффузионных апсэмплера (две нейросети) доводят разрешение изображения до 1024x1024. Ничего сложного.

Imagen от Google в сравнении с DALL-E 2 логически выглядит проще: это всего лишь GLIDE, который по текстовому эмбеддингу генерирует семантически соответствующее входному тексту изображение (и опять же два апсэмплера после этого). Ключевое отличие от DALL-E 2 — использование для получения текстового эмбеддинга предобученной модели, обучающейся и работающей только с текстами. Авторы пробовали разные энкодеры, в том числе и CLIP, но лучшие результаты получились при использовании энкодера от T5-XXL (трансформерный энкодер-декодер, решающий задачи обработки текстов на естественном языке). Тренировалось это все на комбинации закрытых и открытых датасетов пар «текст-изображение» (итоговое количество составило 860 миллионов таких пар).

CogView2 использует другой способ объединения мультимодальных данных (текст+изображение) и их использования для предварительного обучения вспомогательной сети. Основой выступает модель CogLM, на вход которой поступает преобразованный к токенам текст, а также фиксированное количество токенов изображения, полученных из VQVAE — модели, способной преобразовывать изображение к набору слов из обучаемого словаря и восстанавливать изображение по этому набору слов-токенов.

Преобразованные к токенам текст и изображения подаются в трансформер, который учится решать разные задачи в зависимости от того, какую часть информации мы от него скрываем: если маскируем токены изображения, получаем text-to-image, а если частично маскируем токены изображений и токены текста, получаем одновременное решение задач inpainting (восстановления закрашенной части изображения) и image captioning (получения описания изображения). Далее идет стандартный для таких задач superresolution-блок, увеличивающий разрешение изображения.

Обучали это все разработчики на собственном датасете, составленном из уже известных (таких как Conceptual Captions) и содержащем пары «изображение-описание» и изображение из интернета (30 млн. обучающих пар).

Создатели imagen и авторы CogView2 пишут о результатах, сравнимых с DALL-E 2 или даже лучших по качеству и соответствию текстовым описаниям (при дообучении CogVIew2 и тестировании на COCO и даже вариант zero-shot без дообучения в случае с imagen). Нет ничего удивительного и в том, что, согласно попарному сравнению на собственном бенчмарке DrawBench (генерация картинок по сложным запросам), лучшим оказался именно imagen, к тому же эта модель использует куда более тяжелый чем CLIP текстовый энкодер. Ниже можно ознакомиться со сравнительными результатами генерации на сложных запросах (к сожалению, CogView2 не сравнивался в Drawbench, поэтому о возможностях этой модели остается только догадываться на основе доступных примеров).

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

CoCa — очередная SOTA на Imagenet или что-то большее?

Ресерчеры из Google явили миру еще одно исследование, в котором показано, что обучение на мультимодальных данных может многое дать современному глубокому обучению.

В контексте связи изображений и текстовой информации можно выделить три основных класса моделей. В варианте single encoder изображение кодируется представлением, по которому мы можем получить соответствующий текстовый класс, решая задачу классификации. Подход позволяет решать относительно простые задачи понимания того, что представлено на фото/видео. В варианте dual encoder изображение и текст проецируются в единое латентное пространство, в котором можно оценить их семантическую близость.

Примером такого подхода является CLIP, обучающийся c использованием идеи contrastive learning со следующим ограничением: расстояние между заданной парой «изображение-текст» должно быть минимальным между всеми возможными такими парами в датасете. Метод расширяет возможности первого подхода, но все равно ограничен и не в состоянии обеспечить решение связанных с одновременным восприятием текстовой и зрительной информации задач. Наконец, подход encoder-decoder позволяет более гибко объединить мультимодальную информацию: так, в simvlm и flamingo трансформер принимает на вход одновременно токены текста и изображения и декодирует их в текст для решения задач image captioning и vqa.

Авторы статьи объединили два последних подхода. Текстовый трансформер-декодер разделен на две части: первая обучается по принципу contrastive learning так, чтобы cls-токен (который отвечает за представление всего предложения, подаваемого на вход) на ее выходе максимально соответствовал изображению из пары в датасете, а вторая учится получать captioning/описание изображения, «подглядывая» при помощи механизма кросс-внимания в визуальный энкодер.

В результате после обучения на большом (и, в отличие от BLIP, достаточно шумном) датасете мы получаем три блока, комбинируя которые можно добиться отличных результатов в разных задачах: классификации (если возьмем энкодер изображения и дотренируем его на нужном датасете или же будем искать подходящий класс, перебирая все расстояния между cls и соответствующим энкодингом изображения), captioning (после дообучения энкодера и второй части декодера на датасете а-ля COCO), а также задач, связанных с нахождением по запросу самого релевантного изображения из базы (по аналогии с CLIP).

Таким образом, еще в 2018 – 2019 годах специально обучаемые на датасете Imagenet модели получали на этом же датасете точность порядка 86% (85 и 87 соответственно для ResNeXt 32x48d и EfficientNet), а сейчас мы имеем модель, которая в режиме zero-shot (то есть без обучения на этом датасете) дает 86,3%, что не может не впечатлять. Метод наглядно показывает, как устранить разрыв между разными подходами к предварительному обучению моделей, и может стать подспорьем к дальнейшим исследованиям в области мультимодальных данных.

***

Во второй части статьи читайте новости из области создания и детекции дипфейков, а также преобразования текста в речь.

Арендуйте выделенные и виртуальные GPU серверы с профессиональными графическими картами NVIDIA RTX A5000 / A4000 в надежных дата-центрах класса TIER III в Москве и Нидерландах. Принимаем оплату за услуги HOSTKEY в Нидерландах в рублях на счет российской компании. Оплата с помощью банковских карт, в том числе и картой МИР, банковского перевода и электронных денег.

Другие статьи

30.03.2023

Действительно ли DAPC выгоднее BIOS default performance?

Одним из способов повышения производительности является настройка параметров BIOS. Мы ответили на вопрос, действительно ли DAPC выгоднее BIOS default performance.

14.03.2023

Проверка работы сервера Proxmox Backup

Как проверить стабильность работы сервера Proxmox Backup и избежать потери времени.

10.03.2023

Proxmox-репликация

Как быстро и просто настроить Proxmox-репликацию и что нужно учитывать в процессе развертывания.

01.03.2023

Ansible — стандартизация оформления playbook

Как просто и удобно организовать работу с Ansible playbook и помочь системным администраторам управлять инфраструктурой компании.

21.02.2023

Создание сервиса Single sign-on с напоминаниями для пользователей

Как сделать простую и надежную систему смены пароля и помочь пользователям не забыть вовремя поменять свой пароль.

HOSTKEY Выделенные серверы в Европе, России и США Готовые выделенные серверы и серверы индивидуальных конфигураций на базе процессоров AMD, Intel, карт GPU, Бесплатной защитой от DDoS -атак и безлимитный соединением на скорости 1 Гбит/с 30
4.3 48 48
Upload