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.
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 месяцев назад 😞
Такой фреймворк, который попробует за вас сжать вашу модельку с помощью квантизации/прунинга/и ещё кучи техник, которые есть у него в арсенале, автоматически подберёт гиперпараметры (buzzword: байесовская оптимизация) и вообще такой AutoML. На первый взгляд выглядит интерресно.
Статейка с подробным описанием внутренностей.
UPD: последний коммит сделан 6 месяцев назад 😞
GitHub
GitHub - NVlabs/condensa: Programmable Neural Network Compression
Programmable Neural Network Compression. Contribute to NVlabs/condensa development by creating an account on GitHub.
Подборка интересных новостей за последние дни:
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)
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)
Twitter
Hugging Face
Transformers v2.9 is out, with a built-in Trainer and TFTrainer 🔥 This let us reorganize the example scripts completely for a cleaner codebase. - Same user-facing API for PyTorch and TF 2 - Support for GPU, Multi-GPU, and TPU - Easier than ever to share your…
И пара ссылок из чата, спасибо за них @latynina46 и @Archelunch
1. Rasa Paper Reading: A Primer in BERTology
1. TAPAS: BERT-Based Neural Network for Querying Tables Using Natural Language
1. Rasa Paper Reading: A Primer in BERTology
1. TAPAS: BERT-Based Neural Network for Querying Tables Using Natural Language
YouTube
Rasa Paper Reading: A Primer in BERTology (Part 2)
This week we're doing something a little different with our livestream: we'll be reading a paper together! The paper is "A Primer in BERTology: What we know about how BERT works" by Anna Rogers, Olga Kovaleva, Anna Rumshisky. Link: https://arxiv.org/abs/2002.12327…
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 - вовлеченность человека в беседу с чатботом.
Статья | Блогпост | Опенсорс | Коллаб пообщаться с моделью
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 - вовлеченность человека в беседу с чатботом.
Meta
A state-of-the-art open source chatbot
Today we’re announcing that Facebook AI has built and open-sourced BlenderBot, the largest-ever open-domain chatbot. It outperforms others in terms of engagement and also feels more human, according to human evaluators.
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
Для финального сравнения моделей использовали способ 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
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 будет очень хороший шанс выбраться из болота установки таймеров и прогнозов погоды.
Обсуждеение видео лекции ЛеКуна о 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 будет очень хороший шанс выбраться из болота установки таймеров и прогнозов погоды.
YouTube
ICLR 2020: Yann LeCun and Energy-Based Models
This week Connor Shorten, Yannic Kilcher and Tim Scarfe reacted to Yann LeCun's keynote speech at this year's ICLR conference which just passed. ICLR is the number two ML conference and was completely open this year, with all the sessions publicly accessible…
С просторов ODS (спасибо человеку с ником Saddler)
100+ курсов на Coursera полностью бесплатно (с сертификатом).
Из того, что мне понравилось:
1. Google Cloud Platform Fundamentals for AWS Professionals
1. Analysis of Algorithms
1. Algorithms, Part II
1. Tricky American English Pronunciation
100+ курсов на Coursera полностью бесплатно (с сертификатом).
Из того, что мне понравилось:
1. Google Cloud Platform Fundamentals for AWS Professionals
1. Analysis of Algorithms
1. Algorithms, Part II
1. Tricky American English Pronunciation
Online Courses Galore
100+ Coursera Certificate Courses Free Until 31st December - View the list
List of 100+ Free Coursera certificate courses, learn new skills from top Universities, Colleges, Organizations. Credit card not required
Кстати ещё хочу к этому списку добавить Data Science Math Skills
Релевантно для тех, у кого не было профильной математики в универе. На удивление для себя недавно обнаружил, что не всем легче читать LSTM как 4 формулы, чем как странную картинку.
Релевантно для тех, у кого не было профильной математики в универе. На удивление для себя недавно обнаружил, что не всем легче читать LSTM как 4 формулы, чем как странную картинку.
Coursera
Data Science Math Skills
Offered by Duke University. Data science courses contain ... Enroll for free.
Тут в чате опять годнота (спасибо @someotherusername)
Узнал про себя, что я советская пропаганда 😂
По аналогии с thispersondoesnotexist
https://www.thisworddoesnotexist.com
Узнал про себя, что я советская пропаганда 😂
По аналогии с thispersondoesnotexist
https://www.thisworddoesnotexist.com
Thisworddoesnotexist
This Word Does Not Exist
We use artificial intelligence to make up new English words.