Ай Дайджест

Свежая выжимка ml и AI статей - каждый день

Эффективное тонкое настройка крупных языковых моделей для генерации юнит-тестов: Эмпирическое исследование

Появление крупных языковых моделей (LLMs), таких как GitHub Copilot, значительно повысило продуктивность программистов, особенно в области генерации кода. Однако эти модели часто сталкиваются с трудностями при выполнении реальных задач без дообучения. По мере того как LLM становятся больше и более производительными, дообучение для специализированных задач становится все более дорогим. Методы параметрически-эффективного дообучения (PEFT), которые дообучают только подмножество параметров модели, предлагают перспективное решение, уменьшая вычислительные затраты на настройку LLM при сохранении их производительности. Существующие исследования исследовали использование PEFT и LLM для различных задач, связанных с кодом, и обнаружили, что эффективность методов PEFT зависит от задачи. Применение методов PEFT в генерации модульных тестов остается недостаточно изученным. На данный момент передовой уровень ограничивается использованием LLM с полным дообучением для генерации модульных тестов. В данной статье исследуются как полное дообучение, так и различные методы PEFT, включая LoRA, (IA)^3 и настройку запросов, для разных архитектур и размеров моделей. Мы используем хорошо установленные эталонные наборы данных для оценки их эффективности в генерации модульных тестов. Наши результаты показывают, что методы PEFT могут обеспечивать производительность, сравнимую с полным дообучением, для генерации модульных тестов, делая специализированное дообучение более доступным и экономически выгодным. Особенно стоит отметить, что настройка запросов является наиболее эффективной в плане затрат и использования ресурсов, в то время как метод LoRA приближается к эффективности полного дообучения в нескольких случаях.

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

Модели, объединяющие зрение и язык (VLM), которые были тонко настроены, часто улавливают ложные корреляции между чертами изображения и текстовыми атрибутами, что приводит к снижению эффективности нулевого шага на этапе тестирования. Существующие методы для устранения ложных корреляций (i) в основном работают на уровне всего изображения, а не вмешиваются непосредственно в детализированные черты изображения, и (ii) в большинстве своем разработаны для одномодальных условий. В данной работе мы представляем RaVL, который рассматривает устойчивость VLM с детализированной точки зрения, обнаруживая и устраняя ложные корреляции с использованием локальных черт изображения, а не работая на уровне всего изображения. При наличии тонко настроенной VLM, RaVL сначала обнаруживает ложные корреляции, используя подход кластеризации на уровне регионов для выявления точных черт изображения, способствующих ошибкам нулевого шага в классификации. Затем, RaVL устраняет выявленные ложные корреляции с помощью новой функции потерь, учитывающей регионы, которая позволяет VLM сосредоточиться на релевантных областях и игнорировать ложные связи во время тонкой настройки. Мы оцениваем RaVL на 654 VLM с различными архитектурами моделей, областями данных и изученными ложными корреляциями. Наши результаты показывают, что RaVL точно обнаруживает (улучшение на 191% по сравнению с ближайшим базовым уровнем) и устраняет (улучшение на 8.2% по точности классификации в худшей группе изображений) ложные корреляции. Качественные оценки на VLM общего назначения и медицинской области подтверждают наши выводы.

Языковые модели как скрытые логики: Раскрытие латентных возможностей рассуждений с помощью самооценки

