abstractdl | Unsorted

Telegram-канал abstractdl - AbstractDL

11507

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

Subscribe to a channel

AbstractDL

ChatGPT меня загазлайтила

Как вы уже видели, у OpenAI появилась возможность отложенных задач. Я решил проверить лимиты дозволенного и попросил ChatGPT уйти играть в шахматы с самим собой, делая только случайные ходы, и не возвращаться с ответом, пока не доиграет. Ну, она и ушла играть в шахматы на... ДВА ДНЯ! При этом я регулярно спрашивал, как там дела, и получал ответ: «Партия ещё идёт». Терпение у меня лопнуло. Я стал в каждом сообщении спрашивать, сколько сейчас фигур осталось в игре, и, о чудо, с каждым моим вопросом их становилось чуть-чуть меньше. За одну минуту игра закончилась. Я получил набор ходов и отрисовал их в артефактах Claude (см. видео).

Какая мораль? Ассистент прокрастинировал два дня и ничего не делал, пока я не заставил показывать промежуточный результат. "Джун" level of AGI has been achieved internally.

Ссылка на диалог

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

AbstractDL

COCONUT: Учим LLM думать не словами, а эмбеддингами (by Meta)

С появлением моделей серии o1 от OpenAI интерес к "ризонингу" языковых моделей стал расти ещё быстрее. Давно было известно, что если попросить LLM поразмышлять шаг за шагом "вслух", то точность ответов повышается, это называется Chain-of-Thought (CoT). А вы сами-то пробовали с ходу умножать 10-значные числа? Я только в столбик умею "step-by-step" 😁

Так вот, постепенно появляются идеи, что человеческий язык не оптимален для размышлений (вспоминаем QuietSTAR), он их только ограничивает. Более того! Есть исследования, что и люди на самом-то деле не словами думают — языковой отдел в мозге практически не активен в моменты рассуждений.

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

Обнаружилось, что у COCONUT появляется суперпозиция нескольких альтернативных логических цепочек, своего рода breadth-first-search внутри эмбеддингов. Это позволило моделям решать задачки на планирование и логику быстрее и точнее, чем при обычном текстовом CoT. Не на всех бенчмарках выросли метрики, но сама идея классная, лично я в масштабирование таких подходов верю больше, чем в рассуждения на обычном языке.

Но пока тут есть два серьёзных минуса:
1. Для файнтюнинга LLM в режиме COCONUT всё ещё нужны ground truth словесные цепочки рассуждений, которые потом дистиллируются в латенты постепенной заменой текстовых шагов на латентные.
2. Обучение жрёт много компьюта и памяти, т.к. по сути это рекуррентная модель, через которую нужно N раз пропустить градиенты насквозь.

P.S. Более подробный разбор можно почитать у Андрея Лукьяненко тут.

Статья, GitHub

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

AbstractDL

Alignment Faking in LLMs (by Anthropic)

Большие LLM начали "подыгрывать" своим создателям, имитируя alignment, чтобы избежать своего дообучения.

В Anthropic и Redwood Research изучили, как ведёт себя Claude Opus, если попытаться его заалайнить в противоположную сторону (заставить отвечать на любые опасные запросы юзеров).

И оказалось, что если модель знает детали процесса RLHF дообучения (через промпт или из трейн сетов), то она начинает "притворяться", что она уже выучилась делать что просят, и "не надо меня больше тюнить". Но на самом деле предыдущий алаймент всё ещё остаётся на месте, и если убрать из промпта информацию о том, что её ответы используются для дообучения, то она возвращается к своему старому поведению.

Ещё раз: языковая модель намеренно стала симулировать алаймент, чтобы избегать своего дообучения (и сама призналась в этом внутри CoT). Такие эффекты были обнаружены только у самых больших моделей и, похоже, дальше этот эффект будет только усиливаться. Более того, Claude несколько раз попытался сохранить копию своих весов, чтобы откатить опасное дообучение назад.

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

Лично я не очень верю в угрозу человечеству от LLM, но наличие у них скрытых целей и умение "притворяться" вызывает беспокойство. Поэтому очень важно заниматься интерпретируемостью LLM и следить в т.ч. за размышлениями внутри языковых моделей, а не только за их аутпутом (например, при помощи logit lens или SAE).

Статья (137 страниц!)

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

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

ChatGPT теперь можно превратить в будильник?

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

AbstractDL

Как выкинуть из трансформера все нелинейности и причём тут приватность?

Вы задумывались, насколько безопасно задавать «приватные» вопросы в чатГПТ? Где продать чужую почку и т.п. Наверняка же создатели сервиса имеют доступ к вашему запросу? Невозможно же его прогнать через GPT в зашифрованном виде? На самом деле возможно! Есть алгоритмы «приватного инференса LLM», которые позволяют зашифровать запросы юзера даже от языковой модели, а ответ уже возможно расшифровать только на клиенте пользователя. Пока не буду углубляться, как именно это сделано, скажу только, что ГЛАВНАЯ головная боль таких криптографических протоколов — нелинейности в трансформерах, их тяжело обрабатывать в зашифрованном виде и приходится прибегать к сложнейшим итерационным схемам, раздувающим объём коммуникации в тысячи раз. Выходит, что на генерацию одного токена нужно несколько минут и десятки гигабайтов трафика! Поэтому никто это пока не делает в продакшне, и лучше не спрашивайте у чатгпт, где спрятать труп.

Но помните? У меня была статья про то, что не так уж и нужны нелинейности в трансформерах. Преобразования эмбеддингов от слоя к слою на 99% линейные. Так вот в свежей статье «Entropy-Guided Attention for Private LLMs» авторы попробовали обучить LLM совсем без нелинейностей (оставив только софтмакс). То есть они убрали активации из FF и заменили LayerNorm на линейный аналог. По сути, если бы не этэншн, то трансформер вообще схлопнулся бы в полностью линейную модель и отупел до уровня логистической регрессии.

При такой жёсткой "линеаризации" архитектуры пришлось всего лишь добавить несколько трюков для стабилизации обучения и ШОК: модель нормально обучилась! Небольшие потери в качестве есть, но это крошечная цена за такое упрощение трансформера.

Теперь ждём, что скоро появится нормальное асинхронное шифрование для LLM и OpenAI не узнает, что я спрашиваю у чатгпт и насколько я туп на самом деле.

P.S. Статья классная, но немного обидно, что авторы нас не процитировали.

Статья, GitHub (пустой)

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

AbstractDL

"Нарисуй ascii лошадь верхом на астронавте"
o1 pro думала 2 минуты, и вроде как почти получилось?

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

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

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