Цю публікацію було написано у співавторстві з Даніеле Чіаппалупі, учасником команди студентського хакатону AWS в ETH Zürich.
Кожен може легко почати використовувати машинне навчання (ML). Amazon SageMaker JumpStart. У цій публікації ми покажемо вам, як команда університету Hackathon використовувала SageMaker JumpStart для швидкого створення програми, яка допомагає користувачам виявляти та усувати упередження.
«Amazon SageMaker відіграв важливу роль у нашому проекті. Це полегшило розгортання та керування попередньо навченим екземпляром Flan, запропонувавши нам міцну основу для нашої програми. Його функція автоматичного масштабування виявилася важливою в періоди високого трафіку, гарантуючи, що наш додаток залишатиметься чуйним, а користувачі отримуватимуть стабільний і швидкий аналіз упереджень. Крім того, дозволивши нам звільнити важке завдання запиту моделі Flan до керованої служби, ми змогли зберегти нашу програму легкою та швидкою, підвищуючи взаємодію з користувачами на різних пристроях. Функції SageMaker дозволили нам максимізувати час на хакатоні, що дозволило нам зосередитися на оптимізації підказок і програми, а не на керуванні продуктивністю та інфраструктурою моделі».
– Даніеле Чіаппалупі, учасник команди студентського хакатону AWS в ETH Zürich.
Огляд рішення
Тема хакатону — сприяти досягненню цілей сталого розвитку ООН за допомогою технологій ШІ. Як показано на наступному малюнку, програма, створена під час хакатону, сприяє досягненню трьох цілей сталого розвитку (якісна освіта, боротьба з дискримінацією за ознакою статі та зменшення нерівності), допомагаючи користувачам виявляти та усувати упередження з тексту для сприяння справедливому і інклюзивна мова.
Як показано на наступному знімку екрана, після того, як ви надасте текст, програма генерує нову версію, яка не містить расових, етнічних і гендерних упереджень. Крім того, він виділяє окремі частини вашого введеного тексту, пов’язані з кожною категорією упередженості.
В архітектурі, показаній на наступній діаграмі, користувачі вводять текст у Реагувативеб-програма на основі, яка запускає API -шлюз Amazon, який, у свою чергу, викликає an AWS Lambda залежно від упередженості в тексті користувача. Функція Lambda викликає кінцеву точку моделі Flan у SageMaker JumpStart, яка повертає неупереджений текстовий результат через той самий маршрут назад у зовнішню програму.
Процес розробки програми
Процес розробки цієї програми був ітеративним і зосереджений на двох основних областях: інтерфейс користувача та інтеграція моделі ML.
Ми обрали React для розробки інтерфейсу завдяки його гнучкості, масштабованості та потужним інструментам для створення інтерактивних інтерфейсів користувача. Враховуючи характер нашої програми — обробка введених даних користувачами та представлення уточнених результатів — компонентна архітектура React виявилася ідеальною. За допомогою React ми могли ефективно створювати односторінкову програму, яка дозволяла користувачам надсилати текст і переглядати неупереджені результати без необхідності постійного оновлення сторінки.
Текст, введений користувачем, мав бути оброблений потужною мовною моделлю для перевірки на наявність упереджень. Ми вибрали Flan через його надійність, ефективність і масштабованість. Щоб використовувати Flan, ми використали SageMaker JumpStart, як показано на наступному знімку екрана. Amazon SageMaker спростив розгортання та керування попередньо навченим екземпляром Flan, що дозволило нам зосередитися на оптимізації наших підказок і запитів, а не на управлінні продуктивністю та інфраструктурою моделі.
Підключення моделі Flan до нашого зовнішнього додатку потребувало надійної та безпечної інтеграції, яка була досягнута за допомогою Lambda та API Gateway. За допомогою Lambda ми створили безсерверну функцію, яка безпосередньо взаємодіє з нашою моделлю SageMaker. Потім ми використали API Gateway, щоб створити безпечну, масштабовану та легкодоступну кінцеву точку для нашого додатка React для виклику функції Lambda. Коли користувач надсилав текст, програма запускала серію викликів API до шлюзу — спочатку для виявлення будь-яких упереджень, а потім, якщо необхідно, додаткових запитів для виявлення, визначення місцезнаходження та нейтралізації упереджень. Усі ці запити направлялися через функцію Lambda, а потім до нашої моделі SageMaker.
Нашим останнім завданням у процесі розробки був вибір підказок для запиту мовної моделі. Тут набір даних CrowS-Pairs відіграв важливу роль, оскільки він надав нам реальні приклади упередженого тексту, які ми використали для точного налаштування наших запитів. Ми вибрали підказки за допомогою ітераційного процесу з метою максимізації точності виявлення зсуву в цьому наборі даних.
Завершуючи процес, ми спостерігали безперебійну роботу готової програми. Процес починається з того, що користувач надсилає текст для аналізу, який потім надсилається через запит POST до нашої безпечної кінцевої точки API Gateway. Це запускає функцію 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, прив’язаній до виклику лямбда):
Оптимізуйте швидкий вибір
Щоб підвищити точність виявлення зміщення, ми протестували різні підказки з набором даних CrowS-Pairs. Завдяки цьому ітераційному процесу ми вибрали підказки, які забезпечили нам найвищу точність.
Розгорніть і протестуйте додаток React на Vercel
Після створення програми ми розгорнули її на Vercel, щоб зробити її загальнодоступною. Ми провели масштабні тести, щоб переконатися, що програма функціонує належним чином, від інтерфейсу користувача до відповідей мовної моделі.
Ці кроки заклали основу для створення нашої програми для аналізу та усунення зміщень тексту. Незважаючи на притаманну складність процесу, використання таких інструментів, як SageMaker, Lambda та API Gateway, оптимізувало розробку, дозволяючи нам зосередитися на основній меті проекту — виявленні та усуненні упереджень у тексті.
Висновок
SageMaker JumpStart пропонує зручний спосіб ознайомлення з функціями та можливостями SageMaker. Він пропонує підібрані одноетапні рішення, приклади блокнотів і розгортання попередньо навчених моделей. Ці ресурси дозволяють швидко вивчити та зрозуміти SageMaker. Крім того, у вас є можливість точно налаштувати моделі та розгорнути їх відповідно до ваших конкретних потреб. Доступ до JumpStart доступний через Студія Amazon SageMaker або програмно за допомогою API SageMaker.
У цій публікації ви дізналися, як студентська команда Hackathon за короткий час розробила рішення за допомогою SageMaker JumpStart, яке демонструє потенціал AWS і SageMaker JumpStart у забезпеченні швидкої розробки та розгортання складних рішень штучного інтелекту навіть невеликими командами чи окремими особами.
Щоб дізнатися більше про використання SageMaker JumpStart, див Точне налаштування інструкцій для FLAN T5 XL за допомогою Amazon SageMaker Jumpstart та Підказка Zero-shot для моделі основи Flan-T5 в Amazon SageMaker JumpStart.
ETH Analytics Club організував «ETH Datathon», хакатон AI/ML, який збирає понад 150 учасників з ETH Zurich, Цюрихського університету та EPFL. Подія включає семінари, які ведуть лідери галузі, 24-годинне завдання з кодування та цінні можливості для спілкування з іншими студентами та професіоналами галузі. Велика подяка команді ETH Hackathon: Даніеле Чіаппалупі, Атіні Нісіоті та Франческо Ігнаціо Ре, а також решті команди організаторів AWS: Алісі Морано, Деміру Катовічу, Іані Пейкс, Яну Оліверу Зайденфусу, Ларсу Неттеманну та Маркусу Вінтерхолеру.
Зміст і думки в цій публікації належать стороннім авторам, і AWS не несе відповідальності за зміст або точність цього повідомлення.
Про авторів
Цзюнь Чжан є архітектором рішень у Цюріху. Він допомагає швейцарським клієнтам розробляти хмарні рішення для реалізації потенціалу їхнього бізнесу. Він має пристрасть до сталого розвитку та прагне вирішувати поточні проблеми сталого розвитку за допомогою технологій. Він також великий шанувальник тенісу і любить грати в настільні ігри.
Мохан Гоуда очолює команду машинного навчання в AWS Швейцарія. Він працює в основному з клієнтами автомобільної галузі над розробкою інноваційних рішень і платформ AI/ML для автомобілів нового покоління. До роботи з AWS Мохан працював у консалтинговій фірмі Global Management Consulting, яка займалася стратегією та аналітикою. Його пристрасть – підключені транспортні засоби та автономне водіння.
Харчуванняthias Egli є головою освіти в Швейцарії. Він є керівником команди з великим ентузіазмом і має великий досвід розвитку бізнесу, продажів і маркетингу.
Кемен Чжан є інженером ML у Цюріху. Вона допомагає клієнтам у всьому світі проектувати, розробляти та масштабувати додатки на основі машинного навчання, щоб розширити їхні цифрові можливості для збільшення доходів бізнесу та зменшення витрат. Вона також дуже захоплена створенням орієнтованих на людину додатків, використовуючи знання з поведінкових наук. Вона любить займатися водними видами спорту та гуляти з собаками.
Даніеле Чіаппалупі нещодавно закінчив ETH Zürich. Йому подобається кожен аспект розробки програмного забезпечення, від проектування до реалізації та від розгортання до обслуговування. Він глибоко захоплюється штучним інтелектом і з нетерпінням чекає вивчення, використання та внеску в останні досягнення в цій галузі. У вільний час він любить кататися на сноуборді в холодні місяці та грати в баскетбол, коли погода теплішає.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- PlatoHealth. Розвідка про біотехнології та клінічні випробування. Доступ тут.
- джерело: 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
- Здатний
- МЕНЮ
- доступ
- доступною
- За
- точність
- Achieve
- досягнутий
- через
- Додатковий
- Додатково
- досягнення
- після
- проти
- AI
- AI / ML
- Аліса
- ВСІ
- дозволяти
- дозволено
- Дозволити
- пліч-о-пліч
- Також
- Amazon
- Amazon SageMaker
- Amazon Web Services
- an
- аналіз
- аналітика
- Аналізуючи
- та
- та інфраструктури
- передчуває
- будь-який
- API
- Інтерфейси
- додаток
- додаток
- застосування
- архітектура
- ЕСТЬ
- області
- AS
- зовнішній вигляд
- At
- автор
- автоматичний
- автомобільний
- автономний
- доступний
- AWS
- Axios
- назад
- заснований
- баскетбол
- BE
- оскільки
- перед тим
- почалася
- буття
- зміщення
- упереджений
- упередження
- рада
- Настільні ігри
- тіло
- Кордон
- широкий
- будувати
- Створюємо
- побудований
- бізнес
- розвиток бізнесу
- button
- by
- call
- Виклики
- CAN
- можливості
- Категорія
- центр
- виклик
- проблеми
- Зміни
- Перевірки
- вибрав
- ясно
- клуб
- код
- Кодування
- складність
- всеосяжний
- проводиться
- конфігурація
- налаштувати
- підключений
- зв'язку
- Отже
- постійна
- консалтинг
- зміст
- контекст
- сприяти
- сприяє
- внесок
- Зручний
- Core
- відповідає
- Коштувати
- може
- створювати
- створений
- створення
- вирішальне значення
- Куратор
- Поточний
- Клієнти
- дані
- глибокий
- Залежно
- розгортання
- розгорнути
- розгортання
- дизайн
- призначений
- Незважаючи на
- деталь
- виявлено
- Виявлення
- розвивати
- розвиненою
- розвивається
- розробка
- прилади
- різний
- цифровий
- безпосередньо
- дисплеїв
- малює
- водіння
- два
- під час
- кожен
- з нетерпінням
- легко
- легко
- Освіта
- фактично
- ефективність
- продуктивно
- елементи
- усуваючи
- уповноважувати
- уповноважений
- дозволяє
- Кінцева точка
- інженер
- Машинобудування
- підвищення
- забезпечувати
- забезпечення
- увійшов
- захоплений
- Навколишнє середовище
- ETH
- Навіть
- Event
- Кожен
- приклад
- Приклади
- очікуваний
- досвід
- дослідити
- Дослідження
- обширний
- ярмарок
- вентилятор
- ШВИДКО
- особливість
- риси
- fellow
- поле
- Рисунок
- остаточний
- Фірма
- Перший
- Гнучкість
- потік
- Сфокусувати
- після
- слідує
- для
- Вперед
- знайдений
- фонд
- Безкоштовна
- від
- функція
- далі
- Games
- шлюз
- дав
- Стать
- генерує
- покоління
- отримати
- даний
- дає
- Глобальний
- мета
- Цілі
- буде
- захоплення
- випускник
- великий
- основи
- зламати
- Hackathon
- Мати
- he
- голова
- важкий
- допомогу
- допомагає
- тут
- найвищий
- Виділено
- основний момент
- його
- відбувся
- Як
- HTML
- HTTP
- HTTPS
- величезний
- ідеальний
- ідентифікувати
- if
- здійснювати
- реалізація
- імпорт
- удосконалювати
- in
- включення
- Включно
- Augmenter
- осіб
- промисловість
- нерівності
- Інфраструктура
- притаманне
- інновація
- інноваційний
- вхід
- екземпляр
- інструментальний
- інтеграція
- інтерактивний
- інтерфейс
- Інтерфейси
- в
- викликає
- IT
- ЙОГО
- січень
- JavaScript
- JPG
- json
- тримати
- знання
- мова
- останній
- вести
- Лідери
- Веде за собою
- УЧИТЬСЯ
- вчений
- вивчення
- Led
- використання
- лежить
- легкий
- як
- Сподобалося
- пов'язаний
- серія
- любить
- машина
- навчання за допомогою машини
- made
- головний
- обслуговування
- зробити
- управляти
- вдалося
- управління
- управління
- Маркетинг
- Максимізувати
- максимізація
- мінімальний
- ML
- модель
- Моделі
- місяців
- більше
- NARRATIVE
- природа
- необхідно
- Необхідність
- необхідний
- потреби
- мережа
- Можливості мережі
- Нові
- наступний
- мета
- of
- пропонує
- Пропозиції
- on
- оперативний
- Думки
- Можливості
- оптимізуючий
- варіант
- or
- порядок
- організація
- оригінал
- OS
- наші
- сторінка
- Учасники
- частини
- пристрасть
- пристрасний
- Виконувати
- продуктивність
- періодів
- Платформи
- plato
- Інформація про дані Платона
- PlatoData
- грав
- ігри
- пошта
- потенціал
- потенційно
- потужний
- наявність
- представити
- представлений
- в першу чергу
- процес
- Оброблено
- професіонали
- проект
- сприяти
- властивості
- доведений
- забезпечувати
- за умови
- забезпечує
- публічно
- якість
- запити
- швидко
- швидко
- швидше
- RE
- Реагувати
- легко
- реальний
- реального часу
- отримати
- отримано
- отримує
- останній
- зменшити
- Знижений
- послатися
- рафінований
- пов'язаний
- залишився
- видаляти
- запросити
- запитів
- вимагається
- ресурси
- відповіді
- відповідальний
- реагувати
- REST
- результат
- результати
- повертати
- Умови повернення
- revenue
- міцний
- стійкість
- Роль
- Маршрут
- мудрець
- продажів
- то ж
- масштабованість
- масштабовані
- шкала
- Масштабування
- наука
- безшовні
- розділам
- безпечний
- побачити
- насіння
- обраний
- вибір
- посланий
- Серія
- Без сервера
- обслуговування
- Послуги
- комплект
- установка
- вона
- Короткий
- Показувати
- показаний
- Шоу
- простий
- невеликий
- Софтвер
- розробка програмного забезпечення
- solid
- рішення
- Рішення
- ВИРІШИТИ
- складний
- конкретний
- SPORTS
- почалася
- стійкий
- заходи
- Стратегія
- обтічний
- прагне
- студент
- Студентам
- уявлення
- представляти
- представлений
- Згодом
- Sustainability
- сталого
- Сталий розвиток
- SWIFT
- Швейцарський
- Швейцарія
- націлювання
- Завдання
- команда
- команди
- Технологія
- тест
- перевірений
- Тести
- текст
- ніж
- Дякую
- Що
- Команда
- їх
- Їх
- тема
- потім
- Ці
- третя сторона
- це
- ті
- три
- через
- час
- до
- інструменти
- перетворення
- спрацьовує
- ПЕРЕГЛЯД
- два
- Типи
- Зрештою
- UN
- розуміти
- університет
- оновлений
- us
- використання
- використовуваний
- користувач
- User Experience
- Інтерфейс користувача
- користувачі
- використання
- використовувати
- використовувати
- використовує
- Цінний
- різний
- Транспортні засоби
- версія
- дуже
- через
- вид
- ходьба
- Зігріває
- було
- вода
- шлях..
- we
- погода
- Web
- веб-сервіси
- ДОБРЕ
- були
- коли
- Чи
- який
- з
- в
- без
- працював
- робочий
- працює
- Семінари
- Ти
- вашу
- зефірнет
- Цюріх