Жоский ИИ дядя. Твой личный поставщик AI 💊💉🤖 Канал о мире интересного AI: ML, DL, NLP/NLU, RL, Retrieval, RecSys. Для связи @dealer_ai (реклама и консультации) Habr @Andriljo Kaggle: Andrilko
Черного юмора пост. 🌚
Осторожно, админа немного покусали "е*ные идеи для рисерча".
Тут недавно выпустили Nanotron кукбук по mgpu learning. Да и еще дали нам ПыкаТрон , чтобы отрабатывать умения из кукбука.
Ну а мы с мужиками во дворе подумали и выдвинули свою версию библиотеки. Для самых дерзких идей и gpu-poor лернинга. Встречайте ebatron на ml-***-ebal-env.
Ну и мы погуглили, вроде, пока название вакантно, не благодарите.
Рубрика выходного дня(с).
Памятуя мой пост про планинг на LLM, вот ниже таки ребятки сделали аналогичное.
Отмечу, что решение в т.ч. arc также как и темы с алго A* по идее дают действительно трансфер и на "абстрактное суждение"/ориентацию и распознавание объектов. Причем и для arc абстракций и для лабиринтов в A* нагенерить можно кучу. Тут синты поле непаханное, а еще ж есть игра в жизнь, туда же, на клеточных автоматах.
/channel/AGI_and_RL/971
Ну CAG таг? Это ж и ни RETRO и ни RAG и не кагдилаг...
Тут ребята упоролись, и как в сказке: "родила царица в ночь не то сына, не то дочь". И перед нами предстает CAG (дилаг простите 🤣) - Cache augmented generation. CAG это мутант между RETRO и RAG, порождение зла и KV-cached подхода.
CAG работает на основе контекста LLM и использует ее же логику kv-кеширования (схема будет ниже) для создания "индекса" и самого запроса, хотя, буквально, это ретривал индексом назвать нельзя, все сразу на этапе инициализации грузится в контекст модели в kv-кэш. Отсюда же и ограничения на использование такой схемы, ввиду длины контекста (привет Titans и прочие жирноконтекстные момзели). Также такая схема работы нас роднит с моделями типа RETRO, тк для вычисления ответа нам нужно получить векторные представления подсказок. Но тут у нас нет cross-attention схемы и отдельного блока кодирования подсказок, модель сама их себе эмбеддит через kv-cache механизм.
Авторы выделяют плюсы: скорость работы, независимость от внешней базы и ретривера, ну и высокое качество по сравнению с классической RAG архитектурой на базе bm25 или dense retriever. Но смотрят всего две задачи HotPotQA и SquadQA.
Из минусов: мы во всю зависим от длины контекста модели для кеширования, и поэтому же не можем динамически менять индекс и в принципе иметь большой индекс как в RAG тк тут "индекс" подсказок грузится в контекст и модель сама решает какую часть этого кеша ей использовать. Нет возможности юзать мультимодалку. Хотя последнее спорно – можно эмбедить в kv-кеш и вектора картинок и аудио и видео.
Дяде, с одной стороны, конечно, такая схема не нравится,хотя он и rag и retro уважает,с другой стороны, если идти в развитие бесконечных контекстов LLM, почему бы и нет? А что думаете вы? Пишите мнение в комментариях.
Gemini Advanced обзавелся "длинной" памятью.
Разаботчики утверждают,что модель может эффективно использовать RAG механику для памяти, запрашивая схожие диалоги к текущему во всей истории общения с юзером.
Рассуждения Дяди на тему RAG памяти:
A. Нужно хранить нарезку диалогов по юзеру. И тут возникает сразу задачи: обновление индекса юзер диалогов на лету и идентификация какой кусок или какой диалог сохранить (ну не хранить ж все диалоги или хранить) и сюда же если резать,то как.
B. Обучение эмбеддера тоже дает вызовы: с чем матчить эмбы памяти (с фразой текущей юзера или фразой +контекст, если +контекст, то какой он глубины), по данной нарезке и состояния диалога, и диалогов в памяти, делать обучение раг эмбеддера.
В остальном, идея понятна, имеем диалог стейт менеджера с ранкером,который подыскивает комплиментарные текущему контексту похожие диалоги в пршлом.
https://blog.google/feed/gemini-referencing-past-chats/
Схемы сборки триплетов для задачек.
Upd. Рецепт прост-«all in» на все комбо.
Боже какой у тебя большой Multimodal Embedder!?😏
Сегодня будет пост с максимальным числом скрытого текста.
Тут китайцы продолжают меряться дикпиками размерами моделей. И выпустили me5 мультимодальный на 11 ярдов параметров, который базируется на архитектуре llama. 🪨 Боже кому это нафиг надо. Конечно показывают 🌿 метрики ребята, обогнав малышей CLIP, SigLIP и др. Избиение младенцев по капасити какое-то (челы побили модельки в десятки раз меньшие). Но самое интересное про метрики будет чуть позже.
Честно, кроме, как дистиллить такое чудо более меньшей моделькой для прод пригодности я не вижу вариантов. Однако, кое-что интересное из статьи вытащить можно.
А именно, это пайплайны создания и рафинирования обучающей выборки. Да, да, снова оказывается data science это про 80-90% качественной датки. Ребятки нагенерили качественной синты из не синты. Это как? А все просто используют многоуровневый пайп вычистки открытых сетов мульимодалки аля LAION (чет там набрали около 400M примеров), а дальше делали следующее комбо. Для каждого имаджа или подбирают или генерят высококачественный инстракт и описание. Далее матчат это в конструкции для контрастив обучения: IT-I, IT-IT, I-TI и тп и тд.
А что это вы спросите за набор аббревиатур самой секси-шмекси отрасли (ойти тобишь)? Дурак ты, шкет, это обозначения пар image, text и их интеракций в триплетах для сведения и разведения эмбеддингов в векторном пространстве. Причем, за этой простой аббревиатурой лежит более интересный дизайн сэмплинга. Ребята собирают не просто триплеты, а квадрии. Хотя в статье это зовут гордым именем эля с четверной выдержкой - квадрюпель, эт мы с мужиками в гараже одобряем.🤙 Крч, квадрии это связка: инструкции, query caption, positive caption, hard negative caption и тоже самое для картиночки инструкция + триплеты картинок позитив и негатив. И вот это получается кидают для дотюна в contrastive mode в квадрию: [Instruction, (Qt,Qi) , (Dt+ , Dt-), (Di+, Di-)], где i, t как раз картиносы и текст обозначения. Для дообучения используют естественно InfoNCE.
Там еще насыпали абляций, оценку влияния температуры и тп и тд. Почитаете в статье.
На сладкое осталось то, что подписчики пошарились по сетам тюна этого чуда и увидели там сабсеты с бенчей.🚬 Не в этом ли сила сота метрик или все же датка+капасити+проверенный контрастив пайп?💪
Пишите в комментариях свои мнения.
https://x.com/sama/status/1889755723078443244?s=46
Читать полностью…Anthropic оказывается довольно долгое время уже работают над использованием классификаторов для борьбы против джейлбрейков.
Напомню, почти все большие языковые модели содержат некоторую цензуру, им запрещено говорить на некоторые темы. Для обхода этой цензуры постоянно появляются "джейлбрейки" - такие хитрые методы сформулировать запрос так, чтобы всё же получить ответ.
Anthropic вроде бы раньше пытались сделать так, чтобы сама модель отказывалась говорить и думать на неприятные темы, однако видимо сдались - теперь они двигаются в сторону классификаторов, т.е. небольших подсистем, понимающих что в запросе содержится джейлбрейк или в ответе нейронки есть что-то неправильное. https://shrtdb.com/6867a18b-c418-4ed6-8e4c-3f7d1d0829b8
Ребятки из HF выкатили небольшой постик по текущему прогрессу с Open-R1
https://huggingface.co/blog/open-r1/update-1
Про методы оптимизации, Дядин магистерский диссер и соревки в стиле Санта.
Закончился очередной новогодний фан от Гугла в виде традиционной соревки Santa2024.
В этот раз задача была простой (но Дядя не совсем согласен) и замешаны даже LLM. В общем, надо было делать перестановки заданных слов в фразах чтобы минимизировать перплексию в Gemma2-9b. Т.е. по сути, у нас модель - это среда, порождающая награду/функцию цели.
Сама задача похожа на проблему о перестановках/назначениях. У вас всегда есть фиксированный набор слов и позиций для них, как будто бы вы ищете позицию-работника и слово для него, а ёмкость труда есть итоговая перплексия.
Кстати, только что, мы декомпозировали задачу в известную постановку и тогда мы понимаем какой аппарат для решения нам нужен. Ввиду того,что это задача комбинаторной оптимизации можно пребегнуть к :
- Методам локального поиска (он же жадный алгоритм)
- Добавить методы рандомизации Монте-Карло, ака глобальный поиск.
- К метаэвристикам аля генетика, роевые методы (пчелы, рыбы, муравьи) и тп. Такие методы являются гибридом глобального и локального поиска.
Обычно такие методы гибридизируют еще с поиском с запретом, он же Табу, или поиском с развратом возвратом он же Отжиг. Метод с запретом имеет память в виде табу списка. Это может быть локальная память или глобальная. Если память локальная,то мы не возвращаемся к М последним решениям, если глобальная то туда "навсегда" вписываются самые плохие ходы. В случае с возвратом, мы с некоторой вероятностью просто делаем шаг назад от текущего решения к его предку. Цель перепрыгнуть локальный оптимум и избежать застреваний. Такую фишку можно включать если вы на К шагов застряли.
А еще очень важно правильно векторизовать задачку, в данном случае у вас есть вектор позиции слов, в каждой позиции-ячейке у вас лежит токен-слово. Чтобы сделать перестановку ее еще называют swap окрестностью, вы также можете за один шаг менять 2 слова местами в ячейке или сразу делать К замен подряд. Тоже своего рода поиск локально или в глубину.
Вопрос что выбрать лучше? Ответ: к сожалению,нет золотой пули, остается пробовать разные подходы и комбинации.
Итого в соревновании выйграли подходы с отжигом, однако, мне, как человеку, защитившему магу по оптам ии, кажется, что можно было сделать больше экспериментов и получить оригинальное решение.
Вот тут еще выжимка с топ решений.
/channel/pseudolabeling/225
Кстати, решение можно использовать для атак на модели, а также для улучшения робастности/устойчивости моделей.
Чегой-то тут у нас. Stargate make's great again?
https://cdn.openai.com/o3-mini-system-card.pdf
От RStaR до DeepSeek и обратно. Или краткий обзор, а че это ваще было!?
Итак, deepseek наделало много шума. Но давайте бегло пройдемся в стиле "а чей-то вообще было?". Для начала, если взглянуть в архитектуру, то можно увидеть наследие llama, присыпанное МоЕ слоями. Это "чудо генной МоЕ инженерии" далее учили интересным образом. Первое это, разумеется pretrain. Однако после, мы видим, что для zero поколения не используют SFT стадию, а сразу переходят к RL.
Все знакомые задаются вопросом:
- "Почему без sft?".
При этом на просторах паутины всплывает статья. В ней описываются эксперименты, как влияет на генерализацию и др. способности после претрейна этапы sft и rl обучения моделей.
Если кратко, выводы такие, что sft работает лучше на запоминание паттернов, а rl лучше способствует ризонингу и генерализации на "новых задачах". Поясню. Т.е. sft надо включать тогда, когда хочется сделать domain adaptation и все. Ну а если вам хочется работать лучше на "неожиданных" out of fold примерах, лучше юзать rl.
Но, на взгляд Дяди, никто не запрещает микстить оба подхода. Еще замечу, что интуитивно мне понятно почему rl способствует большей "свободе" в ориентации по задачам. Сама постановка обучения с подкреплением - это работа с большей вариативностью исходов, которые обеспечивает среда, она может порождать больше примеров, чем рукописная выборка, а значит на этапе тюна мы увидим больше вариантов развития событий. Модель засчет награды научится эти варианты обрабатывать, улучшится ризонинг, планинг и тп.
Почитать выжимку также можно у коллеги тут.
Про no model rl. Еще один плюс подхода заключается в том, что в zero сетапе нет внешней модели, в качестве среды для grpo у нас выступают правила и компилятор. Тк задачи имеют точный итоговый ответ, то с ним можно сравниться по заданным критериям, а если это код использовать селф-дебаг и компилятор. Привет, к примеру RStaR. А еще это даёт возможность уйти от взлома reward модели, например, через oov примеры (модель награды не видела всех исходов).
Однако, для дальнейших стадий обучения авторы прибегнут и к внешней модели награды и к RLAIF подходу, и, конечно, будут делать sft, перемежая его с rl grpo. А все из-за "проблемы" с мультиязыком и как решить эти переходы во время рассуждений модели. В том числе, для этого, как пишут авторы, были добавлены стадии сфт и тп. Но у нас сложность интерпретации падает не только из-за мультияза, но и еще из-за LongCoT цепочек, как артефакта rl. Кстати, длинные рассуждения это артефакт взаимодействия rl обучения и thinking токенов - тут это формат, где мы указываем откуда начинать и где закончить блок рассуждений. И этот формат также проверяется в no model reward. Дядя бы и туда проверку на стабильность языка добавил, мол доля токенов целевого языка бы мерилась к нецелевой и добавлялась в награду.
Переход от zero к hero (zero deepseek r1 vs deepseek r1). Итого мы получаем, что на первом этапе модель учится в сетапе: pretrain+thinking area/tokens + rl. Так получается zero R1. После используется sft+rl+rlaif дообучение. Здесь нужно пояснение. Процесс обучения второй стадии начинается с холодного старта. DeepSeek v3 тюнят на рафинированном датасете, который просеян через Zero-R1 — отобранные high quality примеры. Так подтягивают читаемость. Далее проходит этап RL для улучшения ризонинга. Потом снова, используя модель со второго этапа, отбирают лучшие варианты из обучающей выборки (состоит в основном из рассуждений) + используют некую reward модель, о которой упоминается вскольз (но тоже на базе DeepSeek.v3), такой вот rejection sampling. Наконец, делают последний rl тюн на rule based награде и сете из разнообразных задач, тут же включают RLAIF подход для выравнивания. Такой длинный пайп, снова роднит нас, на мой взгляд с RStaR подходом обучения. Там тоже были схожие стадии просеивания и самоулучшения.
Далее 👇👇👇👇👇
Да поста я хотел просмотры поднять от индуса, вы че такие жОские хД
Читать полностью…Лабиринты, тесты абстрактной логики и игра в жизнь.
Продолжаем думки на тему, а зачем ученые дяди и тети заставляют LLM решать задачки ARC, поиск пути в лабиринте и тп.
Рассуждения навеяны статьями:
- AlphaMaze
- Beyond A*
- On the Messure of intelligence
Увидев вчерашние посты, коллеги стали задаваться вопросом: "а возможно ли обучаясь на такой синтетике и вообще решая задачки типа лабиринта словить aha эффект – когда модель начнет использовать полученные навыки в других задачах, также как это у людей получается?"
И мой ответ, конечно это возможно, даже больше скажу авторы данных экспериментов в первую очередь преследуют именно цель трансфера знаний и навыков на смежные задачи. Ведь, на самом деле, нам не так интересно искать пути в лабиринте с помощью LLM для этого у нас итак куча алгоритмов аля A* и др. Они быстрее, легче и эффективнее. А тогда зачем?
Наша цель подобно, как человек решает задачи абстрактной логики – это аля IQ тесты, где по картинкам над понять закономерность, в тч ARC, тренировать теже области весов модели, как области коры мозга у человека, которые позволяют нам лучше решать другие задачи,где важно абстрактное мышление.
Поэтому исследователи гоняют лабиринты 5*5/10*10, покоряют бенчмарки ARC и тп и тд. И мы видим, в статье про AlphaMaze важные выводы,что тупой прямой тюн не работает, модель из коробки не работает. А чтобы решать такие задачи приходится тюнить R класса модели, т.е. учить рассуждениям, планированию специально. "Ризонинг нада качать(с)". Но на самом деле, ризонинг в т.ч. качается через обучение таким задачам.
Еще интересное, что делали ребята из sakana.ai про создание симулятора игры в жизнь, через работу в пространстве visual embeddings. Но можно пойти дальше, не просто искать переходные состояния в пространстве векторов, можно же предсказывать в принципе следующие состояния эволюции популяции. Это как в arc мы связываем серию изображений с следующим наиболее логичным к этой серии. А тут мы по серии развития популяции (тоже в виде картинок, там же 2d) можем по ее картинке предсказывать следующий шаг. Кто знает,где такой трансфер может сыграть, помимо ARC-лайк и планинга. Может в прогнозировании динамики сложных систем? Создании новых материалов и драгов?
В общем, идея интересная, записывайте. Пробуйте.
Если вы решили делать агентную систему на LLM по имитации офисных процессов, то вот вам идеальный алгоритм.
Читать полностью…Если у вас в городе не выпал зимой снег, голоса в голове говорят взять вон тот шиткоин, значит это нейрокомпьютеры уже всех победили...🧠
Но, без шуток, интересная шиза. Или не шиза...🤨
Читаем тлдр у дяди Бакуна
/channel/addmeto/6037
Новый эмбеддер Nomic на MoE.
450M параметров, мультлингвальность и всего две целевые задачи: поиск парафраз и ассиметричный поиск (вопрос/ответ).
Интересен только код и мультилингвальный датасет.
https://www.nomic.ai/blog/posts/nomic-embed-text-v2
Ночные новости "одной строкой":
Meta обвинили в пиратстве на 81.7TB с таких ресурсов как LibGen и тп. 🤣
В одном из чатиков: 😎
ai.com теперь ведёт на chat.deepseek.com, вот это поворотЧитать полностью…
Исследование Anomalous tokens в DeepSeek v3/r1.
«Аномальные», «сбойные» или «невыговариваемые» токены в LLM — это те, которые вызывают странное поведение или иным образом не ведут себя как обычный текст.
Впервые это было обнаружено в работе по GPT-2 и GPT-3. Обнаружение таких токенов помогает понять причины галлюцинаций и сбивчивого поведения, а также потенциально, точечно влиять на устойчивость путем целевого дообучения таких токенов. Что порождает стабильность и ожидаемое поведение.
Автор выделяет токены довольно просто - при помощи промптинга. В работе исследуются: процесс токены, фрагментарные токены (раскрываются в длинном контексте) , Namee токены и аналоги, non English токены и "специальные" токены и др. Советую прочитать исследование, там и так все доступно описано:
https://outsidetext.substack.com/p/anomalous-tokens-in-deepseek-v3-and
Upd. В комментариях подсказывают статью.
Крч,бро @drain_er тут поспрашал надежных экспертов мнение...
💳💳💳
Продолжение и окончание...
Про сходимость. Why ранее делали rl и не работало , а тут стало? Есть гипотеза, что сработал сетевой эффект, когда хайп породил в публичных источниках кучу новых данных с оценками для целевых задач: код, математика и пр. Те синта, датка с соревок на каггле и тп, новые открытые сеты и тп. И достигнута такая критическая масса разнообразных примеров, что их стало хватать для дообучения с rl. Но это так сказать версия из той же "сети". Поэтому не судите строго.
На этом все. Пишите, что вы также приметили в техрепорте интересного, ведь, это один из немногих случаев, когда перечитываешь и отмечаешь что-то новое.
Думки Дяди про Huge DeepSeek и это вот все.
С одной стороны, я рад, что мои прогнозы (и не только лишь мои) про демократизацию AI (в первую очередь модели, код в open source) сбываются.
С другой стороны мы приходим снова к тому, что мало просто закидать компьютом обучение, отскейлить capacity по весам. Порой надо и мозг же включать в части оптимизации обучения (как они хакнули H800, красавцы !?), в части использования базовых уже известных хорошо работающих подходов (как оттолкнулись от llama и др. круто), и помножив это на хорошо собранный датасет и дизайн обучения,можно получить оказывается конкурентное решение. А если еще свое привнести улучшение в архитектуре, в дизайне экспериментов и тп,доказанное абляциями, разумеется, то можно вообще претендовать уже на свой инкремент, а не тупо форк го бррр.
И тут же, все чаще слышно: "да зачем мне ваше рнд, ща форкну, датку подготовлю гуд и го брр". Недаром уже HF сделало Open R1 проект,чтобы воспроизвести решение. Но вот вам и пример с DeepSeek на что надо еще и рнд шурупить. Пока вы форкаете код публичных лидеров, вы идете goflow за лидером, но вы не обгоняете их, а лишь следуете по его следам, а он, когда выложил что-то в открытый доступ,уже давно делает еще лучшее решение. А чтобы догнать и обогнать хорошо бы потратиться на R часть.
Да конечно, ничего магического нет в том,что сделали китайцы. Собрали все,что работает вместе, все статьи в доступе, код тоже, архитектуры - до всего дотянуться реально. Добавили пару своих фишек, хакнули компьют и присыпали своей модификацией ppo. Но под капотом еще у нас абляции, поиск лучшего комбо и затраты на получение той работающей формулы grpo.
Тут же напомню, как появлялись, к примеру последние интересные решения в разных областях DL:
- FILIP: берем CLIP вспоминаем про ColBERT loss изменяем нарезку и интеракции эмбов с "токенов изображенй и текста" как там и получаем инкремент.
- SimPO из DPO: создатели идут от базы, что в лоссе у нас используется pair-ranking loss с сигмоид релаксацией. А тк у нас есть еще и триплет лосс с зазором, без которого это как раз-таки pair ranking loss, то давайте это добавим в dpo. Потом уберем штраф к референс модели и накинем норму взамен.
- Пример улучшения обучения GPT2 с учётом ухода от Relu , к ReLU^2 и заменой LayerNorm на RmsNorm. Как следствие ускорение обучения (это когда за меньшее число эпох сходимся). Кстати авторы Qwen ту же нормализацию микстят с SwiGLU.
- Про улучшение PPO в GRPO советую почитать у моего товарища по цеху. А еще прикольное тут.
... И тп. и тд.
А теперь посмотрите на видимый прогресс llm с тч зрения дизайна экспов: next token prediction->instruct tuning->rlhf->CoT/ToT/multihop->то же самое с RL->тоже самое с self refine/RLAIF/SelfPlaying. Чуваки двигаются инкерементально, берут базовые/уже известные блоки и микстуют их, находят работающие комбо и получают прирост. Естественно сначала из прошлой итерации выжав все по-максимуму.
Да согласен,что где-то роляет чисто инженерный подход, зачастую, это ребята с опытом "прода" (у r1 вообще хэджфонд, кванты и тп) особенно в области оптимизации инференса или обучения (привет заход под CUDA/c++). Если же говорить о дизайне экспериментов:новых методах/лоссах, сэмплинге, токенайзере, архитектурных инкрементах, разумеется без РнД никуда. Вопрос остается в качестве и количестве единиц.
Если вы немаленький игрок на рынке, с ресурсами и желанием вложиться в прорыв, но сейчас делаете go flow, с блэкджеком и форками, DeepSeek пример того, как можно "сменить лидера". It's time подсидеть того самого соседа (внутри или снаружи), тк эти ребята доказали,что это возможно. Просто сконцентрируйтесь не на тех задачах,что дают вам +2-3% к тому, что уже есть, а приоритизируйте самые, по-вашему мнению, драйвящие фичи наверх. Возможно и стоит разобрать на косточки решение китайцев,но лишь для того,чтобы в багаж получить новые работающие хинты и собрать из них свой лего, улучшить их и возможно уже вы завтра станете game changers. Если конечно оно Вам надо...
Всем stay tuned. 🦾