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

Связь: @dropout05 (рекламы нет)
Download Telegram
Forwarded from AI для Всех
Андрей Карпати (ex Tesla AI) выложил новую лекцию

«!!!! Итак, я записал (новую!) 2h25m лекцию "The spelled-out intro to neural networks and backpropagation: building micrograd".
Это кульминация примерно 8 лет навязчивых мыслей о том, как лучше объяснить нейронные сети и обратное распространение.

Если вы знаете Python, смутно помните, как проходили производные в средней школе, посмотрите это видео и к концу не поймете обратное распространение и суть нейронных сетей, тогда я съем ботинок :D»

Смотреть
👍38🔥7😱2👎1
Новости NLP одной строкой #9

1. Stable Diffusion уже в Diffusers от HuggingFace. По слухам релиз весов будет на след неделе.
1. Бесплатный (но медленный) плейграунд OPT-175B
1. Топовая вводная лекция по backpropagation от Андрея Карпати.
1. PALM-540B может декомпозировать задачи для роботов, если взвесить генерацию с помощью value function. Начинаю верить что через 5 лет роботы будут повсюду и полезны.
1. Тред TIm Dettmers о том как работает int8 в Transformers. TL;DR — часть сетки квантизуется, а часть (аутлаеры) нет. Особенно важно для моделей > 6B
1. Классный трюк как можно использовать изображения Dalle-Mini как сид Stable Diffusion и получать безумные но реалистичные изображения.
1. Отличный блогпост об интерпретируемости моделей и о связи между преобразованием фурье и grokking.
👍31
🚀 @SBERLOGABIG online seminar on data science:
👨‍🔬 Татьяна Шаврина (AIRI, Sberdevices) «Многоязычное приключение или как мы учили mGPT: многоязычная модель GPT-3 для 61 языка мира»
⌚️ Четверг 25 августа, 18.00 по Москве

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

О докладчике: Татьяна Шаврина,
Главный эксперт по технологиям, RnD NLP, SberDevices
Руководитель исследовательских проектов, AI Research Institute.
Автор тг канала: @rybolos_channel - подписывайтесь !

Google calendar link

Ссылка на зум будет доступна на канале: https://t.iss.one/sberlogabig перед началом доклада - подписывайтесь!
👍14👎12
This media is not supported in your browser
VIEW IN TELEGRAM
Новости NLP (и не только) одной строкой #10

1. Using AI to generate fashion — как использовать DALL-E inpainting в видео. Просто добавьте EbSynth + DAIN.
1. AI Test Kitchen от Google — попытка гугла выкатить демки их нейросеток (например LaMDA или PARTI) обычным людям. Записаться в бету можно уже сейчас.
1. Landing a job at top-tier AI labs — хороший блогпост о том как выучить DL и пройти в DeepMind всего за 4 года. Спойлер — это сложно.
1. Statement of purpose Abudakar Abid (фаундер Gradio) который позволил ему пройти в MIT и Stanford.
1. Training Data Extraction Challenge — соревнование по экстракции данных из языковых моделей.
1. Lexica — a search engine for AI-generated images and prompts (and seeds).
1. Исследование Anthropic о том как эффективнее всего алайнить языковые модели. RL с human feedback работает лучше всех.
👍29🔥111
Cегодня прочитал Transformer Circuits и это прямо хорошо

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

Теперь немного конкретнее про те вещи которые мне показались интересными.

Проще думать о том как работает трансформер, если смотреть на residual сеть как на основную. Остальные слои от неё отбранчовываются и добавляют/убирают информацию.

Attention heads — независимые друг от друга операторы (даже с учётом mixing matrix) которые переносят информацию из одних токенов в другие.

Дальше работают с упрощённым трансформером без LayerNorm и FFN.

Однослойный transformer можно (нестрого) интерпретировать как биграмную и скип-триграмную языковую модель. Что такое скип-триграммы? Например если у вас есть текст twitter.com/username/status, то [twitter, ..., /] может быть скиптриграммой в которой пропущено /username Авторы показали что в обученной модели такая скиптриграмма сильно повышает вероятность status.

Такой подход позволяет показать ограничения однослойной модели. Например так как триграмма [keep, ...., in] повышает вероятность mind а [keep, ..., at] вероятность bay, то модель также должна повышать верояности [keep, ..., at] -> mind и [keep, ..., in] -> bay. И несколько таких "багов" модели даже нашли.
👍405
Кажется Андрея Карпатого потянуло на образование. В прошлом месяце вышла его лекция по backprop, а теперь лекция по n-gram языковым моделям (count-based и neural)

