AbstractDL

@abstractdl


Коротко про классные штуки в CV, NLP и AI 🤷‍♂️

AbstractDL

04 Oct, 20:50


А почему это я тут такой счастливый? Потому, что я только что получил PhD!

AbstractDL

29 Sep, 10:24


WavTokenizer: SOTA токенизатор аудио

Кажется, это прорыв. Ему хватает всего 75 токенов в секунду, чтобы поставить рекорд в качестве реконструкции речи. При этом всё работает довольно сносно и для 45 ток/с. Предыдущие решения даже близко не стояли!

Как авторам это удалось? Просто набор удачных технических трюков поверх Encodec:
- отказались от dilated conv в декодере в пользу Fourier Transform
- расширили окно внимания до 3 сек
- оптимальная инициализация кодбука через k-means
- единый квантайзер вместо иерархического
- большой словарь аудио-токенов (2^12)

Такие токенизаторы используются для Text-to-Speech моделей, для мультимодальных LLM (GPT-4o) и для генерации музыки. Код и веса в открытом доступе.

Статья, GitHub, demo, Hugging Face

AbstractDL

25 Sep, 18:33


Вышла Llama 3.2 — с акцентом на мультимодальность (vision). Также появились версии на 1B и 3B параметров.

AbstractDL

24 Sep, 16:39


Апдейт моделей Gemini 1.5 Pro & Flash

Вышла в свет очередная вещь, над которой я работал летом – обновление основных моделей Gemini. Из хайлайтов: +8% MMLU Pro, +23% 👽 на Hendrycks MATH, +10% на GPQA Diamond для Flash модели.

Цена на Gemini 1.5 Pro порезана больше чем в два раза. Также добавили Gemini 1.5 Flash 8B в Gemini API и Google AI studio.

AbstractDL

24 Sep, 13:18


https://huggingface.co/glif/how2draw

крайне любопытная lora how2draw

Ценность опенсурса в возможности FT. На апи и подписках зарабатывают и окупают модели еденицы, а ценность которую можно утащить из опенсурса велика - хороший пример это SD комьюнити которое стало автономно от моделей и создало столько инфраструктуры что можно конкурировать с MJ(особенно если знаешь что нужно)

AbstractDL

12 Sep, 18:16


o1 — новая модель от OpenAI, которая думает перед ответом

Вроде бы это совсем новая модель, дообученная при помощи RL лучше выполнять какое-то подобие Chain-of-thought. При этом процесс размышлений по дефолту скрывается от пользователя.

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

Мне повезло получить ранний доступ, и я протестил задачу, которую GPT-4o решала плохо. Как видите, o1 справилась намного лучше.

P.S. И обратите внимание, что это не совсем "Chain-of-thought", это скорее проговаривание вслух.

Техрепорт

AbstractDL

11 Sep, 17:29


Attention Heads of LLM — A survey

Трансформеры это всё ещё чёрный ящик или уже нет? За последние несколько лет мы сильно приблизились к пониманию функций отдельных компонент языковых моделей, лучше понимаем, как они приходят к тому или иному выводу, и главное — как можно влиять на процес их "размышений", редактировать отдельные факты в памяти и многое другое.

В этой статье собрали в кучку всё, что известно о функциях голов внимания в LLM с очень красивыми схемами и таблицами. Вот только небольшая часть:
- Associative Memories Head
- Truthfulness Head
- Semantic Induction Head
- Global Retrieval Head
- Subword Merge Head

Поэтому, если хотите погрузиться в интерпретируемость трансформеров — очень рекомендую полистать этот обзор.

Статья

AbstractDL

10 Sep, 22:18


Классный хабр от tech_priestess про внутреннюю размерность фигур и пространств эмбеддингов. TwoNN подход сейчас часто используется для анализа языковых моделей (в т.ч. в одной из моих работ — The Shape of Learning)

AbstractDL

03 Sep, 13:50


🔺 Transformer Explainer

Классная интерактивная визуализация про то, как работает трансформер.

Можно покрутить температуру и посмотреть как меняются вероятности распределения следующего токена. Можно вбить свой текст. Можно просто почитать статью под диаграммой.

Напомню также про классическую статью Illustrated Transformer

👉 Визуализация | GitHub | Видео

AbstractDL

03 Sep, 09:46


Кстати, вот ещё хорошие новости для всех, кто интересуется темой mechanistic interpretability. Появились записи докладов с ICML-ного воркшопа, специально посвященного этой теме!
Вот они, слева направо:
https://slideslive.com/icml-2024/workshop-on-mechanistic-interpretability
Я лично собираюсь глянуть доклад по статьям Dissecting query-key interaction in vision transformers (это Spotlights 1), Decomposing and Interpreting Image Representations via Text in ViTs Beyond CLIP (Spotlights 2) и The Geometry of Categorical and Hierarchical Concepts in Large Language Models (Oral). А вы?

P.S.Очень удобно, что тут можно прокликивать слайды с правой стороны каждого видоса, и красный кружок на видосе будет показывать таймкод, который соответствует данному моменту пррзентации. ☕️

#объяснения_статей

AbstractDL

02 Sep, 17:37


CoRe: лучший способ "клонирования" внешности или концепта при помощи диффузии

Существует 3 больших направления для клонирования внешности:
1. Обучение отдельного текстового эмбеддинга (Textual Inversion)
2. Дообучение UNet (DreamBooth)
3. IP-adapters

В этой работе (не впервые) попробовали скрестить Textual Inversion и DreamBooth, но на этот раз сделали это по-умному. Оказывается, что вот этот выученный "псевдотекстовый" эмбеддинг спецтокена концепта очень странный — у него большая норма, а ещё он перетягивает всё внимание на себя (см. картинку), искажая аутпуты на соседних токенах (в энкодере). Такая особенность выученных эмбеддингов ломает не только качество генерации, но и понимание сложных промптов.

