Telegram Group Search
Можете попрактиковаться в решении логических задач и сравнить свои ответы с европейским аналогом GPT-4 🤖

P.S. Как видно, в русский он умеет неплохо, а еще думать перед финальным ответом даже без всяких CoT (а это одна из проблем Gemini и целой кучи открытых моделей)
Итак, новый формат - Отредактиврованная выжимка из абстрактов лучших NLP статей с помошью GPT-4 за последние пару дней из HF Daily Papers 🤗

1 марта:

1. StarCoder 2 and The Stack v2: The Next Generation (40 апвоутов)
BigCode и Software Heritage представили StarCoder2, новую модель, обученную на уникальном наборе данных, в 4 раза превышающем размер первой версии StarCoder. Этот набор включает в себя данные из 619 языков программирования и другие качественные источники. StarCoder2 демонстрирует выдающуюся производительность, превосходя аналогичные модели и даже некоторые более крупные модели. Веса моделей публикуются под лицензией OpenRAIL с полной прозрачностью обучающих данных.

2. Griffin: Mixing Gated Linear Recurrences with Local Attention for Efficient Language Models (17 апвоутов)
Griffin сочетает gated linear recurrences с локальным вниманием, обеспечивая высокую производительность на длинных последовательностях при меньшем объеме обучающих токенов. Эта модель соответствует производительности Llama-2 и превосходит в обработке очень длинных последовательностей, демонстрируя низкую задержку и высокую пропускную способность.

3. Panda-70M: Captioning 70M Videos with Multiple Cross-Modality Teachers (17 апвоутов)
Статья вводит автоматический подход к созданию качественного видео-текстового датасета, Panda-70M, состоящего из 70 миллионов видео с высококачественными текстовыми описаниями. Методика включает использование мульти-модальных входных данных и кросс-модальных учительских моделей для аннотации видео, что позволяет значительно улучшить результаты на задачах видео аннотации, поиска видео и текста, а также генерации видео на основе текста.

4. Beyond Language Models: Byte Models are Digital World Simulators (9 апвоутов)
Модель bGPT, работающая на основе предсказания следующего байта, открывает новые горизонты в симуляции цифрового мира. Она показывает отличные результаты в разных модальностях, включая текст, аудио и изображения, и точно симулирует поведение алгоритмов и аппаратного обеспечения. bGPT подчеркивает потенциал моделей на основе байтов для изучения сложных цифровых паттернов.

28 февраля - рекордсмен

1. The Era of 1-bit LLMs: All Large Language Models are in 1.58 Bits (359 апвоутов)
Исследование вводит концепцию 1-битных LLMs через BitNet b1.58, где каждый параметр модели является тернарным {-1, 0, 1}. Эта модель сопоставима с полной точностью (FP16 или BF16) трансформерами по сложности и производительности на задачах, при этом значительно экономя время, память, пропускную способность и энергопотребление. 1.58-битные LLMs представляют новый закон масштабирования и подход к обучению, обещая высокую производительность при сниженных затратах, а также открывая путь для разработки специализированного аппаратного обеспечения.

2. When Scaling Meets LLM Finetuning: The Effect of Data, Model and Finetuning Method (16 апвоутов)
Это исследование раскрывает влияние различных масштабирующих факторов, включая размер модели LLM, объем предварительного обучения и данных для дообучения, на производительность дообучения. Анализируя полное дообучение моделей (FMT) и эффективное дообучение параметров (PET), исследование показывает, что дообучение LLM подчиняется мультипликативному закону масштабирования и что оптимальный метод дообучения зависит от задачи и объема данных для дообучения. Результаты могут помочь в выборе и разработке методов дообучения LLM.

3. Towards Optimal Learning of Language Models (12 апвоутов)
Работа представляет теорию оптимального обучения языковых моделей (LMs), направленную на сокращение необходимых шагов обучения для достижения высокой производительности. Основываясь на цели максимизации коэффициента сжатия данных, авторы выводят "Закон обучения", который раскрывает динамику оптимального процесса обучения. Эксперименты подтверждают теорию, показывая, что оптимальное обучение LMs достигается за счет улучшения коэффициентов в законе масштабирования LMs. Это открытие может стать основой для разработки методов ускорения обучения. Код исследования доступен по ссылке: https://aka.ms/LearningLaw.
Продолжение (28 февраля)...

