DL in NLP
12.4K subscribers
547 photos
13 videos
27 files
1.1K links
Новости и обзоры статей на тему обработки естественного языка, нейросетей и всего такого.

Связь: @dropout05 (рекламы нет)
Download Telegram
Сравнение с обычным трансформером
Are Transformers universal approximators of sequence-to-sequence functions?
Yun et al. [Google]
arxiv.org/abs/1912.10077

Вангую что в этом году мы увидим много статей с более математически строгим анализом attention.
Хорошим абстрактом для этой статьи было бы слово "Yes". В общем теперь у нас есть аналог Universal approximation theorem но для трансформеров и seq2seq.
Кроме этого авторы экспериментально показывают, что трансформеры используют не только локальный контекст (+- N слов), как CNN, но и глобальный (+- M слов, где M >> N). Для этого они заменяли слои attention в BERT на свёртки и смотрили на то, как меняется performance.
Сегодня случайно нашёл Сondensa от NVIDIA
Такой фреймворк, который попробует за вас сжать вашу модельку с помощью квантизации/прунинга/и ещё кучи техник, которые есть у него в арсенале, автоматически подберёт гиперпараметры (buzzword: байесовская оптимизация) и вообще такой AutoML. На первый взгляд выглядит интерресно.
Статейка с подробным описанием внутренностей.

UPD: последний коммит сделан 6 месяцев назад 😞
Подборка статей(+аннотации к ним) с ICLR от 🤗
тык
За ссылку спасибо @someotherusername
Подборка интересных новостей за последние дни:

1. Transformers v2.9 is out, with a built-in Trainer and TFTrainer 🔥(supports GPU, MultiGPU and TPU), examples
1. GitHub запустить бету Codespaces - такой VSCode в вашем гитхабе; записаться на early acess тут
1. DeepMind напоминает, что пока вы сидите дома пора учить RL
1. Этот канал как-то обходил подкаст AI Podcast with Lex Fridman стороной, но в последнем выпуске Ilya Sutskever - кофаундер OpenAI (youtube, apple podcasts, rss)
Forwarded from Говорит AI (Artem R)
Recipes for building an open-domain chatbot
Статья | Блогпост | Опенсорс | Коллаб пообщаться с моделью

TL;DR
Фейсбук натренировал и зарелизил SOTA open-domain чатбот модель. Лучшая модель имеет 2.7В параметров, самая большая - 9.4B. По архитектуре - трансформер. На human evaluation модель от FB получилась сильно лучше прошлой SOTA модели - Meena от гугла.

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

Суть:
Натренировали и сравнили друг с другом разные типы диалоговых моделей:
- retrieval-based. На вход контекст и датасет респонсов, на выходе нужно выдать топ релевантных респонсов из датасета. Использовали Poly-encoder модель, по сути усовершенствованный двубашенный трансформер-енкодер, где одна башня - енкодер контекста, вторая - енкодер респонса, на выходе - dot product, показывающий релевантность респонса для данного контекста.
- генеративные. На входе контекст, на выходе нужно сгенерировать респонс. Архтектура - encoder-decoder transformer, малослойный енкодер, многослойный декодер. Натренировали три базовые модели отличающиеся кол-вом параметров: 90M, 2.7B (ровно как в Meena), 9.4B.
- retrieve and refine - смесь двух подходов выше. Сначало получаем список кандидатов из retrieval-based модели, и подаем их в качестве подсказок в генеративную модель для генерации финального ответа.

Все базовые модели тренировали на огромной корпусе реддита. Финальный почищенный корпус имеет 1.5B диалоговых сообщений. Сколько учились и на каком железе не написали.