Чтобы решить эту проблему, авторы предлагают хитрую регуляризацию — косинусное "стягивание" эмбеддингов на выходе текстового энкодера между обычным промптом без спецтокена концепта и таким же промптом со спецтокеном. Дополнительно они через MSE лосс минимизируют искажение attention-масок на слоях UNet (между двумя вариантами промптов). А чтобы победить неконтролируемый рост нормы эмбеддинга концепта, они его рескейлят на каждом шаге оптимизации. Само обучение делят на две части — сначала учат эмбеддинги, а потом уже размораживают UNet.

Судя по примерам и метрикам, это намного превосходит всё, что было раньше! Код обещают скоро выложить, но идея настолько простая, что её можно и самому быстренько имплементировать.

Статья

AbstractDL

25 Aug, 16:08


To Code, or Not To Code? Насколько важны данные с кодом в претрейне LLM? (by Cohere)

Да, код нужен, и очень сильно. На самом деле уже довольно давно был консенсус на этот счёт, но подробно влияние кода не изучали.

Теперь можно ставить точку в этом вопросе — в Cohere проделали очень подробный ablation study: данные с кодом улучшают не только кодинг и ризонинг, но и даже world knowledge! То есть после их добавления в претрейн модели лучше запоминают текстовые знания.

Статья

AbstractDL

27 Jul, 11:55


MINT: крупнейший мультимодальный датасет на 1T токенов (by Salesforce)

Это хорошо очищенный датасет, в котором текст и изображения расположены в естественном порядке. Данные представлены не в виде отдельных пар "текст-картинка", а так, как мы обычно их встречаем в реальной жизни — текст и изображения идут вперемешку, дополняя друг друга. Датасет включает в себя HTML-страницы, PDF-файлы и статьи с ArXiv, а также содержит 3.4B изображений.

Статья, датасет

AbstractDL

23 Jul, 15:39


Llama 3.1 — 8B, 70B и 405B версии

Старшая модель бьёт даже GPT-4 и Claude-3.5 на ряде бенчмарков. Но самое крутое — вместе с этим релизом Meta выкладывает СУПЕР подробный техрепорт на 74 страницы (самый детальный из всех которые я когда-либо видел). Там описано всё: от сбора и состава датасетов до мультимодальных адаптеров. Это значительно ускорит развитие языковых моделей!

Блог, техрепорт, Huggingface

AbstractDL

08 Jul, 18:20


Confidence Neurons: у каждой LLM есть нейрон, который регулирует «температуру» генерации

Авторы этой работы нашли несколько конкретных нейронов, которые вообще ничего не делают, кроме как меняют энтропию распределения логитов. При этом на предсказание следующего токена они не оказывают никакого влияния, т.к. работают исключительно в null space финальной LM головы.

Грубо говоря, активируя эти нейроны, языковая модель «регулирует» температуру своих предсказаний через LayerNorm. А если эти нейроны специально отключить, то LLM будет всегда на 100% уверена в своих ответах.

Статья

AbstractDL

20 Jun, 14:43


Claude показали новый релиз своей "самой умной" модели Claude 3.5 Sonnet. Это первый релиз в линейке 3.5, но любопытно: раньше Sonnet был слабее Opus. Новый Sonet лучше не только Opus, но и (по собственным тестам) GPT4o. Кроме того, в Sonnet появились визуальные запросы (например по разбору изображений и видео).

Я в такие тесты не верю, буду проверять сам.

https://www.anthropic.com/news/claude-3-5-sonnet

AbstractDL

18 Jun, 10:03


Goldfish Loss: заставим LLM запоминать смысл, а не текст

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

Оказалось, что одним из самых эффективных способов борьбы с таким поведением — это простой дропаут лосса, то есть маскирование ошибки для случайного сабсета токенов в тексте (~25%). Таким образом модель не научится дословно воспроизводить то, что видит. Даже после 10 эпох дообучения на Гарри Поттере "плагиат" в генерациях модели остаётся на уровне нуля. А главное, что такая регуляризация не ухудшает финальные метрики, в том числе на претрейне.

Статья, GitHub

AbstractDL

22 May, 07:50


Your Transformer is Secretly Linear

Мою новую статью приняли на ACL 🎉. Мы обнаружили, что большинство слоёв языковых моделей линейны на 99%! Это значит, что из любого слоя LLM можно выкинуть этэншн, нормализацию и даже feed-forward с активацией, оставив лишь один nn.Linear(), а модель будет работать, будто бы ничего не поменялось!

Такая неадекватная линейность наблюдается во всех трансформерах-декодерах (GPT, Llama, Mistral, и тд.). Мы предполагаем, что это связано с feature triggering режимом, то есть нелинейность "вспыхивает" на очень небольшом количестве важных токенов (что-то похожее было в статье Deja Vu). Поэтому совсем уж много слоёв таким образом заменить нельзя, нелинейность хоть сама по себе и крошечная, но её влияние очень быстро накапливается.

Ещё из интересных наблюдений — по мере претрейна нелинейность растёт, а во время файнтюнинга (или RLHF) она всегда падает. Исходя из этого, мы придумали регуляризацию, которая немножко усиливает нелинейность и бустит метрики на претрейне.

P.S. Вместе с кодом для оценки линейности слоёв трансформеров мы выкладываем и код к прошлой нашей статье про анизотропию и внутреннюю размерность.

Статья, GitHub, хабр

AbstractDL

14 May, 13:27


Мой маленький тест на AGI. Раньше с такими шифрами хорошо справлялись только модели по типу PIXEL.