4. Training-Free Long-Context Scaling of Large Language Models (8 апвоутов)
Предложен метод Dual Chunk Attention (DCA), позволяющий модели Llama2 70B обрабатывать контексты свыше 100 тыс. токенов без дополнительного обучения. DCA эффективно улавливает относительную позиционную информацию токенов, обеспечивая производительность на уровне или даже выше дообученных моделей. Модель является перспективной открытой альтернативой с 94% производительности gpt-3.5-16k.

5. Evaluating Very Long-Term Conversational Memory of LLM Agents (10 апвоутов)
Исследование вводит подход к созданию и оценке диалогов с очень долгосрочной памятью, собрав датасет LoCoMo из диалогов, охватывающих до 35 сессий и 9K токенов в среднем. Эксперименты показывают, что LLMs и техники, такие как RAG, сталкиваются с трудностями в понимании длинных разговоров и восприятии временных и причинно-следственных динамик в диалогах, значительно отставая от человеческого уровня понимания.

Думаю, буду делать такие посты раз в неделю-две, выбирая дни когда больше всего интересного, а про интересные мне статьи рассказывать в отдельных постах.
Вчера обновился периодичный лидерборд LLM моделей от LMSys основанный на открытой Chatbot Arena

Этот лидерборд обновляется нечастно (где-то раз в 2 недели), так как принцип его работы основан на ELO рангах и попарных сравнениях пользователями моделей, подробнее как это устроено можно почиатть в их статье.

Для меня это самый показательный на данный момент способ сравнения моделей, так как он исключает большинство возможностей для обмана оффлайн-метрик, а еще помогает отслеживать изменения моделей.

Но давайте к главному - что поменялось. С момента прошлого апдейта у нас добавилась gemma-7b от Google, mistral-large и обновления от OpenAI. Как же они себя показали?

Gemma-it, несмотря на топ-1 по популярности на HF, в итоге оказалась на 49 месте рейтинга (что хуже чем Mistral-7B-Instruct-v0.2, который на 30 месте). Mistral-Large ожидаемо оказался на 6том обойдя все старые Claude и становясь в один ранг с GPT-4-0613 по ELO.

Лучшей 7B моделью в рейтинге все также остается Starling-LM-7B-alpha (24 место), который кстати сейчас примерно на одном уровне в рейтинге с новой GPT-3.5-Turbo-0125, а та стала улучшением относительно версии 1106 (на 34 месте).

P.S. Кстати, Chatbot Arena это место, где вы можете бесплатно и без регистрации поиграться с любыми моделями и сравнивать их генерации друг против друга, приняв таким образом участие в расчете рейтинга. Сейчас там уже доступны новые Claude-3.
Design2Code: How Far Are We From Automating Front-End Engineering?

Посмотрим на интересного рекордсмена по апвоутам (77) на HF daily от 6 марта. Статья от авторов из Майкрософт, DeepMind и Стендфорда.

В исследовании рассматривается возможность использования мультимодальных LLM для прямого преобразования визуального дизайна сайта в код для фронтенда. Работа направлена на формализацию задачи и оценку способности мультимодальных языковых моделей с ней справляться. Ну и конечно ответить на вопрос когда уже заменят фронтендеров.

В рамках исследования был создан бенчмарк из 484 разных реальных веб-страниц для тестирования. Много внимания уделено переcмотру классических автоматических метрик (вроде htmlBLEU) и построению новых метрик, на основе сходства отрендереных скриншотов и разных блоков текста, а еще провели перекрестную человеческую оценку результатов, отдельный респект, что посчитали корреляции с автоматикой. Еще предложили методы мультимодального промптинга (вроде многоэтапной генереации) и доказали их эффективность на моделях GPT-4V (OpenAI) и Gemini Pro Vision (Google), а также зафайнтьюнили с LoRA открытую модель Design2Code-18B, достигнув вполне сопоставимых результатов с закрытыми бигтехами.