Крупные языковые модели (LLMs) продемонстрировали впечатляющие возможности, но всё ещё испытывают трудности с задачами сложного рассуждения, требующими нескольких шагов. Хотя методы, основанные на подсказках, такие как Цепочка мыслей (CoT), могут улучшить способности LLM к рассуждению во время вывода, оптимизация способностей к рассуждению во время обучения остаётся сложной задачей. Мы представляем Оптимизацию латентного рассуждения (LaTRO), принципиальную структуру, которая формулирует рассуждение как выборку из латентного распределения и оптимизирует его с помощью вариационных подходов. LaTRO позволяет LLM одновременно улучшать как процесс рассуждения, так и способность оценивать качество рассуждений без необходимости внешней обратной связи или моделей вознаграждения. Мы проверили LaTRO на экспериментах с наборами данных GSM8K и ARC-Challenge, используя несколько архитектур моделей. На GSM8K, LaTRO улучшает нулевой точность на 12.5% по сравнению с базовыми моделями и на 9.6% по сравнению с надзорной настройкой для моделей Phi-3.5-mini, Mistral-7B и Llama-3.1-8B. Наши результаты указывают на то, что предобученные LLM обладают скрытыми способностями к рассуждению, которые можно раскрыть и улучшить с помощью нашего предложенного подхода к оптимизации в рамках самосовершенствования. Код LaTRO доступен по адресу https://github.com/SalesforceAIResearch/LaTRO.

Оптимизация выбора данных для тонкой настройки больших языковых моделей: Введение в DELIFT

Тонкая настройка крупных языковых моделей (LLMs) необходима для улучшения их производительности на конкретных задачах, но часто требует значительных ресурсов из-за избыточных или неинформативных данных. Чтобы решить эту проблему неэффективности, мы представляем DELIFT (Data Efficient Language model Instruction Fine-Tuning), новый алгоритм, который систематически оптимизирует выбор данных на трех ключевых этапах тонкой настройки: (1) настройка по инструкциям, (2) специфическая для задачи тонкая настройка (например, рассуждения, ответы на вопросы) и (3) непрерывная тонкая настройка (например, внедрение новых версий данных). В отличие от существующих методов, которые сосредотачиваются на оптимизации одного этапа или полагаются на вычислительно сложные вычисления градиентов, DELIFT действует эффективно на всех этапах. Центральным элементом нашего подхода является метрика парной полезности, которая определяет, насколько полезен образец данных для улучшения ответов модели на другие образцы, эффективно измеряя информационную ценность относительно текущих возможностей модели. Используя различные субмодулярные функции, применяемые к этой метрике, DELIFT выбирает разнообразные и оптимальные подмножества данных, которые полезны на всех этапах тонкой настройки. Эксперименты на различных задачах и масштабах моделей показывают, что DELIFT может уменьшить объем данных для тонкой настройки до 70% без ущерба для производительности, предлагая значительную экономию вычислительных ресурсов и превосходя существующие методы по эффективности и результативности.

Введение в CAD-MLLM: Объединение Генерации CAD с Мультимодальными Условиями

Эта статья направлена на разработку унифицированной системы генерации компьютерного проектирования (САПР), которая может легко создавать модели САПР на основе вводимых пользователем данных в виде текстового описания, изображений, облаков точек или их комбинации. В достижении этой цели мы представляем CAD-MLLM, первую систему, способную генерировать параметрические модели САПР, учитывая многомодальные входные данные. Конкретно, в рамках фреймворка CAD-MLLM, мы используем последовательности команд моделей САПР, а затем применяем продвинутые большие языковые модели (LLMs) для выравнивания пространства признаков между этими разнообразными многомодальными данными и векторизованными представлениями моделей САПР. Для облегчения обучения модели мы разработали комплексный конвейер конструирования и аннотации данных, который оснащает каждую модель САПР соответствующими многомодальными данными. Наш полученный набор данных, названный Omni-CAD, является первым многомодальным набором данных САПР, содержащим текстовое описание, изображения с различных ракурсов, точки и последовательность команд для каждой модели САПР. Он содержит примерно 450 тысяч экземпляров и их последовательностей построения САПР. Для тщательной оценки качества сгенерированных моделей САПР мы идем дальше текущих метрик оценки, сфокусированных на качестве восстановления, вводя дополнительные метрики, которые оценивают качество топологии и степень охвата поверхности. Результаты обширных экспериментов показывают, что CAD-MLLM значительно превосходит существующие методы условной генерации и остается высоко устойчивым к шумам и отсутствующим точкам. Страница проекта и дополнительные визуализации доступны по адресу: https://cad-mllm.github.io/

Семантический центр: как языковые модели объединяют смыслы через языки и модальности

