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

Связь: @dropout05 (рекламы нет)
Download Telegram
Forwarded from Vlad Lialin
Я не высказывался на тему текущей войны, но может быть стоит. Я думаю что то, что происходит - это ужасно, бесчеловечно и не приследует ничьих интересов кроме отдельных людей. За новостями о происходящем надо следить и полезно думать, какие действия каждый из нас может сделать, чтобы хотя бы чуть-чуть помочь остановить это безумие. Однако мне кажется что что сейчас важно иметь места которые позволяют уменьшить количество думскроллинга, которого сейчас явно очень много и поэтому постараюсь вернуться к регулярным постам в DL in NLP.

Наш чат не очень живой последнее время, но всё равно попрошу не обсуждать тут войну и политику. Для этого есть более подходящие места.

Как всегда буду рад тут отвечать на вопросы по статьям и NLP вообще если они кого-то интересуют.

Нет войне
👍124💩13
Advanced Topics in MultiModal Machine Learning
cmu-multicomp-lab.github.io/adv-mmml-course/spring2022

Весьма up-to-date курс по мультимодальному обучению от Carnegie Mellon University. В основном обсуждают модальность картинка+текст но говорят немного и про видео. В курсе ней есть как и уже стандартные подходы вроде VL-BERT, так и очень интересный топик по длинным трансформерам и памяти.

Видео нету, но есть очень pdf с очень подробными lecture notes (например вот лекция по длинным трансформерам). Если вы погружаетесь в мультимодальную тему, рекомендую использовать этот курс в качестве гайда. Сам постараюсь почитать.
👍133🔥1
Прикладной DL и матан к сожалению (или к счастью) всё ещё очень далеки. Однако так как на физтехе меня научили любить математику, поэтому вот пара интересных и достаточно вводных материалов по matrix convexity, concentration inequalities, KL-divergence и прочим полезным для теоретического DL штукам. Кванторы и красивые анимации прилагаются.

1. Playing with positive definite matrices – I: matrix monotony and convexity
2. Playing with positive definite matrices – II: entropy edition

И пара более специфичных для DL постов из того же блога:

1. Gradient descent for wide two-layer neural networks – I : Global convergence
2. Gradient descent for wide two-layer neural networks – II: Generalization and implicit bias
🔥13👍6
Очень прикольный проект который генерирует цветовые палитры с помощью предобученных трансформеров / диффузионных моделей. Непонятно насколько это лучше эвристик, но выглядит интересно.

huemint.com

Вот тут описание их подхода: https://huemint.com/about/
🤩6👍4
Я уже как-то писал об учебнике по машинному обучению от Школы Анализа Данных Яндекса. Но тогда в доступе было всего несколько глав. С того времени много чего изменилось и теперь в пособии есть разделы про:

- классические методы обучения с учителем;
- оценку качества моделей;
- основы глубинного обучения.

В учебнике будут и другие главы: про вероятностный подход к ML, обучение представлений и решения сложных задач Data Science, поэтому крайне рекомендую сохранить ссылку, чтобы не пропустить обновления!
👍22
Forwarded from AI для Всех
Открываем жанр History porn.

Андрей Карпати из Tesla решил повторить ту самую сетку Яна ЛеКа(у)на из 1989 года и написал об этом пост (🔥), который читается как смесь исторического детектива и стендап для гиков одновременно.

Короткие выводы основанные на путешествии во времени на 33 года назад: Что бы подумал путешественник во времени из 2055 года о производительности современных сетей?

Нейронные сети 2055 года на макроуровне практически не отличаются от нейронных сетей 2022 года, разве что они больше.

Наши сегодняшние наборы данных и модели выглядят как шутка. И то, и другое где-то в 10 000 000 000 раз больше.

Современные модели 2022 года можно обучить за ~1 минуту, обучаясь на своем персональном вычислительном устройстве в качестве развлекательного проекта на выходных.

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

🔥Пост
👍41
Making Deep Learning Go Brrrr From First Principles
horace.io/brrr_intro.html

Очень классный пост о том как работают GPU. Начинается с того что если вам не хватает скорости, то скорее всего вы залочены по одному из