Результаты весьма интересные: GPT-4V превосходит все другие модели, а человеческая разметка показала, что 49% генераций, достаточно хороши для замены оригинальных веб-страниц, и 64% считаются даже лучше оригиналов. Авторы подчеркивают потенциал Design2Code как хорошо составленного бенчмарка для будущих исследований, включая улучшение техник промптинга для мультимодальных моделей, тренировку и оценку новых открытых моделей для генерации веб-страниц, введение новых входных данных (вроде шаблонов из Figma напрямую) и добавление динамики в страницы (этого все еще пока никем не исследовано).
🔥 Сегодня вышла моя первая статья на Хабр, как мы в Tochka AI сделали новые, улучшенные русскоязычные трансформеры с длинным контекстом.

Если кратко: в основе метода внедрение Rotary Embeddings в архитектуру и дистиляция (клонирование оригинальных моделей). Всего мы выпустили 4 разных модели для разных задач (sentence и word embeddings) и размеров контекста (до 2к токенов).

В итоге мы добились топ 1 по скору S+W на бенчмарке encodechka. И кроме того, мы внедрили FlashAttention из Pytorch и ускороили инференс и тренировку в несколько раз!

Веса всех моделей, их код и инструкции по запуску доступны в нашем аккаунте на HuggingFace 🤗

Классические берты с большим русским словарем токенов (идеально для NER и подобных задач):
Tochka-AI/ruRoPEBert-classic-base-512
Tochka-AI/ruRoPEBert-classic-base-2k

Sentence берты, с руссифицированным словарем от e5 (лидеры на encodechka):
Tochka-AI/ruRoPEBert-e5-base-512
Tochka-AI/ruRoPEBert-e5-base-2k

Больше подробностей вас ждут в статье по ссылке 💫
Please open Telegram to view this post
VIEW IN TELEGRAM
О методах эффективного тюнинга нейросетей (PEFT)

В связи с тем, что последнее время активно обсуждаются новые DoRA и GaLore пришло время сделать обстоятельный recap того что это вобще такое и как работает.

Low-Rank Adaptation (LoRA) (2021)

Ключевая идея: LoRA позволяет эффективно адаптировать предварительно обученные LLM для конкретных задач, вводя две матрицы-проекции низкого ранга r на Linear и Embeddings слои. A (для проекции в r) и B (для проекции из r), которые значительно меньше по размеру по сравнению с весовой матрицей W нейронной сети. Обычно r выбирается в диапазоне [4, 64]. Обучаемы только матрицы A и B и служат т.н. адаптерами, позволяя модели настраиваться под задачи без изменения основной матрицы весов W. Процесс инференса включает умножение входных данных на B*A и добавление результата к исходному выходу от W*x.
Потенциал: Значительное снижение затрачиваемых ресурсов, затрачиваемых на тюнинга больших нейросетей для новых задач, позволяет широко использовать и экспериментировать с LLM в различных областях давая качество близкое к полноценному тюну. А еще метод позволяет сливать адаптеры с оригинальными весами модели, обеспечивая нулевой оверхед при конечном инференсе.

LoRA+ (2024)

Ключевая идея: На основе LoRA, LoRA+ предлагает использование различных learning rates для адаптерных матриц A и B, с значительно более высокой скоростью для B. Этот подход обоснован инициализацией B нулями и A случайными значениями, что указывает на то, что B, начиная с состояния без влияния, может позволить и выиграть от больших обновлений для быстрого становления эффективным.
Потенциал: Улучшает точность и скорость сходимости адаптеров, потенциально выигрывает пару процентов качества у LoRA.

VeRA (Vector-based Random Matrix Adaptation) (2023)

Ключевая идея: VeRA переосмысливает механизм адаптации LoRA, инициализируя матрицы A и B одним и тем же набором случайных весов для всех слоев (да, это почему-то работает) и вводя только два обучаемых вектора, d и b. Этот подход использует концепцию случайных проекций, которая заявляет, что при случайной инициализации мы можем получить сети которые уже могут давать нужное направление и требуются только обучаемый выбор из этих проекций. Собствено, манипулируя этими проекциями (через вектора d и b), а не плотными матрицами, VeRA достигает значительной эффективности параметров, сохраняя производительность модели с сильно уменьшенным адаптационным следом.
Потенциал: Результаты ресерча показывают что можно достигнуть почти той же эффективности что и LoRA, потратив на 97% меньше обучаемых параметров, что конечно делает этот метод очень эффективным в плане вычислительных ресурсов.

