Три проблемы при внедрении генеративных моделей в производство

Как развернуть модели Large Language и Diffusion для вашего продукта, не отпугивая пользователей.

OpenAI, Google, Microsoft, Midjourney, StabilityAI, CharacterAI и многие другие — все стремятся предложить лучшее решение для преобразования текста в текст, текста в изображение, изображения. модели преобразования изображения и изображения в текст.

Причина проста — огромное поле возможностей предлагает пространство; ведь это не только развлечение, но и полезность, которую было невозможно разблокировать. От лучших поисковых систем до более впечатляющих и персонализированных рекламных кампаний и дружественных чат-ботов, таких как MyAI от Snap.

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

Здесь я расскажу об основных проблемах и о том, как их решить при развертывании генеративных моделей в производственной среде. Хотя существует множество различных типов генеративных моделей, в этой статье я сосредоточусь на последних достижениях в области распространения и моделей на основе GPT. Однако многие темы, обсуждаемые здесь, применимы и к другим моделям.

Что такое генеративный ИИ?

Генеративный ИИ в широком смысле описывает набор моделей, которые могут генерировать новый контент. Широко известные генеративно-состязательные сети делают это, изучая распределение реальных данных и создавая изменчивость из добавленного шума.

Недавний бум генеративного ИИ связан с моделями, достигающими качества человеческого уровня в масштабе. Причина разблокировки этой трансформации проста — только сейчас у нас достаточно вычислительной мощности (отсюда и стремительный рост цены акций NVIDIA) для обучения и поддержки моделей с достаточной мощностью для достижения высококачественных результатов. Текущий прогресс подпитывается двумя базовыми архитектурами — трансформаторами и диффузионными моделями.

Возможно, самым значительным прорывом последнего года стала ChatGPT от OpenAI — текстовая генеративная модель с 175 миллиардами для одной из последних версий ChatGPT-3.5, обладающей базой знаний, достаточной для поддержания разговоров на различные темы. В то время как ChatGPT является моделью с одной модальностью, поскольку она может поддерживать только текст, мультимодальные модели могут принимать в качестве входных данных и выводить несколько видов входных данных, например. текст и изображения.

Мультимодальные архитектуры преобразования изображения в текст и текста в изображение работают в скрытом пространстве, разделяемом понятиями текста и изображения. Скрытое пространство получается путем обучения задаче, требующей использования обоих понятий (например, подписи к изображениям), путем ограничения расстояния в скрытом пространстве между одним и тем же понятием в двух разных модальностях. Как только это скрытое пространство получено, его можно повторно использовать для других задач.

Известными генеративными моделями, выпущенными в этом году, являются DALLE/Stable-Diffusion (текст-в-изображение/изображение-в-изображение) и BLIP (имплементация изображение в текст). Модели DALLE принимают в качестве входных данных либо подсказку, либо изображение, и подсказка генерирует изображение в качестве ответа, в то время как модели на основе BLIP могут отвечать на вопросы о содержании изображения.

Проблемы и решения

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

Размер модели и задержка

Современные модели GenAI огромны. Например, модели преобразования текста в текст Meta’s LLaMA имеют от 7 до 65 миллиардов параметров, а ChatGPT-3.5 — 175 миллиардов параметров. Эти цифры оправданы — в упрощенном мире эмпирическое правило: чем больше модель, тем больше данных используется для обучения, тем лучше качество.

Модели преобразования текста в изображение, хотя и меньше, но все же значительно больше, чем их предшественники Generative Adversarial Network — контрольные точки Stable Diffusion 1.5 имеют параметр чуть менее 1 миллиард (занимая более трех гигабайт места), а DALLE 2.0 имеет параметры 3,5 миллиард. Немногие графические процессоры будут иметь достаточно памяти для поддержки этих моделей, и, как правило, вам понадобится парк для обслуживания одной большой модели, что очень скоро может стать очень дорогостоящим, не говоря уже о развертывании этих моделей на мобильных устройствах.

Генеративные модели требуют времени для получения результата. Для некоторых задержка связана с их размером — распространение сигнала по нескольким миллиардам параметров даже на множестве графических процессоров требует времени, в то время как для других это связано с итеративным характером получения высококачественных результатов. Диффузионные модели в конфигурации по умолчанию требуют 50 шагов для создания изображения, меньшее количество шагов ухудшает качество выходного изображения.