1. Compute: Time spent on your GPU computing actual floating point operations (FLOPS)
1. Memory: Time spent transferring tensors within a GPU
1. Overhead: Everything else

Наглядно иллюстрирует почему для DL скорость памяти сейчас важна больше чем скорость самого чипа.
👍15
Block-reccurrent transformers
Hutchins, Schlag, et al.
arxiv.org/abs/2203.07852

Возьмите трансформер и поверните его на бок. Сделайте немного рекуррентным и получите новую SOTA на длинном языковом моделировании (ну почти).

Идея это некоторая комбинация LSTM и TransformerXL. Текст чанкают на куски длины 512 и к каждому из них применяется трансформер. Но на вход он берёт не только токены текста, но и стйт-хиддены предыдущего чанка. Выдаёт два вида хидденов — одни как у обычного трансформера, которые дают представления токенов, а вторые — стейт-хиддены которые будет использовать следующий рекуррентный шаг.

Архитектурно моделька состоит из двух трансформеров (часть весов зашерена): вертикальный и горизонтальный.

Вертикальный это обычный TransformerDecoder который на вход принимает последовательность тоенов, а в качестве контекста берёт стейт-хидден предыдушего шага. Выдаёт этот трансформер вектора тоенов. Горизонтальный делает наоборот, вход: стейт хидден, контекст: последовательность слов. Кроме этого в нём есть дополнительный гейт аналогичный LSTM.

Дальше больше странностей: заменяют только один слой трансформера на рекуррентный. Конкретно 10 из 12. Всё остальное обычный трансформер.

По результатам: на языковом моделировании обходят TransformerXL, Memorizing Transformer, Compressive Transformer и Routing Transformer.

Выглядит очень забавно. Такой RNN strikes back. Хотелось бы увидеть больше подобных подходов.
🔥12👍7
Building games and apps entirely through natural language using OpenAI’s code-davinci model
Тык

В посте рассказывают о том, как заставили Codex написать несколько визуализаций/игр на JS. Они все выглядят очень простыми, но все написаны по сути на естественнном языке, без каких-либо ручных корекций кода. Одна из них даже VR.

Все конечно выглядят очень просто, но интересно что в принципе можно сделать чисто на кодексе. Хотелось бы увидеть некий challenge, где люди пытаются написать какой-то проект полностью в режиме "кодекс напиши".
🤔2🔥1
Быстрая подборка NLP новостей

1. Недавно BigScience начал тренировку 176B мультиязычной модели. Код и модель будут публично доступны всем. Модель тренируется на 416 A100 80Gb GPU и тренировка займёт больше месяца. Вот тут можно увидеть tensorboard модели, а вот тут подробнее почитать про неё и посмотреть на код.
2. Аннотированный RETRO (просто статья с заметками) от labml.ai
3. Статья-рецепт о zero-shot адаптации моделей на родственные языки (например с немецкого на шведский немецкий). Очень важным трюком оказалось добавлять посимвольный шум во время тренировки.
4. Новый запуск MIT 6.S191 Intro to Deep Learning. Первые две лекции уже доступны на YouTube.
5. DeepMind Gopher зафайнюнили так, чтобы модель отвечала на вопросы цитируя источники. Подход очень похож на WebGPT, но в отличие от него Gopher напрямую напрявляет запрос пользователя в поисковик, а потом работает с сырыми текстами которые нашлись вместо того чтобы интерактивно пытаться найти ответ.
🔥13👍5
Завтра в 6 вечера по Москве выступаю в сберлоге, будем обсуждать RETRO и модели с памятью. Подключайтесь.
🚀 @SBERLOGABIG online seminar on machine learning:
👨‍🔬 Vlad Lialin «Современные модели с памятью. Начало новой парадигмы? »
⌚️ Четверг 24 марта, 18.00 по Москве

О докладчике: Влад - автор одного из лучших каналов в телеграмме по Natural Language Processing - "DL in NLP" (@dlinnlp) - подписывайтесь !