LoRA-FA (LoRA with Frozen-A) (2023)

Ключевая идея: LoRA-FA упрощает механизм LoRA, замораживая матрицу A после инициализации и оставляя обучаемой только B. Этот подход эффективно уменьшает вдвое количество обучаемых параметров, используя A в качестве фиксированной матрицы случайно инициализированной проекции, через которую B уже тренируют обратную проекцию. По заявляениям, такое упрощение также поддерживает адаптируемость модели к новым задачам, при этом сильнее снижая вычислительные требования.
Потенциал: Предлагает баланс между адаптируемостью и вычислительной эффективностью, делая обучение LLM еще более доступным относительно LoRA.

LoRA-drop (2024)

Ключевая идея: LoRA-drop вводит предвариетльный оценочный шаг на датасете для определения необходимости и влияния адаптеров LoRA в различных слоях нейросети. Оценивая таким образом влияние прозведения B*A на подмножество данных, он определяет и сохраняет адаптеры, которые значительно влияют на производительность модели, отбрасывая остальные. Этот стратегический отбор оптимизирует механизм адаптации, сосредотачивая вычислительные ресурсы на областях с наибольшим влиянием на результат.
Потенциал: Оптимизирует вычислительные расходы во время адаптации LLM, сокращая ненужные затраты на обучение, сохраняя при этом производительность модели на уровне обычной LoRA.
AdaLoRA (Adaptive LoRA) (2023)

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

DoRA (Weight-Decomposed Low-Rank Adaptation) (2024)

Ключевая идея: DoRA разделяет обновления весов на компоненты magnitude (вектор) и direction (матрица) и тренируя их независимо. Такое разделение облегчает более точный контроль над процессом адаптации, потенциально позволяя вносить коррективы, которые более точно имитируют динамику полного тюна модели в ограниченном пространстве параметров LoRa.
Потенциал: Повышает качество тюнинга LLM за счет предоставления более красивого механизма, что потенциально приводит к адаптации, в большей степени соответствующей характеристикам полноценного файн-тьюнинга.

Delta-LoRA (2023)

Ключевая идея: Delta-LoRA делает интересную иновацию, позволяя делать обновления исходной матрицы весов W на основе градиентов, полученных из произведения адаптеров A и B, вместо того, чтобы оставлять W замороженной. При этом нам не нужно тратить память при обучении на хранение большого числа градиентов от W, нужны только от A*B. Кроме того метод использует итеративное обновление весов, используя специальный гиперпараметр для контроля того чтобы оригинальные веса в W не слишком сильно изменялись.
Потенциал: Сочетает эффективность адаптации с ограниченным количеством параметров и качеством полноценного FT, превосходя LoRA по качеству.

Gradient Low-Rank Projection (GaLore) (2024)

Ключевая идея: GaLore переключает фокус с сжатия весов модели на сжатие градиентов, проецируя их в пространство более низкого ранга для сохранения памяти без ущерба для производительности модели. Этот инновационный подход к управлению градиентами позволяет значительно сократить использование памяти во время обучения, позволяя использовать стандартное оборудование для задач, которые ранее требовали продвинутых вычислительных ресурсов. Сохраняя целостность динамики обучения через эту проекцию градиента, GaLore предлагает путь к обучению высокосложных моделей в условиях ограниченной памяти.
Потенциал: Существенно снижает барьеры для достижения качества FT, уменьшая ограничения по памяти, несколько похоже на Delta-LoRa.

ReLoRA (2023)