Для генеративных моделей перебирали разные способы как трейна, так и декодинга для улучшения качества ответов:
- добавление unlikelihood лосса. По сути в лосс добавляем штраф за порождение частотных нграмм, чтобы форсить разнообразие слов и коллокаций при генерации ответа.
- subsequence blocking. Выбрасываем респонсы у которых есть нграмное пересечение с контекстом, или же одна нграмма несколько раз встречается в самом ответе, т.e модель повторяет, то что уже сказала.
- файнтюн. Расмотрели 4 небольших диалоговых корпуса, от 50K до 200K сообщений в каждом: ConvAI2, Empathetic Dialogs, Wizard of Wikipedia и BST(Blended Skill Talk) - по сути объединение трех первых корпусов. Лучше всего файнтюн заработал на BST. Пример диалога из корпуса на скрине.
- декодинг. Пробовали beamsearch с разными beamsize, top-k сэмплирование, sample + rank как в Meena когда сначало сэмплим N ответов, а потом выбираем лучший по log-likelihood. В итоге лучшим оказался beamsearch (beam=10) c ограничением на длину, в котором они форсят генерировать ответ минимум в 20 токенов. Показали что таким образом увеличивается как качество ответов, так и engagingness - вовлеченность человека в беседу с чатботом.
Forwarded from Говорит AI (Artem R)
Результаты:
Для финального сравнения моделей использовали способ ACUTE-Eval. Состоит из двух шагов: шаг 1 - с помощью ассесоров набираем N диалогов между людьми и нашими разными моделями, шаг 2 - даем новым человекам-ассесорам сделать side-by-side сравнение - даем прочитать два диалога с разными чатботами и просим ответить какого чатбота ассесор бы предпочел для дальнейшего общения (см пример на скрине). Такой подход позволяет сравнивать модели просто имея сэмплы диалогов и не имея доступ к самой модели. Именно так и получилось с Meena которые выложили примеры диалогов, но не выложили саму модель.

По итогу самая лучшая модель - BST Generative на 2.7B с бимсерчем = 10 и ограничением минимальной длины ответа в 20 токенов. Удивительно что 9.4B модель проиграла 2.7B модели - на side-by-side сравнении по engagingness 54% проголосовали за 2.7B модель, хотя по perplexity 9.4B получилась лучше. Еще удивительно, что на side-by-side сравнении диалогов их лучшей модели и диалогов человек-человек, по метрике engagingness они сматчились с человеческими. Недалек тот день, когда можно будет выбросить всех друзей и увлекательно общаться только с чатботами

В заключении провели анализ ошибок модели, типичные факапы:
- противоречие и забывчивость. Модель в диалоге может противоречить сама себе или повторяться про те вещи, про которые говорила несколько шагов назад.
- выдумывание фактов. Модель может придумать и сгенерировать несуществующие факты о реальном мире, отсутствует понимание причино-следственных связей.
- чрезмерное использование частотных коллокаций. Намного чаще чем люди употребляет безопасные и частотные фразы как “do you like”, “lot of fun”, “have any hobbies”, etc
Forwarded from Говорит AI (Artem R)
ICLR 2020: Yann LeCun and Energy-Based Models
Обсуждеение видео лекции ЛеКуна о energy-based models, вариационных автокодировщиках, других странных штуках и о его видении ближайшего будущего DL.

BART version of closed-book QA
Репозиторий для end-to-end ответов на вопросы без использования какой-нибудь БД с текстами, вся инфа берётся из весов модельки. Релевантная статья: How Much Knowledge Can You Pack Into the Parameters of a Language Model?

Mapping Natural Language Instructions to Mobile UI Action Sequences
Давно не видел статеек, где придумывали бы какую-нибудь новую странную задачку. Lie et al. [Google] решили, что вместо использования (очень ограниченного) API для Google Assistant можно попытаться его напрямую обучить выполнять ±произвольные команды с вашим телефоном (звучит зловеще). Вообще идея интересная, если когда-нибудь получится завести это дело, то у Google Assistant и Siri будет очень хороший шанс выбраться из болота установки таймеров и прогнозов погоды.
Кстати ещё хочу к этому списку добавить Data Science Math Skills

Релевантно для тех, у кого не было профильной математики в универе. На удивление для себя недавно обнаружил, что не всем легче читать LSTM как 4 формулы, чем как странную картинку.
Какое описание LSTM/Self-Attention вам понятнее?
Anonymous Poll
69%
Картинка/схема
31%
Формула
Тут в чате опять годнота (спасибо @someotherusername)
Узнал про себя, что я советская пропаганда 😂

По аналогии с thispersondoesnotexist
https://www.thisworddoesnotexist.com