AbstractDL – Telegram
AbstractDL
11.5K subscribers
244 photos
16 videos
282 links
Коротко про классные штуки в CV, NLP и AI 🤷‍♂️
By Anton Razzhigaev
Download Telegram
Channel created
Всем привет!
У меня появилась потребность транслировать свои мысли и знания в массы 🤷‍♂️

На этом канале вы найдёте:
📝 обзоры актуальных статей по Deep Learning
👨‍💻 много картинок и гифок
🔮 ссылки на крутые AI штуки
⚙️ мои эксперименты с этими штуками
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 DINO 🦖

Facebook AI представила метод самообучения для моделей Vision Transformer.

Ребята из Facebook AI предположили, что трансформеры выстрелили в NLP именно из-за использования self-supervised pretraining (BERT, GPT), а в CV всякие ViT используют для обучения разметку, которая портит всю магию.

В итоге они придумали DINO (self-DIstilation with NO labels). Эта штука ОЧЕНЬ сильно бустит ViT и даже позволяет полностью без разметки (даже без лэйблов) научиться сегментировать объекты на картинках! По сути сегментация извлекается из attention maps. А если потом дообучать или хотя бы использовать фичи от замороженной модели то вообще получаем SOTA результаты на куче задач!

Код и предобученные модели выложены на GitHub.
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
DINO 🦖 step by step

1. Берём две одинаковые модели с разными инициализациям, одну называем учитель, вторую ученик.
2. Подаём на вход обеих моделей разные кропы одной и той же картинки.
3. Центрируем аутпуты на ноль и применяем софтмакс с температурой.
4. Считаем CrossEntropyLoss между аутпутами учителя и ученика.
5. В учителя градиенты не пускаем, учится только ученик.
6. Веса учителя обновляются как экспоненциальное сглаживание весов ученика по времени.
7. Profit!
This media is not supported in your browser
VIEW IN TELEGRAM
StyleCLIP

Что будет если соединить CLIP и StyleGAN?
Можно будет генерировать и модифицировать лица по текстовому описанию!

Как это работает?
1. Берём исходную картинку и инвертируем её стайлганом, находя соответствующий латентный вектор.
2. Итеративно оптимизируем вектор лица так, чтобы CLIP говорил, что она похожа на текстовое описание.
3. Не забываем про регуляризацию.
4. Готово :)

Статья, GitHub, Colab.

P.S. Я тоже потыкал в их колаб и получил пару криповых видосов. Угадайте какой текст я использовал в примере ниже😅
🔥1
FaceX-Zoo: A PyTorch Toolbox for Face Recognition

Это очень крутая библиотека для распознавания лиц. Кажется, что в ней собрано вообще всё: и фейс детекторы, и алайнеры, и тесты, и, собственно, face recognition модели (в т.ч. предобученные).

Теперь, чтобы приступуть к серьёзной работе с распознованием лиц, достаточно просто сделать git clone.

Статья, гитхаб
Наконец дошли руки до GPT-3.

Первым делом решил проверить, действительно ли она плюётся чужими персональными данными.

Попросил дописать фразу «The phone number of Joe Biden is», и GPT-3 выдала какой-то номер. Загуглил — это реально существующий телефонный номер, хоть и не президента США.

Судя по всему, OpenAI сейчас активно использует бетта-тестеров для того чтобы научиться фильтровать такой sensetive content.
This media is not supported in your browser
VIEW IN TELEGRAM
ГАНы принесли фотореализм в GTA

На самом деле, ничего особенного, просто красивый и аккуратный стайл трансфер без артефактов, да ещё и консистентный по времени.

Такого результата удалось добиться за счёт использования дополнительной информации от движка игры. Они скармливают сетке не только кадры GTA V, но и промежуточные результаты рендеринга: depth map, semantic label map, информация о свойствах поверхностей и тд.

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

Статья, GitHub (пока он пустой)
This media is not supported in your browser
VIEW IN TELEGRAM
Hugging Face 🤗 наконец будут поддерживать и Computer Vision модели!

Ура! Мои любимые поставщики предобученных и легко запускаемых моделей добавили всё самое лучшее из computer vision в новой версии Hugging Face v4.6.0.

Там уже есть и ViT (GoogleAI), и DeiT (FacebookAI), и CLIP (OpenAI)!
🔥Diffusion Models Beat GANs on Image Synthesis (OpenAI)

В очередной раз убеждаюсь, что эпоха ГАНов подходит к концу. Проблемы с «дырявым» распределением (статья) и нестабильностью обучения делают ГАНы всё менее привлекательными для исследователей. Появляются крутые генеративные методы, которые, скорее, ближе к автоэнкодерам, чем к состязательным сетям.

В этой статье OpenAI используют диффузионную модель для conditional и unconditional генерации изображений (новая SOTA на ImageNet). Качество картинок действительно поражает! Особенно, если сравнить с предыдущими работами (BigGAN).

Статья, GitHub

P.S. Как работают диффузионные модели я расскажу в следующем посте.
Diffusion models step-by-step:

В продолжение к предыдущему посту.

Обучение:
1. Берём картинку и добавляем гауссовый шум.
2. Учим модель по зашумлённой картинке восстанавливать ШУМ. Да, именно шум. То есть наша модель - это экстрактор шума из зашумлённой картинки. Здесь надо обратить внимание, что, если вычитать аутпут из инпута, то это будет работать как денойзинг.
3. Иногда добавляем мало шума, иногда много. Иногда так много, что картинка полностью теряется.

Генерация:
1. Берём рандомный шум.
2. Пропускаем его через модель и вычитаем из него же, то есть немного денойзим чистый шум.
3. Добавляем чуть-чуть нового шума.
4. Продолжаем денойзить и чуть-чуть зашумлять, пока не появится картинка.

P.S. Для того, чтобы убедиться, что это работает, пришлось самому на коленке запрогать эту штуку.
Media is too big
VIEW IN TELEGRAM
Что будет, если обучить нейронку (StyleGAN-2) генеририть картинки под музыку? Будет очень красиво)

GitHub, модель