И будет больше! Вот гитхаб: nn zero to hero
🔥44👍71
Скоро запускается новый ран Deep Learning Foundations от fast.ai 🔥

У fast.ai есть два главных курса:
1. Deep Learning for Coders, которй использует top-down подход где вас в начале учат black box тулзам и как быстро решать задачи, а потом постепенно знакомят с тем как эти black box работают
1. Deep Learning Foundations — отличное продолжение первого курса, которое работает совсем подругому. Bottom-up подход, объясняются самые основы и постепенно вы доходите от бэкпропа до всяких новых методов. Последний раз курс обновлялся в 2019, что по меркам DL довольно давно.

Новая итерация Deep Learning Foundations будет включать пару новых топиков, в том числе сontrastive learning, latent variables, и диффузионные модели такие как Stable Diffusion.

Курс будет доступен бесплатно "early 2023". Есть платная версия с доступом в октябре (проходить курс вместе с тем как он записывается в University of Queensland), но это стоит $500 😒, что как-то не очень доступно.

В любом случае курсы от fast.ai (даже их старые версии) это неплохой вариант быстро въехать в DL или взглянуть на DL под новым углом. Несмотря на то что у fast.ai много questionable coding practices, мне всё ещё кажется что курс очень интересный и сильно отличается от всех остальных.
👍24🔥53
Ускоряем нейросетки с помощью PyTorch 1.2 и nvFuser

Кто такой этот ваш nvFuser? Это новый компилятор который заменяет/дополняет TorchScript и позволяет фьюзить несколько GPU операций в одну. Это особенно хорошо работает с последовательностями поэлементных операций, таких как сложные функции активации или последовательность простых операций как bias->dropout->layerNorm

Чем это отличается от гугловского XLA? Неплохо умеет работать с dynamic shapes, например если у вас у разных батчей разная длина последовательности, XLA придётся всё перекомпилировать, а nvFuser будет работать нормально. Замедление по сравнению со статическими шейпами есть но оно небольшое (сравните столбики Composite Definition и Random Sizes).

А вот тут официальный туториал от PyTorch
👍17🥰2😢1
1
1
Друзья, сейчас важно помочь с релокацией тем, кто хочет уехать, но не может финансово сделать это в одиночку.

Вероятно многим в канале это не актуально, но прошу об услуге
1. Поделитесь с теми, кому это поможет
2. Поставьте в комментарии к городу, в котором вы находитесь, что вы там, это поможет запустить активность чата
——
Чат для поиска людей, с которыми можно скооперироваться для аренды жилья за границей

https://t.iss.one/friends_for_relocate

Зачем это?
- многие уезжают по одиночке
- многим дорого снимать квартиру на одного
- а если снимать вместе то сильно дешевле
- квартиры уже сильно подорожали (в 2-3 раза) плюс однушки заняты

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

Зовите других людей
- многие не решаются уезжать, потому что уже очень дорого, а зарплата не позволяет
- расскажите им про чат, чтобы они увидели, с кем могут скооперироваться, как могут сэкономить, и наконец решились уехать
👍40💩21🔥4😢3😁21👎1
BigScience announces BigCode project

1. 15B языковая модель для кода
1. Первая задача: сделать хороший большой датасет, причём с оглядкой на лицензии чтобы не было всяких вопросов о GPLv3
1. Вторая задача: разработка новых тулз для эвалюации кодогенерирующих моделей, чтобы они были проще и более доступны
1. Третья задача: исследование всех возможных трюков (включая архитектурные) чтобы сделать инферренс быстрым
1. Деньги на тренировку даёт ServiceNow
1. Если хотите присоединиться к коллаборации, а именно готовы писать код и участвовать в обсуждениях, вот ссылочка
👍16🔥8
Одной строкой #10

