abstractdl | Unsorted

Telegram-канал abstractdl - AbstractDL

11507

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

Subscribe to a channel

AbstractDL

Купил подписку на чатгпт за 200$. Модель так долго думает, что даже прогресс бар теперь есть. Посмотрим, стоит ли она своих денег.

Читать полностью…

AbstractDL

Вышла Llama 3.3!

70B модельку дотюнили так, что она порами обгоняет 405B. Особенно большой прирост на математике и кодинге, в которых Llama традиционно была послабее. В этот раз релизят только 70B, других размеров и VLM нету.

Веса

@ai_newz

Читать полностью…

AbstractDL

LLM знают, чего именно они не знают

Эх, когда-нибудь я допишу большой хабр про механистическую интерпретируемость и Sparse Auto-Encoders (SAE), а пока, будет только небольшой разбор крутейшей свежей статьи от отцов-основателей этой области Javier Ferrando, Neel Nanda, et al. про самоконтроль галлюцинаций в LLM.

Можно ли определить заранее, выдаст модель галлюцинацию на какой-то промпт или ответит осознанно? Похоже, иногда это возможно. Авторы обнаружили, что когда LLM видит какую-то сущность в запросе (имя человека, название песни и тп), то внутри неё активируются механизмы для проверки своих же знаний, что-то вроде «а есть ли у меня в весах что-то про Steve Jobs или нет?». И обычно у LLM это работает довольно неплохо, в активациях есть линейные направления (латенты SAE), которые отвечают за это разделение «известная/ неизвестная» сущность. На картинке к посту можно видеть, как активируются признаки на реальном и вымышленном текстах.

Оказалось, что этот же латент отвечает и за «refusal» поведение, когда модель/ассистент отказывается отвечать на запрос и бросается заглушкой вроде «As a large language model I don’t have knowledge about blablabla». Подавление неправильного ответа происходит через блокирование специализированной головы внимания, отвечающей за извлечение знаний о сущностях (да, у каждой LLM есть отдельная голова на каком-то конкретном слое для этого). А главное, контролируя это латентное направление в языковых моделях, можно вручную регулировать баланс между галлюцинациями и отказами отвечать.

Все эксперименты проводились на Gemma 2B и 9B, так как для каждого их слоя обучены и опубликованы SAE — Gemma Scope.

Статья

Читать полностью…

AbstractDL

Emergent Properties With Repeated Examples (by FAIR)

Что лучше, прогнать побольше данных за 1 эпоху или взять данных поменьше, но сделать больше эпох (повторений)? Очень актуальный вопрос, учитывая, что доступные текстовые данные скоро закончатся, и LLM по сути прочитают весь интернет. По разным оценкам, сейчас доступно ~90T токенов на английском языке, а для обучения llama-3 уже использовали 15Т — лимит не так уж и далеко.

Похоже, что для трансформеров повторения в обучающих данных могут быть даже полезнее, чем "бесконечное" количество разнообразных данных. Авторы этой статьи изучили как связано качество моделей на синтетических задачах (наибольший общий делитель, умножение по модулю, поиск с.з. матриц) с долей повторений в обучении при фиксированном компьюте. И оказалось, что повторения в датасете критически важны для обучения. Если нет повторений, то некоторые задачи вообще не решаются, сколько бы данных вы ни показывали! Повторения приводят к особому режиму обучения, без которого модель не всегда способна прийти к генерализации. Чем-то напоминает гроккинг, но на гораздо меньшем количестве шагов.

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

Кстати, очень похожий эффект я видел в статье про мультиязычность — там пришли к выводу, что для лучшей работы LLM на нескольких языках сразу, в обучении обязательно должно быть 90% примеров на "доминирующем" языке. Увеличение доли мультиязычных данных выше 10% сильно вредит этой самой мультиязычности.

Статья

Читать полностью…

AbstractDL

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

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

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

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

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

Читать полностью…

AbstractDL

Апдейт моделей 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

АХАХА что больше 9.11 или 9.8? o1 сначала ответила неправильно, но потом осозналa ошибку и передумалa 😁

Wait a minute—that contradicts our initial answer!

Читать полностью…

AbstractDL

Attention Heads of LLM — A survey

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

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

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

Статья

Читать полностью…

AbstractDL

🔺 Transformer Explainer

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

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

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

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

Читать полностью…

AbstractDL

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

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

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

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

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

Статья

Читать полностью…

AbstractDL

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

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

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

Читать полностью…