Ключевая идея: Авторы заметили что LoRA в комбинации с Adam имеют свойство уходить по инерации в апдейты в конкретных рангах, что по идее мешает модели обучаться. ReLoRA же предлагает гибридную методологию обучения, сочетающую обновления низкого ранга с периодическими остановками и full-rank слияниями адаптеров для эффективного обучения сетей высокого ранга. Этот метод начинается с full-rank warm-up фазы, за которой следует переход к обновлениям низкого ранга, которые периодически интегрируются обратно в основные параметры модели. Этот цикл позволяет эффективно масштабировать внутренние обучаемые ранги модели, при этом сохраняя производительность, сопоставимую с традиционными методами обучeния.
Потенциал: Предлагает экономичную и масштабируемую альтернативу для обучения больших моделей, сокращая требования к вычислительным ресурсам без ущерба для качества модели, делая улучшение относительно LoRa.

P.S. Помимо указанных методов для матриц весов, также существуют и методы для промптов, позволяющие делать адаптацию не изменяя веса напрямую. Подробнее о них можно почитать в документации библиотеки PEFT от HF 🤗
Вышла Starling-7B-beta, продолжение семейства старлингов

Starling-7b-alpha до недавнего времени была лучшей 7b моделью согласно LMSys Chatbot Arena. В ее основе лежал малоизвестный метод онлайн RL - APA и Reward модель обученная на датасете Nectar. И reward модель и сам alpha являются тюнами openchat-7b, другой хорошо известной модели, обученной с помощью другого малоизвестного метода C-RLFT, аналогом DPO.

Новая версия Starling - beta, судя по всему возвращается к корням и была обучена с помощью PPO, но теперь с куда более мощной reward моделью, в основе которой уже лежит одна из лучших опенсорс LLM Yi-Chat-34b. Интересно, что для тренировки RM использовался метод K-wise maximum likelihood из недавней статьи. За основу для тюна был так же взят OpenChat-7b, но уже новой версии 0106. В качестве датасета преференсов использовался тот же самый Nectar, что и для alpha.

Так как официальной статьи нет ни по alpha ни по beta, все на что можно опираться это лидерборды, карточки моделей и небольшой блогпост от berkley о том как делался Starling-alpha.

Согласно этому блогпосту, авторы делают заключение о том, что методы offline RL вроде DPO не могут дать такого же преимущества как правильно сделанный online RL с хорошей RM, и судя по метрикам и субъективному качеству в этом сложно сомневаться. Но также и сложно заключить какую роль тут играет основа моделей - OpenChat, который так же имеет очень неплохие метрики и идет сразу после Starling.

Новый Starling-7b-beta судя по появившимся оценкам, является новой SOTA для 7b моделей, теснит его разве что только сам OpenChat. MTBench оценил beta в 8.12 пунктов, что сейчас фактически почти лучший результат для опенсорса. На OpenLLM LB он имеет средний скор 69.68, что неплохо, но по цифрам это примерно так же как различные мерджи и dpo тюны openchat. Отличительной особенностью тут является скорее человеческая и GPT-4 оценка ответов, которая для старлингов обычно выше, чем для других моделей.

Свободно поиграться с моделькой можно на Chatbot Arena, она уже была туда добавлена. Кстати, она умеет неплохо отвечать на русском, но кажется хуже чем ее предыдушая версия, по моим оценкам, некоторые ее способности ризонинга ломаются на русском относительно английского (но все еще лучше сайги).
Тоже обратил внимание на эту статью и хотел рассказать, но это объяснение считаю очень неплохим, а саму статью достаточно красивой и интересной с точки зрения анализа потенциала трансформеров как архитектуры (каждый раз нам показывают, что он далеко не исчерпан, как некоторые считают)
Как мне кажется, Mixture-of-Depths – одна из самых интересных недавно вышедших статей, так как посвящена она довольно очевидной проблеме, что все токены в механизме оттеншена потребляют одинаковое количество компьюта, хотя польза от них не одинаковая. Конкретно эта статья фокусируется на том, как тратить меньше вычислений на токены, которые особенно и не нужны в предсказании

Идея очень простая и поэтому уважаемая: перед каждым трансформер-блоком (в котором находится аттеншн и MLP) работает роутер, который выдает для каждого токена входной последовательности какой-нибудь вес. Дальше в блок поступают и обрабатываются только top-k токенов c наибольшими весами, а все остальные через residual connection обходят блок без каких-либо изменений. Соответственно, механизм оттеншена в итоге требует k^2 вычислений, где k << числа токенов во входной последовательности