Современные языковые модели могут обрабатывать входные данные на различных языках и в различных модальностях. Мы предполагаем, что модели приобретают эту способность через обучение на общем пространстве представлений для разнородных типов данных (например, различные языки и модальности), которое размещает семантически похожие входные данные рядом друг с другом, даже если они принадлежат к разным модальностям или языкам. Мы называем это гипотезой семантического хаба, следуя модели "хаб-и-спицы" из нейронауки (Паттерсон и др., 2007), которая утверждает, что семантические знания в человеческом мозге организованы через трансмодальный семантический "хаб", который интегрирует информацию из различных модальностно-специфических "спиц" областей. Сначала мы показываем, что представления модели для семантически эквивалентных входных данных на разных языках схожи на промежуточных слоях, и что это пространство можно интерпретировать с использованием доминирующего языка предобучения модели через логит-линзу. Эта тенденция распространяется и на другие типы данных, включая арифметические выражения, код и визуальные/аудиальные входные данные. Вмешательства в общее пространство представлений в одном типе данных также предсказуемо влияют на выходные данные модели в других типах данных, что предполагает, что это общее пространство представлений не является просто рудиментарным побочным продуктом масштабного обучения на обширных данных, а активно используется моделью при обработке входных данных.

LLM2CLIP: Как мощные языковые модели улучшают визуальные представления

CLIP является одной из наиболее важных мультимодальных базовых моделей сегодня. Что обеспечивает возможности CLIP? Богатые сигналы надзора, предоставляемые естественным языком, носителем человеческих знаний, формируют мощное кросс-модальное пространство представлений. Однако с быстрым развитием крупных языковых моделей (LLM), таких как GPT-4 и LLaMA, границы понимания и генерации языка постоянно расширяются. Это ставит интригующий вопрос: можно ли использовать возможности LLM для дальнейшего улучшения мультимодального обучения представлений? Потенциальные выгоды от интеграции LLM в CLIP очевидны. Сильное текстовое понимание LLM может существенно улучшить способность CLIP обрабатывать подписи к изображениям, значительно повышая его способность работать с длинными и сложными текстами, что является известным ограничением оригинального CLIP. Более того, LLM обучаются на огромных корпусах текста, обладая знаниями открытого мира. Это позволяет им расширять информацию подписей во время обучения, повышая эффективность процесса обучения. В этой статье мы предлагаем LLM2CLIP, новый подход, который использует силу LLM для раскрытия потенциала CLIP. Путем тонкой настройки LLM в пространстве подписей с использованием контрастивного обучения, мы извлекаем его текстовые способности в выходные вложения, значительно улучшая дискриминационность текстовых выходных данных. Затем мы разрабатываем эффективный процесс обучения, где тонко настроенный LLM выступает в роли мощного учителя для визуального энкодера CLIP. Благодаря присутствию LLM, мы теперь можем включать более длинные и сложные подписи, не ограничиваясь окном контекста и возможностями текстового энкодера оригинального CLIP. Наши эксперименты показывают, что этот подход приносит значительные улучшения в кросс-модальных задачах.

Балансировка параллелизма конвейера с параллелизмом словаря

Параллелизм конвейера широко используется для масштабирования обучения крупных языковых моделей на базе трансформеров; различные работы были проведены для улучшения его пропускной способности и объема памяти. В данной статье мы рассматриваем часто упускаемую из виду проблему: слои словаря могут вызывать несбалансированное использование вычислительных ресурсов и памяти на различных этапах конвейера, что усугубляет проблемы с "пузырями" конвейера и узкими местами памяти. Чтобы решить эту проблему, мы равномерно распределяем слои словаря по устройствам конвейера и группируем вычисления в проходы конвейера. Для уменьшения накладных расходов на память активации мы предлагаем несколько алгоритмов для снижения барьеров коммуникации внутри слоев словаря. Кроме того, мы используем обобщенный метод для интеграции параллелизма словаря с существующими расписаниями конвейера. Сочетая эти методы, наши подходы эффективно балансируют вычисления и память параметров с небольшим постоянным накладным расходом на память активации. Особо следует отметить, что при сочетании с расписаниями, балансирующими память активаций, такими как V-Half, наш подход достигает идеального баланса как по памяти, так и по вычислениям. Обширные оценки показывают, что наш метод обеспечивает баланс вычислений и памяти независимо от размера словаря, что приводит к улучшению пропускной способности на 5% до 51% по сравнению с наивными подходами, одновременно значительно снижая пиковое использование памяти, особенно в сценариях с большим словарём. Наша реализация доступна в открытом доступе по адресу https://github.com/sail-sg/VocabularyParallelism.