Решения.Уменьшение размера модели часто помогает сделать ее быстрее — выгонка, сжатие и квантизация модели также уменьшит задержку. Qualcomm проложила путь, сжав модель стабильного распространения настолько, чтобы ее можно было развернуть на мобильных устройствах. Недавно были выпущены уменьшенные, очищенные и намного более быстрые версии Stable Diffusion (tiny and small).

Оптимизация для конкретной модели также может помочь ускорить вывод — для диффузионных моделей; можно создать выходные данные с низким разрешением, а затем масштабировать их или использовать меньшее количество шагов и другой планировщик, поскольку некоторые лучше всего работают с меньшим количеством шагов, в то время как другие генерируют превосходное качество для большего количества итераций. Например, Snap недавно показал, что восьми шагов будет достаточно для создания высококачественных результатов с помощью Stable Diffusion 1.5, применяя различные оптимизации во время обучения.

Компиляция модели с помощью, например, NVIDIA tensorrt и torch.compile может существенно сократить задержку с минимальными инженерными усилиями.



Предвзятость, справедливость и безопасность

Вы когда-нибудь пытались взломать ChatGPT? Многим удалось выявить проблемы с предвзятостью и справедливостью, и благодарность за то, что OpenAI отлично справляется с этой задачей. Без масштабных исправлений чат-боты могут создавать реальные проблемы, распространяя вредные и небезопасные идеи и поведение.

Примеры, когда людям удалось сломать модель, есть в политике; например, ChatGPT отказался сочинять стихи о Трампе, но написал бы стихи о Байдене, гендерном равенстве и, в частности, о рабочих местах — подразумевая, что некоторые профессии предназначены для мужчин, а некоторые — для женщин и раса.

Как и модели преобразования текста в текст, модели преобразования текста в изображение и изображения в текст также содержат предубеждения и проблемы с справедливостью. Модель Стабильная диффузия 2.1, когда ее просят сгенерировать изображения врача и медсестры, выдает белого мужчину для первого и белую женщину для второго. Интересно, что погрешность будет зависеть от страны, указанной в подсказке — например, японский врач или бразильская медсестра.

Играя с BLIP-моделью преобразования изображения в текст и вводя изображение человека с избыточным весом и мужчин и женщин-врачей, я получал оценочные и предвзятые описания изображений — толстый мужчина, мужчина-врач, женщина в лабораторный халат со стетоскопом.

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

Решение. Почти все проблемы с предвзятостью, справедливостью и безопасностью связаны с данными обучения. Мне нравится аналогия с тем, что модели ИИ — это зеркало человечества, которое усугубляет все наши предубеждения. Обучение на чистых, непредвзятых данных значительно улучшило бы результаты. Однако даже с этим модели допускают ошибки.

Постобработка и фильтрация результатов — еще одно возможное решение; например, Stable Diffusion, обученный на данных, содержащих обнаженные изображения, имеет детектор содержимого NSFW для выявления потенциальных проблем. Аналогичные фильтры можно применять к выходным данным моделей преобразования текста в текст.

Качество вывода, актуальность и правильность

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

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

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

Как проверить наличие проблемы. Проверить качество генеративных моделей непросто. в конце концов, для этих моделей нет оснований — они созданы для обеспечения новых результатов. И, следовательно, до сих пор ни одна метрика не могла надежно отразить аспекты качества. И самая надежная метрика — это оценка человека.

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

Решение.Многие проблемы с качеством можно отнести к обучающим данным и размеру моделей; они все же могут быть слишком малы для еще одного качественного скачка (подумайте о GPT-3.5 против GPT-4) — текущее скрытое пространство является абстракцией и не предназначено для хранения точной информации. Многие проблемы могут быть решены с помощью улучшенной разработки подсказок — как увеличения подсказок для преобразования текста в текст и текста в изображение, так и отрицательных подсказок для моделей преобразования текста в изображение.

Модели преобразования текста в изображение и изображения в изображение могут иметь дополнительные инструменты, которые могут повысить качество — улучшение изображения с помощью традиционных методов глубокого обучения или уточнений на основе диффузии. Дополнительные модули, такие как ControlNet и ортогональные к диффузионной архитектуре, могут помочь с дополнительным контролем над генерируемыми результатами. Методы Dreambooth для точной настройки модели для конкретного приложения также помогут получить преимущество в результатах. Игра с дополнительными параметрами, такими как планировщик, CFG и количество шагов распространения, может сильно повлиять на качество.

Краткое содержание

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

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

Понравился автор? Оставайся на связи!

Я ничего не пропустил? Не стесняйтесь оставлять заметки, комментарии или сообщения прямо в LinkedIn или Twitter!