1. У Tesla прошёл AI day. Показали робота Optimus, который выглядит кривовато, но утверждают что его сделали за несколько месяцев (из личных источников: около года). Это очень быстро для робототехники, где всё не так сильно меняется как в DL. В отличие от boston dynamics - упирают на автономию, а не на remote control (но пока этого нет). Посмотрим что покажут ещё через год.
1. Сontext distillation - step-by-step reasoning для автолейбелинга, а потом дообуение на этих лейблах но без step-by-step. В результате минимальные потери в качестве, но более быстрый инференс.
1. Large Language Models Can Self-Improve - идея в том чтобы модель сгенерировала несколько chain of thought, после чего по majority vote выбирается правильный ответ, потом на этом можно обучаться. Докидывает по 4-5 пунктов.
1. Обзор результатов WMT-22 — метрики всё ещё плохие, сравнивать модели между собой становится всё сложнее, тк они становятся лучше. Самая нерешённая задача: низкоресурсный перевод между далёкими друг от друга языками.
1. Dilated Neighborhood Attention Transformer - vision коммьютини начинает знакомиться с различными сопособами sparse attention. В этот раз сделали dialation. Вангую что в будущем все трансформеры будут с каким-то простым sparse-механизмом типо этого или strided + global tokens.
1. Action Transcription - transcription к почти любому видео в интернете. Если у видео есть приложенные captions, то от их просто загрузит, а если нет — использует OpenAI Whisper для транскрипции и перевода на английский. Интерфейс очень забавный — вы создаёте issue на гитхабе со ссылкой, а дальше всё за вас делает github actions.
1. TorchOK - новая библиотечка которая позволяет строить пайплайны для нейросеток. На мой взгяд это чуть более высокоуровневый Lightning, чуть более prod-oriented, с забавным названием.
🔥20👍2😁2
Cold Diffusion: Inverting Arbitrary Image Transforms Without Noise
Bansal et al, [University of Maryland and NYU]
arxiv.org/abs/2208.09392

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

Вместо зашумнения они используют такие операции как блюр, пикселизацию, маскирование и даже "снег" и экстраполяцию между разными изображениями. Главная модификация: зашумление производится не как x = D(x, t - 1), а как x = x - D(x, t) + D(x, t - 1) где D - функция шума, а t - степерь шума.

Результаты (FID) хуже чем у обычной (горячей) диффузии, но картинки выглядят весьма неплохо и методв в принципе работает что может немного противоречить текущей теории.
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Imagen Video: high definition video generation with diffusion models
Ho, Chan, Saharia, Whang, et al. [Google]
Сайт
Статья

🤯 Гугл показал свою модель генерации видео по тексту

Идея относительно простая: текст -> T5 -> видео диффузия -> temporal super-resolution -> spatial super-resolution (x2) -> temporal super resolution (x2) -> spatial super-resolution.

При этом для диффузии в качестве архитектуры используют модифицированный Video U-Net, кторый по аналогии с TimeSformer разделяет attention видео на темпоральный и пространственный attention сокращая сложность вычисления и потребление памяти с O((st)^2) до O(2st).

При тренировки диффузии использовали progressive distilation, то есть сеть в начале обучали дистиллировать t шагов, потом t/2, t/4 и так далее. Такой подход позволяет сильно сократить число требуемых шагов семплирования для получения хорошего изображения/видео.

В отличие от Make-a-Video, Imagen Video использует параллеьные video-text данные (14M пар, внутренний датасет). К этому добавляют LAION-400M и 60M image-text пар (внутренний датасет). Изображение = видео длиной в один фрейм.

Из того что бросается в глаза при просмотре: видео это не просто анимации как в make-a-video, в них зачастую есть какое-то понятное направление, иногда даже нечало и конец. Движения более естественные, физика взаимодействия объектов тоже получше.

Когда вышел DALL-E 2 кажется все говорили что видео следущие. Прошло всего полгода и вот мы тут. Что дальше? text to 3D анимации? text to маленькие 3D игры? Метавёрс?

За наводку спасибо @mishin_learning
🔥112👍2🏆2
Learning to Learn with Generative Models of Neural Network Checkpoints
Peebles, Radosavovic, et al. [Berkeley]
Статья: arxiv.org/abs/2209.12892
Код: github.com/wpeebles/G.pt
Блог: тык

Помните про парадигму learning to learn и всякие оптимитзаторы на основе LSTM? Вот и я не помню, но она оказывается жива и даже показывает забавные результаты.

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

По результатам работают в какие-то тысячи раз быстрее SGD и ADAM, но пробовали только MNIST, CIFAR10 и Cartpole.

Идея забавная, вроде бы авторы даже придумали как её скейлить — просто пилить большие модели на слои во время апдейта (по сути бэкпроп так же делает). А ещё метод назвали G.pt 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🔥5
Building makemore Part 3: Activations & Gradients, BatchNorm
youtu.be/P6sfmUTpUmc