AbstractDL

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

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

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

Статья

Читать полностью…

AbstractDL

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

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

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

Статья, GitHub

Читать полностью…

AbstractDL

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

Читать полностью…

AbstractDL

StoryDiffusion: генерация консистентных наборов изображений без дообучения

Если вам нужно сгенерировать последовательную историю из фотографий, чтобы везде чётко прослеживалась единая локация, а главные персонажи не меняли одежду и причёску от фото к фото, то StoryDiffusion — именно то, что вам нужно.

Идея гениальна в своей простоте — ничего даже учить не нужно, только заменить блок self-attention на версию, которая "смотрит" на соседние фотографии в батче. Оказалось, этого более чем достаточно, чтобы генерации стали согласованными между собой.

StoryDiffusion идеально подходит для создания комиксов и даже видео (нужно только интерполировать сгенерированные ключевые кадры, что авторы и делают). Код уже в открытом доступе! Должно работать почти с любыми обученными диффузионными моделями.

Статья, GitHub, HuggingFace

Читать полностью…

AbstractDL

OpenAI официально показали Sora!

Доступно будет всем подписчикам ChatGPT - и Plus и Pro. Дают кредитов на до 50 генераций в месяц Plus подписчикам и до 500 быстрых генераций Pro подписчикам. Pro подписчики с более 500 генераций попадают в "медленную очередь".

Длина видео всё таки от 5 до 20 секунд (для Plus максимум 5), а разрешение от 480p до 1080p (Plus подписчики ограничены 720p). На более длинные видео и видео разрешения уходит больше кредитов. К видео можно применять стили и создавать свои.

Показали Storyboard - продвинутый инструмент позволяющий режиссировать видео. К примеру можно попросить Sora сгенерить видео человека, который на пятой секунде видео машет рукой.

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

Модерация сейчас чрезмерно строгая, но OpenAI обещают постепенно снимать ограничения.

sora.com

@ai_newz

Читать полностью…

AbstractDL

Слухи оказались правдивыми - OpenAI запускает подписку за 200 долларов в месяц

Подписка даст доступ к o1 pro режиму - модели позволят дольше думать над запросами. Также дают неограниченный доступ к o1, o1-mini и Advanced Voice Mode.

Ещё o1 выходит из превью, релизная версия принимает на вход картинки и заметно лучше в математике и кодинге. Плюс она лучше понимает сколько нужно думать над таском - над простыми запросами теперь будет думать быстрее, над сложными - больше.

А ведь ещё ходили слухи о подписке за $2k в месяц ☠️

@ai_newz

Читать полностью…

AbstractDL

Mixture of Parrots: Experts improve memorization more than reasoning

Авторы замечают, что когда они проводили абляции моделей с одинаковым количеством параметров на разных задачах, MoE модель при таком же количестве параметров, как и dense модель, показывает себя хорошо на World Knowledge, но сильно проседает по математике и reasoning по сравнению с dense моделью.

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

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

Лично мне хотелось бы чуть больше абляций с разной глубиной плюс абляций reasoning с одинаковой широтой модели, но время у авторов пейпера не бесконечное. Скорее всего, увидим это в каких-то follow-up.

Пейпер

@ai_newz

Читать полностью…

AbstractDL

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

Читать полностью…

AbstractDL

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

Читать полностью…

AbstractDL

https://huggingface.co/glif/how2draw

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

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

Читать полностью…

AbstractDL

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

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

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

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

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

Техрепорт

Читать полностью…

AbstractDL

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

Читать полностью…

AbstractDL

Кстати, вот ещё хорошие новости для всех, кто интересуется темой 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

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

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

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

Статья

Читать полностью…

AbstractDL

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

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

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

Читать полностью…

AbstractDL

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

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

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

Читать полностью…

AbstractDL

Your Transformer is Secretly Linear

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

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

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

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

Статья, GitHub

Читать полностью…

AbstractDL

Примеры возможностей нового GPT4o ассистента – серьезно, фильм "Her" теперь реальность

Читать полностью…

AbstractDL

Llama-3

Есть версии на 8B и 70B параметров. По сравнению с прошлой ламой тут теперь побольше словарь — 128k токенов вместо 32k (думаю отсюда и +1B параметров). А также добавили grouped query attention (GQA), чтобы это работало быстрее.

Во время обучения модели скормили 15Т токенов, это офигеть как много (по шиншилле можно и 200B версию на таком сете обучать).

Блог, веса

Читать полностью…
Subscribe to a channel