В 2019 GPT-2 изменил NLP навсегда. Впервые подход "больше данных, больше слоёв" начал работать для языка. 2020 принёс GPT-3, который поражал нас своими размерами ещё больше. Постепенно гигантские модели стали практически повседневными - у каждой большой компании есть одна или две - но тренировать их становится всё сложнее.

Всего несколько месяцев назад DeepMind выпустил модель RETRO. Её особенность заключается в том, что несмотря на небольшой по современным меркам размер (7B), она обходит GPT-3 (175B) и Gopher (280B) на большом числе задач. Каким образом? Кроме информации заключенной в параметрах нейросети, RETRO обращается к огромному текстовому корпусу в котором ищет похожие тексты. Эти похожие тексты подаются в языковую модель вместе с обычным входом, который языковая модель должна продолжить. Таким образом RETRO может "подсмотреть" какую-то информацию которую никогда не видела или не запомнила из этой внешней базы данных.

На встрече мы разберём предшествовавшие модели, такие как KNN-LM, подробно разберём саму RETRO и как она работает и пофантазируем как такой подход может потенциально изменить NLP в 2022.

Ссылка на зум будет доступна в этом канале: https://t.iss.one/sberlogabig ближе к началу доклада.
Подписывайтесь на канал https://t.iss.one/sberlogabig ! Интересные материалы и увлекательные доклады.👍
👍12🔥6
Наша презентация в сберлоге закончилась, а тем временем идёт Ask Me Anything от BigScience на реддите. Можно зайти почитать ответы на вопросы или задать свои.
This media is not supported in your browser
VIEW IN TELEGRAM
У Майкрософт какое-то время назад вышла статья про µTransfer – эффективную технику подбора гиперпараметров для гигантских нейросетей

In a nutshell, сначала они придумали, как более эффективно скейлить веса моделей при инициализации и апдейте, так, чтобы не взрывались и не затухали градиенты. Потом оказалось, что при такой параметризации можно ‘переносить’ гиперпараметры – сначала найти наилучшие значения для тренировки модели поменьше, и потом перенести их на большую модель. И теоретически, и эмпирически оказывается, что оптимальные значения гиперпараметров для обучения будут +- близки при таком скейлинге, то есть, например, оптимальные значения learning rate для большой и маленькой модели будут совпадать. В частности это хорошо работает при увеличении width сетки (числа нейронов в одном слое), но и для глубины, батчсайза и sequence length работает тоже

Авторы так перенесли параметры обучения GPT 40M на GPT 6B, и их модель побила качество модели такого же размера на NLU задачах
👍30
Интересно видеть много новых работ в которых пытаются предсказать гиперпараметры и перфоманс больших моделей. Постфактум абсолютно очевидно, что сейчас многие беспокоятся об этом, тк хотелось бы скейлить моедли эффективно.

Статья про µTransfer даёт нам очень интересный и теоретически подкреплённый взгляд на то как выбирать lr, beta1, beta2 и параметры инициализации (к сожалению только эти гиперпараметры) для моделей. С учётом того что метод очень легко имплементировать (см картинку), ожидаю что через пару лет он будет дефолтом во всех фреймворках.

В пару дней назад DeepMind опубликовал статью, где они исследовали tradeoff между размером модели, датасета и FLOPS. Главное их заключение в том, что вообще говоря при фиксированном компьюте мы должны делать модели чуть-чуть поменьше и давать им больше данных, чем мы делаем сейчас. Для того чтобы это продемонстировать они тренируют модель Chinchilla 70B, которая показывает себя лучше чем Gopher 280B. Однако тут все не так чисто, тк сетап заметно отличается от Gopher: используют AdamW, другую токенизацию и float32 для параметров оптимизатора.

Вангую что в этом году будет 2-3 статьи-ревью исследований по скейлингу моделей.
👍2
muTransfer
OpenAI выпустил DALL-E 2
openai.com/dall-e-2
vimeo.com/692375454

Основная идея: использовать эмбеддинги CLIP для генерации вектора текста, обсуславливаться на этот эмбеддинг при генерации изображения. Для генерации используют не языковую модель на VAE-токенах а диффузию (GLIDE).
Судя по промо-материалам, модель будет доступна по API.
👍5