🔥🔥🔥
Новое видео от Андрея Карпатого про функции активации, нормализацию и то как тренировать нейросети лучше и быстрее. Must watch как новичкам так и всем остальным, тк это самая актуальная лекция на эту тему.
🔥38👍4
RL4LMs: A modular RL library to fine-tune language models to human preferences

Помните статьи OpenAI Instruct GPT и Summarizing Books? Они обе использовали фидбек людей и RL для дообучения языковых моделей.

Например в Instruct GPT для того чтобы научить модель лучше следовать инструкциям использовали 👍/👎 пользователей для того чтобы выучить когда модель лучше справляется со своей задачей. После этого использовался reinforcement learning с выученной reward-функцией для того чтобы адаптировать модель. Таким образом очень широкую задачу "следования инструкциям" свели к простой постановки максимизации лайков. Кроме этого показали что RL-подход работает более лучше чем просто файнтюнинг на полученном от пользователей датасете.

В Summarizing Books была другая проблема: заставить разметчиков писать саммари целых книг — очень сложно, долго и дорого, так давайте вместо этого модель будет сама писать саммари, а люди будут просто его оценивать. Дальше та же идея: inverse RL чтобы выучить reward, а потом RL чтобы этот reward максимизировать.

Звучит просто, но RL очень сложно заставить работать, а RL для NLP сложно заставить работать в квадрате. Поэтому сегодняшний релиз RL4LMs от AllenAI это очень крутой шаг в сторону упрощения доступа к этим исследованиям. В либе сейчас имплементированы PPO и NLPO, а также встроен бенчмарк GRUE. Поддерживаются модели 🤗. Выгядит интересно, ещё бы документацию завезли и конфигов поменьше и был бы вообще топ.
🔥14👍5👏2
Одной строкой #11

1. Building makemore Part 4: Becoming a Backprop Ninja — новая лекция Андрея по бэкпропу. Теперь более хардкорно: пишем градиенты через MLP, cross-entropy, BatchNorm. Вы получите максимальную пользу если в начале попытаетесь решить задачки, а уже после этого посмотрите решения в видосе.
1. State of AI Report 2022 — топовый обзор что произошло в области за последний год. Написан довольно доступным языком, must read.
1. Очень math-forward введение в диффузионные модели с кодом на JAX.
1. Deep Dive on Google's Exascale TPUv4 AI Systems🔥 одна из самых подробных статей о TPU которые я видел в открытом доступе. Много интересных деталей, но если хотите просто узнать насколько 2048 TPUv4 быстрее 2048 A100 для трансформеров, то ответ на 15%.
1. Transformers 4.23: добавили несколько моделей включая Whisper и Deformable DETR. Начинают избавляться от pickle, сейчас экспериментируют с Safetensors.
1. A Gentle Introduction to 8-bit Matrix Multiplication — о том как использовать 8-bit с Transformers и экономить 4x памяти по сравнению с fp32.
👍21🔥4
Guess the Instruction! Flipped Learning Makes Language Models Stronger Zero-Shot Learners
Ye et al. [KAIST and LG]
arxiv.org/abs/2210.02969

Люблю простые и работающие статьи — эта как раз одна из них. Обычно когда мы делаем zero-shot learning на языковых моделях мы составляем промпт таким образом: инструкция + вопрос и генерируем ответ. Т0 при обучении так и делал и обучался просто как языковая модель максимизируя вероятность правильного ответа. Потом, для классификации, можно сравнить вероятности всех возможных ответов и выбрать наибольший. Подход работает неплохо, если модель большая.

В этой статье предлагают сделать два небольших изменения которые приводят к большим улучшениям. Во-первых они предлагают добавить unlikelihood loss для того чтобы оучаться на негативных примерах — неправильных ответах/классах, которые мы случайно семплируем из датасета. В результате модель минимизировать L_lm(pos) + L_unlikelihood(neg).

Во-вторых, для выбора класса сравнивают не вероятность класса а вероятность вопроса. То есть не p(ответ | инструкция + вопрос), а p(инструкция | вопрос + ответ).

Предобучаются на сабсете P3 (так же как T0), по результатам получают SOTA на zero-shot BigBench. Также в zero-shot режиме обходят 3-shot GPT-3 (175B).
👍26🔥3👏1