Улучшение выявления технических долгов в исходном коде Java с помощью обогащенного набора данных

Технический долг (TD) — это термин, используемый для описания дополнительной работы и затрат, которые возникают, когда разработчики выбирают быстрое и легкое решение проблемы, вместо более эффективного и продуманного, но требующего времени подхода. Самопризнанные технические долги (SATD) представляют собой особый вид технических долгов, которые разработчики намеренно документируют и признают, обычно через текстовые комментарии. Хотя эти самопризнанные комментарии являются полезным инструментом для выявления технических долгов, большинство существующих методов сосредотачиваются на захвате ключевых токенов, связанных с различными категориями TD, пренебрегая богатой информацией, встроенной в сам исходный код. Недавние исследования были направлены на обнаружение SATD путем анализа комментариев, встроенных в исходный код, и было проведено мало работ, касающихся технических долгов, содержащихся в исходном коде. Чтобы заполнить этот пробел, в данном исследовании, через анализ комментариев и их связанного исходного кода из 974 проектов на Java, размещенных в корпусе Stack, мы создали первый набор данных технических долгов, идентифицированных через комментарии к коду, вместе с соответствующим исходным кодом. В ходе эмпирической оценки мы выяснили, что комментарии из полученного набора данных помогают улучшить производительность прогнозирования моделей обнаружения SATD. Более важно, что включение классифицированного исходного кода значительно улучшает точность прогнозирования различных типов технических долгов. В этом смысле наша работа двойственна: (i) Мы верим, что наш набор данных будет катализатором для будущих работ в данной области, вдохновляя на различные исследовательские вопросы, связанные с распознаванием технических долгов; (ii) Предложенные классификаторы могут служить базовыми моделями для других исследований по обнаружению TD с помощью созданного набора данных.

StdGEN: Генерация 3D персонажей с семантическим разложением из одной изображения

Мы представляем StdGEN, инновационный конвейер для создания семантически разложенных высококачественных 3D-персонажей из отдельных изображений, что открывает широкие возможности для использования в виртуальной реальности, играх и кинопроизводстве и т.д. В отличие от предыдущих методов, которые сталкивались с ограниченной разложимостью, неудовлетворительным качеством и долгим временем оптимизации, StdGEN обладает разложимостью, эффективностью и производительностью; то есть он создает детализированные 3D-персонажи с разделёнными семантическими компонентами, такими как тело, одежда и волосы, за три минуты. В основе StdGEN лежит наша предложенная модель Semantic-aware Large Reconstruction Model (S-LRM), обобщаемая модель на основе трансформеров, которая одновременно реконструирует геометрию, цвет и семантику из многоплановых изображений в прямом проходе. Введена дифференцируемая многослойная схема извлечения семантических поверхностей для получения мешей из гибридных неявных полей, восстановленных нашей S-LRM. Кроме того, в конвейер интегрированы специализированная эффективная модель многоплановой диффузии и модуль итеративного многослойного уточнения поверхности, что способствует созданию высококачественных, разложимых 3D-персонажей. Обширные эксперименты демонстрируют наши передовые результаты в создании 3D-персонажей аниме, значительно превосходя существующие базовые модели по геометрии, текстуре и разложимости. StdGEN предлагает готовые к использованию семантически разложенные 3D-персонажи и позволяет гибкую настройку для широкого спектра приложений. Страница проекта: https://stdgen.github.io