Поскольку k задается самим пользователем, размеры матриц внутри аттеншена нам изначально известны, и мы точно можем посчитать, сколько компьюта урежет заданное значение k

Как корректно заметил один человек в реплаях Твиттера, в таком подходе если какой-то токен был проигнорирован в конкретном трансформер-блоке, то дальше все последующие токены не смогут аттендиться к нему, так как этот токен не попадет в KV-кеш. То есть он навсегда остается таким “слепым пятном” в этом блоке, но в следующих блоках он все равно может попасть в top-k и сыграть роль там. В теории возможно, что какой-то совсем бесполезный токен занулится во всех блоках и не окажет вообще никакого влияния на генерацию

В экспериментах лучшая вариация MoD оказалась та, где k был равен 256 (12.5% от всех входных токенов попадали в блок) и где роутер стоял перед каждым вторым трансформер-блоком. Помимо того, что у этой модели лосс был даже ниже, чем у стандартной модели с таким же количеством параметров, она еще и на 66% быстрее совершала шаг инференса. Это по сути и подтверждает, что куча операций в ванильном трансформере излишняя и не дает прироста качества

Довольно приколькую идею скрестить Mixture-of-Depths и Mixture-of-Experts предложили также сами авторы – просто можно заменить одного эксперта на identity function и готово 👍 По-моему очень элегантно

Еще хорошую идею развития этого ресерча закидывают в конце в discussion – можно предположить, что некоторые токены очень полезны как keys, но не очень полезны как queries или наоборот. В общем кажется, что эта команда ресерчеров опубликует позднее что-то еще про более сложный роутинг
Please open Telegram to view this post
VIEW IN TELEGRAM
Как научить модель по-разному отвечать на одинаковые вопросы?

Именно один из вариантов ответа на этот вопрос предложил автор мини-статьи Configurable Safety Tuning of Language Models with Synthetic Preference Data. И, вы не поверите, можно просто использовать разные системные промпты. И это не было ни для кого секретом, но вот обучить такую модель используя DPO, наверное еще не пробовали, так как идея кажется слегка безумной и забавной.

И автор предлагает очень простую модификацию в процесс алаймента, мы можем составить датасет из квадриплетов (system prompt, instruction, chosen, rejected). Создать такой датасет можно из любого датасета фидбеков для DPO, однако, автор предлагает размножить его дополнительно, поменяв rejected и chosen местами, в зависимости от системного промпта (позитивный или негативный).

И что же из этого получается? А получается модель которая в позитивном сеттинге получает такое же качество как обычные DPO модели, но помимо этого в негативном сеттинге способна вести себя так же хорошо как в позитивном.

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

Кстати, автор выложил Llama 3 на HF 🤗 обученную в таком сетапе (о нет, она обучена генерировать ансейф текст)
Новый метод молниеносного переноса навыков между моделями без обучения

Последнее время активно развивается техника model merging - когда веса 2 и более моделей объединяются по разным правилам для переноса навыков между ними без дообучения. Подробнее о том как это работает можно почитать тут, в качестве реализации в коде многих из этих методов - mergekit на Github.

Новые методы мерджинга моделей все больше ориентируются на так называемые Task Vectors, которые возникают при "вычитании" зафайнтьюненной на определенной задаче модели из оригинальной предобученной модели, после этого такие вектора можно применять к другим моделям, среди таких методов: сам Task Arithmetic, TIES, DARE и другие.

Несколько дней назад пользователь maywell опубликовал свой вариант этого метода на HF 🤗. Он отмечает что у простого добавления разниц есть ограничения - это плохо работает с моделями которые уже были сильно на чем-то зафайнтьюнены. Автор же акцентирует внимание на возможности переноса навыков вести диалог и, неожиданно, умения воспринимать длинный контекст.

Для этого он модифицирует метод Task Arithmetic добавляя функцию
calculate_sigmoid_ratios(base_model, target_model), которая расчитывает множители [0,1] для весов для стабилизации разрыва между минимальными и максимальными значениями в разницах между весами моделей. Интуитивно этот шаг можно понять как попытку скорректировать направление мерджинга для каждого параметра отдельно. Второй, и последний шаг, заключается в применении вычисленных разниц умноженных на вычисленные ratio к целевой модели по формуле diff * (1 - ratio).

