Этот пост был написан в соавторстве с Даниэле Кьяппалупи, участником команды студенческого хакатона AWS в ETH Zürich.
Каждый может легко начать работу с машинным обучением (ML), используя Amazon SageMaker JumpStart. В этом посте мы покажем вам, как команда университетского хакатона использовала SageMaker JumpStart для быстрого создания приложения, которое помогает пользователям выявлять и устранять предвзятости.
«Amazon SageMaker сыграл важную роль в нашем проекте. Это упростило развертывание предварительно обученного экземпляра Flan и управление им, предоставив нам прочную основу для нашего приложения. Его функция автоматического масштабирования оказалась решающей в периоды высокой посещаемости, гарантируя, что наше приложение останется отзывчивым, а пользователи получат стабильный и быстрый анализ систематических ошибок. Кроме того, позволив нам переложить тяжелую задачу запроса модели Flan на управляемый сервис, мы смогли сохранить наше приложение легким и быстрым, улучшая взаимодействие с пользователем на различных устройствах. Функции SageMaker позволили нам максимально эффективно использовать время на хакатоне, позволив нам сосредоточиться на оптимизации наших подсказок и приложения, а не на управлении производительностью модели и инфраструктурой».
– Даниэле Кьяппалупи, участник студенческой команды хакатона AWS в ETH Zürich.
Обзор решения
Тема хакатона — внести вклад в достижение устойчивых целей ООН с помощью технологий искусственного интеллекта. Как показано на следующем рисунке, приложение, созданное на хакатоне, способствует достижению трех целей устойчивого развития (качественное образование, борьба с гендерной дискриминацией и сокращение неравенства), помогая пользователям выявлять и устранять предвзятости из их текста, чтобы способствовать справедливому и инклюзивный язык.
Как показано на следующем снимке экрана, после предоставления текста приложение создает новую версию, свободную от расовых, этнических и гендерных предубеждений. Кроме того, он выделяет конкретные части входного текста, относящиеся к каждой категории предвзятости.
В архитектуре, показанной на следующей диаграмме, пользователи вводят текст в поле реагироватьвеб-приложение, которое запускает Шлюз API Amazon, что, в свою очередь, вызывает AWS Lambda функция в зависимости от предвзятости пользовательского текста. Функция Lambda вызывает конечную точку модели Flan в SageMaker JumpStart, которая возвращает несмещенный текстовый результат по тому же маршруту обратно в интерфейсное приложение.
Процесс разработки приложения
Процесс разработки этого приложения был итеративным и сосредоточен на двух основных областях: пользовательский интерфейс и интеграция модели машинного обучения.
Мы выбрали React для фронтенд-разработки из-за его гибкости, масштабируемости и мощных инструментов для создания интерактивных пользовательских интерфейсов. Учитывая характер нашего приложения — обработку ввода пользователя и представление уточненных результатов — компонентная архитектура React оказалась идеальной. С помощью React мы могли эффективно создать одностраничное приложение, которое позволяло пользователям отправлять текст и видеть объективные результаты без необходимости постоянного обновления страниц.
Текст, введенный пользователем, должен был быть обработан мощной языковой моделью для проверки на предмет предвзятости. Мы выбрали Flan из-за его надежности, эффективности и масштабируемости. Чтобы использовать Flan, мы использовали SageMaker JumpStart, как показано на следующем снимке экрана. Создатель мудреца Амазонки упростило развертывание предварительно обученного экземпляра Flan и управление им, что позволило нам сосредоточиться на оптимизации подсказок и запросов, а не на управлении производительностью модели и инфраструктурой.
Подключение модели Flan к нашему интерфейсному приложению потребовало надежной и безопасной интеграции, которая была достигнута с помощью Lambda и API Gateway. С помощью Lambda мы создали бессерверную функцию, которая напрямую взаимодействует с нашей моделью SageMaker. Затем мы использовали API Gateway для создания безопасной, масштабируемой и легкодоступной конечной точки для нашего приложения React для вызова функции Lambda. Когда пользователь отправлял текст, приложение запускало серию API-вызовов к шлюзу — сначала для определения наличия предвзятости, а затем, при необходимости, дополнительных запросов для выявления, обнаружения и нейтрализации предвзятости. Все эти запросы были перенаправлены через функцию Lambda, а затем в нашу модель SageMaker.
Нашей последней задачей в процессе разработки был выбор подсказок для запроса языковой модели. Здесь набор данных CrowS-Pairs сыграл важную роль, поскольку предоставил нам реальные примеры предвзятого текста, которые мы использовали для точной настройки наших запросов. Мы выбрали подсказки с помощью итеративного процесса с целью максимизировать точность обнаружения систематических ошибок в этом наборе данных.
Подводя итоги процесса, мы наблюдали плавную работу готового приложения. Процесс начинается с того, что пользователь отправляет текст для анализа, который затем отправляется через POST-запрос на нашу защищенную конечную точку API-шлюза. Это активирует функцию Lambda, которая взаимодействует с конечной точкой SageMaker. Следовательно, модель Флана получает серию запросов. Первым проверяется наличие каких-либо искажений в тексте. Если обнаруживаются предвзятости, запускаются дополнительные запросы для обнаружения, идентификации и нейтрализации этих предвзятых элементов. Затем результаты возвращаются по тому же пути — сначала в функцию Lambda, затем через шлюз API и, в конечном итоге, обратно пользователю. Если в исходном тексте присутствовала какая-либо предвзятость, пользователь получает комплексный анализ с указанием типов обнаруженных предубеждений, будь то расовая, этническая или гендерная. Конкретные разделы текста, в которых были обнаружены эти предубеждения, выделены, что дает пользователям четкое представление о внесенных изменениях. Наряду с этим анализом представлена новая, объективная версия их текста, эффективно преобразующая потенциально предвзятую информацию в более инклюзивное повествование.
В следующих разделах мы подробно описываем шаги по реализации этого решения.
Настройте среду React
Мы начали с настройки среды разработки для React. Для загрузки нового приложения React с минимальной конфигурацией мы использовали create-react-app:
npx create-react-app my-app
Создайте пользовательский интерфейс
Используя React, мы разработали простой интерфейс для ввода текста пользователями с кнопкой отправки, кнопкой сброса и наложенными дисплеями для представления обработанных результатов, когда они будут доступны.
Запустите модель Flan в SageMaker.
Мы использовали SageMaker для создания предварительно обученного экземпляра языковой модели Flan с конечной точкой для вывода в реальном времени. Модель можно использовать для любой полезной нагрузки со структурой JSON, например:
Создать лямбда-функцию
Мы разработали функцию Lambda, которая напрямую взаимодействовала с нашей конечной точкой SageMaker. Функция была разработана для получения запроса с текстом пользователя, пересылки его в конечную точку SageMaker и возврата уточненных результатов, как показано в следующем коде (ENDPOINT_NAME
был настроен как конечная точка экземпляра SageMaker):
Настройте API-шлюз
Мы настроили новый REST API в API Gateway и связали его с нашей функцией Lambda. Это соединение позволило нашему приложению React отправлять HTTP-запросы к шлюзу API, что впоследствии запускало функцию Lambda.
Интегрируйте приложение React с API
Мы обновили приложение React, чтобы оно отправляло POST-запрос к шлюзу API при нажатии кнопки отправки, при этом тело запроса представляло собой текст пользователя. Код JavaScript, который мы использовали для выполнения вызова API, выглядит следующим образом (REACT_APP_AWS_ENDPOINT
соответствует конечной точке API-шлюза, привязанной к вызову Lambda):
Оптимизировать быстрый выбор
Чтобы повысить точность обнаружения систематической ошибки, мы протестировали различные подсказки на основе набора данных CrowS-Pairs. В ходе этого итеративного процесса мы выбрали подсказки, которые обеспечили нам максимальную точность.
Развертывание и тестирование приложения React на Vercel
После создания приложения мы развернули его на Vercel, чтобы сделать его общедоступным. Мы провели обширные тесты, чтобы убедиться, что приложение работает должным образом — от пользовательского интерфейса до ответов языковой модели.
Эти шаги заложили основу для создания нашего приложения для анализа и устранения искажений текста. Несмотря на присущую этому процессу сложность, использование таких инструментов, как SageMaker, Lambda и API Gateway, упростило разработку, позволив нам сосредоточиться на основной цели проекта — выявлении и устранении искажений в тексте.
Заключение
SageMaker JumpStart предлагает удобный способ изучить функции и возможности SageMaker. Он предоставляет тщательно подобранные одноэтапные решения, примеры блокнотов и развертываемые предварительно обученные модели. Эти ресурсы позволят вам быстро изучить и понять SageMaker. Кроме того, у вас есть возможность точно настроить модели и развернуть их в соответствии с вашими конкретными потребностями. Доступ к JumpStart доступен через Студия Amazon SageMaker или программно с помощью API SageMaker.
В этом посте вы узнали, как студенческая команда хакатона за короткое время разработала решение с помощью SageMaker JumpStart, которое показывает потенциал AWS и SageMaker JumpStart в обеспечении быстрой разработки и развертывания сложных решений искусственного интеллекта даже небольшими командами или отдельными людьми.
Дополнительную информацию об использовании SageMaker JumpStart см. Инструкции по тонкой настройке FLAN T5 XL с помощью Amazon SageMaker Jumpstart и Подсказки Zero-shot для базовой модели Flan-T5 в Amazon SageMaker JumpStart.
Клуб ETH Analytics провел «ETH Datathon», хакатон по искусственному интеллекту и машинному обучению, в котором приняли участие более 150 участников из ETH Zurich, Цюрихского университета и EPFL. Мероприятие включает в себя семинары под руководством лидеров отрасли, круглосуточное соревнование по программированию и ценные возможности для налаживания связей с сокурсниками и профессионалами отрасли. Огромное спасибо команде хакатона ETH: Даниэле Кьяппалупи, Афине Нисиоти и Франческо Игнацио Ре, а также остальным членам команды организаторов AWS: Алисе Морано, Демиру Катовичу, Яне Пейкс, Яну Оливеру Зайденфуссу, Ларсу Неттеманну и Маркусу Винтерхолеру.
Содержание и мнения в этом сообщении принадлежат стороннему автору, и AWS не несет ответственности за содержание или точность этого сообщения.
Об авторах
Цзюнь Чжан — архитектор решений из Цюриха. Он помогает швейцарским клиентам разрабатывать облачные решения для реализации их бизнес-потенциала. У него есть страсть к устойчивому развитию, и он стремится решать текущие проблемы устойчивого развития с помощью технологий. Он также большой поклонник тенниса и очень любит играть в настольные игры.
Мохан Гауда возглавляет группу машинного обучения в AWS в Швейцарии. Он работает в основном с клиентами из автомобильной отрасли над разработкой инновационных решений и платформ искусственного интеллекта и машинного обучения для автомобилей следующего поколения. До работы в AWS Мохан работал в компании Global Management Consulting, специализирующейся на стратегии и аналитике. Его страсть — подключенные транспортные средства и автономное вождение.
МатТиас Эгли является руководителем образования в Швейцарии. Он энергичный руководитель группы с обширным опытом в развитии бизнеса, продажах и маркетинге.
Кемэн Чжан — инженер ML из Цюриха. Она помогает клиентам по всему миру проектировать, разрабатывать и масштабировать приложения на основе машинного обучения, чтобы расширить их цифровые возможности, увеличить доходы бизнеса и снизить затраты. Она также очень увлечена созданием приложений, ориентированных на человека, используя знания из поведенческой науки. Ей нравится заниматься водными видами спорта и гулять с собаками.
Даниэле Чиаппалупи недавний выпускник ETH Zürich. Ему нравятся все аспекты разработки программного обеспечения: от проектирования до реализации и от развертывания до обслуживания. Он страстно увлечен искусственным интеллектом и с нетерпением ожидает изучения, использования и внесения вклада в последние достижения в этой области. В свободное время он любит кататься на сноуборде в холодные месяцы и играть в баскетбол, когда становится теплее.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- ПлатонЗдоровье. Биотехнологии и клинические исследования. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/innovation-for-inclusion-hack-the-bias-with-amazon-sagemaker/
- :имеет
- :является
- :нет
- :куда
- $UP
- 100
- 13
- 150
- 17
- 25
- 7
- 8
- 87
- 97
- 990
- a
- в состоянии
- О нас
- доступ
- доступной
- По
- точность
- Достигать
- достигнутый
- через
- дополнительный
- Дополнительно
- достижения
- После
- против
- AI
- AI / ML
- Алиса
- Все
- позволять
- разрешено
- Позволяющий
- рядом
- причислены
- Amazon
- Создатель мудреца Амазонки
- Amazon Web Services
- an
- анализ
- аналитика
- анализ
- и
- и инфраструктура
- предвосхищает
- любой
- API
- API
- приложение
- Применение
- Приложения
- архитектура
- МЫ
- области
- AS
- внешний вид
- At
- автор
- автоматический
- автомобильный
- автономный
- доступен
- AWS
- Вардар
- назад
- основанный
- Баскетбол
- BE
- , так как:
- до
- начал
- не являетесь
- смещение
- пристрастный
- предубеждения
- доска
- Настольные игры
- тело
- Граница
- широкий
- строить
- Строительство
- построенный
- бизнес
- развитие бизнеса
- кнопка
- by
- призывают
- Объявления
- CAN
- возможности
- Категории
- центр
- вызов
- проблемы
- изменения
- Проверки
- выбрал
- Очистить
- клуб
- код
- Кодирование
- сложность
- комплексный
- проводятся
- Конфигурация
- настроить
- подключенный
- связи
- вследствие этого
- постоянная
- консалтинг
- содержание
- контекст
- способствовать
- способствует
- содействие
- Удобно
- Основные
- соответствует
- Цена
- может
- Создайте
- создали
- Создающий
- решающее значение
- Куратор
- Текущий
- Клиенты
- данным
- глубоко
- в зависимости
- развертывание
- развернуть
- развертывание
- Проект
- предназначенный
- Несмотря на
- подробность
- обнаруженный
- обнаружение
- развивать
- развитый
- развивающийся
- Развитие
- Устройства
- различный
- Интернет
- непосредственно
- дисплеев
- рисует
- вождение
- два
- в течение
- каждый
- с нетерпением
- легко
- легко
- Обучение
- фактически
- затрат
- эффективно
- элементы
- уничтожение
- расширение прав и возможностей
- уполномоченный
- позволяет
- Конечная точка
- инженер
- Проект и
- повышение
- обеспечивать
- обеспечение
- вошел
- энтузиазмом
- Окружающая среда
- ETH
- Даже
- События
- Каждая
- пример
- Примеры
- ожидаемый
- опыт
- Больше
- Исследование
- обширный
- ярмарка
- вентилятор
- БЫСТРО
- Особенность
- Особенности
- человек
- поле
- фигура
- окончательный
- Фирма
- Во-первых,
- Трансформируемость
- поток
- Фокус
- после
- следующим образом
- Что касается
- вперед
- найденный
- Год основания
- Бесплатно
- от
- функция
- далее
- Игры
- шлюз
- дал
- пол
- генерирует
- поколение
- получить
- данный
- Отдаете
- Глобальный
- цель
- Цели
- будет
- захват
- выпускник
- большой
- фундамент
- мотыга
- Hackathon
- Есть
- he
- тяжелый
- помощь
- помогает
- здесь
- наивысший
- Выделенные
- основной момент
- его
- состоялся
- Как
- HTML
- HTTP
- HTTPS
- огромный
- идеальный
- определения
- if
- осуществлять
- реализация
- Импортировать
- улучшать
- in
- включение
- включительно
- Увеличение
- лиц
- промышленность
- неравенства
- Инфраструктура
- свойственный
- Инновации
- инновационный
- вход
- пример
- инструментальный
- интеграции.
- интерактивный
- Интерфейс
- интерфейсы
- в
- Запускает
- IT
- ЕГО
- Января
- JavaScript
- JPG
- JSON
- Сохранить
- знания
- язык
- последний
- вести
- Лидеры
- Лиды
- УЧИТЬСЯ
- узнали
- изучение
- привело
- Используя
- лежит
- легкий
- такое как
- нравится
- связанный
- серия
- любит
- машина
- обучение с помощью машины
- сделанный
- Главная
- техническое обслуживание
- сделать
- управлять
- управляемого
- управление
- управления
- Маркетинг
- Максимизировать
- максимизации
- минимальный
- ML
- модель
- Модели
- месяцев
- БОЛЕЕ
- РАССКАЗ
- природа
- необходимо
- Необходимость
- необходимый
- потребности
- сетей
- Сетевые возможности
- Новые
- следующий
- цель
- of
- предлагающий
- Предложения
- on
- оперативный
- Мнения
- Возможности
- оптимизирующий
- Опция
- or
- заказ
- организации
- оригинал
- OS
- наши
- страница
- новыми участниками
- части
- страсть
- страстный
- Выполнять
- производительность
- периодов
- Платформы
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- играл
- игры
- После
- потенциал
- потенциально
- мощный
- присутствие
- представить
- представлены
- в первую очередь
- процесс
- Обработанный
- профессионалы
- Проект
- продвижении
- свойства
- доказанный
- обеспечивать
- при условии
- приводит
- публично
- Запросы
- быстро
- быстро
- скорее
- RE
- реагировать
- легко
- реальные
- реального времени
- Получать
- получила
- получает
- последний
- уменьшить
- Цена снижена
- относиться
- рафинированный
- Связанный
- остались
- удаление
- запросить
- Запросы
- обязательный
- Полезные ресурсы
- ответы
- ответственный
- отзывчивый
- ОТДЫХ
- результат
- Итоги
- возвращают
- Возвращает
- доходы
- надежный
- прочность
- Роли
- дорога
- sagemaker
- главная
- то же
- Масштабируемость
- масштабируемые
- Шкала
- масштабирование
- Наука
- бесшовные
- разделах
- безопасный
- посмотреть
- семя
- выбранный
- выбор
- послать
- Серии
- Serverless
- обслуживание
- Услуги
- набор
- установка
- она
- Короткое
- показывать
- показанный
- Шоу
- просто
- небольшой
- Software
- разработка программного обеспечения
- твердый
- Решение
- Решения
- РЕШАТЬ
- сложный
- конкретный
- Спорт
- и политические лидеры
- устойчивый
- Шаги
- Стратегия
- обтекаемый
- стремится
- "Студент"
- Студенты
- представление
- отправить
- представленный
- впоследствии
- Стабильность
- комфортного
- Устойчивое развитие
- SWIFT
- швейцарский
- Швейцария
- направлены
- Сложность задачи
- команда
- команды
- Технологии
- тестXNUMX
- проверенный
- тестов
- текст
- чем
- Спасибо
- который
- Ассоциация
- их
- Их
- тема
- тогда
- Эти
- сторонние
- этой
- те
- три
- Через
- время
- в
- инструменты
- превращение
- срабатывает
- ОЧЕРЕДЬ
- два
- Типы
- В конечном счете
- UN
- понимать
- Университет
- обновление
- us
- использование
- используемый
- Информация о пользователе
- Пользовательский опыт
- Пользовательский интерфейс
- пользователей
- через
- использовать
- использовать
- Использующий
- ценный
- различный
- Транспорт
- версия
- очень
- с помощью
- Вид
- ходьба
- Согревает
- законопроект
- Вода
- Путь..
- we
- Погода
- Web
- веб-сервисы
- ЧТО Ж
- были
- когда
- будь то
- , которые
- в
- без
- работавший
- работает
- работает
- Семинары
- Ты
- ВАШЕ
- зефирнет
- Цюрих