Автор утверждает, что с помощью этого метода удалось получить модель с 100% качеством ретривала информации из 64k контекста (видимо тест needle-in-a-haystack). Кроме этого он сравнивает метрики переноса способности выполнять инструкции между обычным Task Arithmetic, и своим методом, показывая что качество удалось улучшить и минимизировать деградацию (между тем это еще и перенос этой способности между корейским и английским языком!). Больше подробностей в карточках моделей maywell/Llama-3-Ko-8B-Instruct и maywell/Llama-3-8B-Instruct-1M.

Реализация самого метода состоит всего из 3 функций и помешается только лишь в одном ноутбуке, который доступен на Github.
Опять меня определили с разбором статьи⚡️
На этот раз очень интересный взгляд на то как работают LLM внутри от Anthropic, очень советую изучить и оригинал, мегаполезно для общего понимания
Please open Telegram to view this post
VIEW IN TELEGRAM
У Anthropic вышла очень большая статья про interpretability – они нашли в своей модели Claude Sonnet множество хорошо и четко интерпретируемых фич, отражающих определенные концепты. Многие из них оказались мультилингвальными и даже мультимодальными

В отличие от некоторых предыдущих работ в этой области (например, вот этой от OAI), интерпретировали они не нейроны по-отдельности, а активации. Это важно, потому что логично предположить, что за большинство концептов в LLM отвечают не конкретные нейроны, а какая-то их комбинация. И что скорее всего эта комбинация может быть также размазана между слоями (в limitations к статье отдельно обсуждается cross-layer superposition, кому интересно)

Как конкретно с технической точки зрения находили фичи?
- Активации замеряли в residual stream на каком-то среднем слое сети (каком конкретно не говорят, так как модель проприетарная). Для тех, кто забыл, что такое residual stream (я тоже забыла, не переживайте) – он проходит через все слои трансформера, от входных эмбеддингов до самого последнего линейного слоя. Каждый трансформер-блок (attention-head + MLP) “читает” информацию из него, а результаты его работы плюсуются к этому residual stream, и он итеративно обновляется после после каждого блока. Так что получается, что он “собирает” в себя информацию за последние сколько-то блоков, и логично предположить, что где-то посередине модели он будет в себе содержать какие-то абстрактные идеи и понятия. Попродробнее про residual stream и интуицию за ним можно почитать тут

- Фичи находили с помощью sparse autoencoders. Энкодеру на вход поступает как раз residual stream, который он разворачивает в слой большей размерности. Внутри этого латентного пространства как раз и будут находиться интерпретируемые фичи! Раньше у Anthropic выходила статья, где они это обнаруживали на маленькой игрушечной модели. Помимо того, что декодер учили реконструировать потом по этом фичам активации обратно, еще накидывалась регуляризация, чтобы его веса были в основном sparse (по сути это означает, что каждую активацию, которую мы подаем на вход, мы можем разложить на небольшое количество латентных фич, а остальные занулятся)
После тренировки такой энкодер представляет активации как линейную комбинацию латентных фич, где веса декодера “умножаются” на силу активации

– О данных для обучения SAE особо не говорится в статье, но извлекали фичи из семпла на 10M токенов из The Pile и Common Crawl. В статье пробуются автоэнкодеры трех размеров – 1M, 4M и 34M. В 34M варианте 65% фичей оказались мертыми – они не активировались ни разу на всей выборке

– Чтобы среди всех фичей найти хорошо интерпретируемые, авторы использовали Claude Opus: ему показывали примерно 1000 примеров, где активировалась какая-то фича, с указанием токенов, на которые она реагировала. Opus должен был выдать оценку, есть ли какая-то связь между текстами, или фича не особенно специфичная / не понятно, что именно она отражает. Насколько я понимаю, интерпретацию этих фичей авторы присваивали сами вручную

1/2
2025/06/19 08:26:46
Back to Top
HTML Embed Code: