Це гостьовий пост від Масштабований капітал, провідна фінансово-технічна компанія в Європі, яка пропонує управління цифровим капіталом і брокерську платформу з фіксованою торговою ставкою.
Scalable Capital, як компанія, що швидко розвивається, прагне не лише побудувати інноваційну, міцну та надійну інфраструктуру, але й надавати найкращі умови для наших клієнтів, особливо коли мова йде про клієнтські послуги.
Scalable щодня отримує сотні електронних запитів від наших клієнтів. Завдяки впровадженню сучасної моделі обробки природної мови (NLP) процес відповіді був сформований набагато ефективніше, а час очікування для клієнтів значно скоротився. Модель машинного навчання (ML) класифікує нові вхідні запити клієнтів, щойно вони надходять, і перенаправляє їх у заздалегідь визначені черги, що дозволяє нашим спеціалізованим клієнтським агентам зосереджуватися на вмісті електронних листів відповідно до їхніх навичок і надавати відповідні відповіді.
У цій публікації ми демонструємо технічні переваги використання трансформаторів Hugging Face, які розгортаються з Amazon SageMaker, як-от навчання та експериментування в масштабі, а також підвищення продуктивності та економічності.
Постановка проблеми
Scalable Capital є однією з найбільш швидкозростаючих фінансових технологій у Європі. З метою демократизації інвестицій компанія забезпечує своїм клієнтам легкий доступ до фінансових ринків. Клієнти Scalable можуть активно брати участь у ринку через брокерську торгову платформу компанії або використовувати Scalable Wealth Management для інтелектуального й автоматизованого інвестування. У 2021 році Scalable Capital збільшив свою клієнтську базу в десять разів — з десятків тисяч до сотень тисяч.
Щоб надати нашим клієнтам першокласний (і стабільний) досвід роботи з продуктами та клієнтськими послугами, компанія шукала автоматизовані рішення для підвищення ефективності масштабованого рішення, зберігаючи при цьому операційну досконалість. Команди Scalable Capital з аналізу даних і обслуговування клієнтів виявили, що одним із найбільших вузьких місць у обслуговуванні наших клієнтів були відповіді на запити електронною поштою. Зокрема, вузьким місцем був етап класифікації, на якому співробітники щодня мали читати та маркувати тексти запитів. Після того, як електронні листи було направлено до відповідних черг, відповідні спеціалісти швидко залучилися та вирішували справи.
Щоб упорядкувати цей процес класифікації, команда Scalable створила та розгорнула багатозадачну модель NLP, використовуючи найсучаснішу трансформаторну архітектуру на основі попередньо навчених distilbert-base-german-cased модель, опублікована Hugging Face. distilbert-base-german-cased використовує дистиляція знань метод для попереднього навчання меншої моделі представлення мови загального призначення, ніж оригінальна базова модель BERT. Дистильована версія досягає продуктивності, порівнянної з оригінальною версією, але є меншою та швидшою. Щоб полегшити процес життєвого циклу машинного навчання, ми вирішили застосувати SageMaker для створення, розгортання, обслуговування та моніторингу наших моделей. У наступному розділі ми представляємо дизайн архітектури нашого проекту.
Огляд рішення
Інфраструктура ML Scalable Capital складається з двох облікових записів AWS: один як середовище для етапу розробки, а інший для етапу виробництва.
На наведеній нижче діаграмі показано робочий процес для нашого проекту класифікатора електронної пошти, але її також можна узагальнити для інших проектів з обробки даних.
Робочий процес складається з наступних компонентів:
- Експериментування моделі – Вчені використовують дані Студія Amazon SageMaker здійснити перші кроки в життєвому циклі науки про дані: пошуковий аналіз даних (EDA), очищення та підготовка даних, а також створення прототипних моделей. Коли дослідницька фаза завершена, ми звертаємося до VSCode, розміщеного на ноутбуці SageMaker, як до нашого інструменту віддаленої розробки для модульування та виробництва нашої кодової бази. Щоб досліджувати різні типи моделей і конфігурацій моделей і водночас відстежувати наші експерименти, ми використовуємо SageMaker Training і SageMaker Experiments.
- Побудова моделі – Після того, як ми визначимося з моделлю для нашого виробничого сценарію використання, у цьому випадку багатозадачності distilbert-base-german-cased модель, налаштовану з попередньо навченої моделі від Hugging Face, ми фіксуємо та надсилаємо наш код до гілки розробки Github. Подія злиття Github запускає наш конвеєр Jenkins CI, який, у свою чергу, запускає завдання SageMaker Pipelines із тестовими даними. Це діє як тест, щоб переконатися, що коди працюють належним чином. Тестова кінцева точка розгортається з метою тестування.
- Розгортання моделі – Переконавшись, що все працює належним чином, дослідники обробки даних об’єднують гілку розробки в основну гілку. Ця подія злиття тепер ініціює завдання SageMaker Pipelines, використовуючи виробничі дані з метою навчання. Після цього артефакти моделі створюються та зберігаються у вихідних даних Служба простого зберігання Amazon (Amazon S3), а нова версія моделі реєструється в реєстрі моделей SageMaker. Фахівці з даних перевіряють ефективність нової моделі, а потім схвалюють, чи відповідає вона очікуванням. Подія затвердження моделі фіксується Amazon EventBridge, який потім розгортає модель на кінцевій точці SageMaker у робочому середовищі.
- MLOps – Оскільки кінцева точка SageMaker є приватною та не може бути доступна службам за межами VPC, an AWS Lambda функція і API -шлюз Amazon публічна кінцева точка потрібна для зв’язку з CRM. Щоразу, коли нові електронні листи надходять до папки «Вхідні» CRM, CRM викликає публічну кінцеву точку API Gateway, яка, у свою чергу, запускає функцію Lambda для виклику приватної кінцевої точки SageMaker. Потім функція передає класифікацію назад до CRM через публічну кінцеву точку API Gateway. Щоб відстежувати продуктивність нашої розгорнутої моделі, ми впроваджуємо цикл зворотного зв’язку між CRM і спеціалістами з обробки даних, щоб відстежувати прогнозовані показники моделі. Щомісяця CRM оновлює історичні дані, які використовуються для експериментів і навчання моделей. Ми використовуємо Керовані робочі процеси Amazon для Apache Airflow (Amazon MWAA) як планувальник для нашого щомісячного перенавчання.
У наступних розділах ми більш детально розбираємо етапи підготовки даних, експериментування моделі та розгортання моделі.
Підготовка даних
Scalable Capital використовує інструмент CRM для керування та зберігання даних електронної пошти. Відповідний вміст електронної пошти складається з теми, основного вмісту та банків-зберігачів. Кожному електронному листу можна призначити три мітки: напрямок діяльності, відповідну чергу та конкретну тему електронного листа.
Перш ніж почати навчання будь-яких моделей НЛП, ми переконаємося, що вхідні дані чисті, а мітки призначені відповідно до очікувань.
Щоб отримати чистий вміст запиту від клієнтів Scalable, ми видаляємо з необроблених даних електронної пошти зайвий текст і символи, такі як підписи електронних листів, відбитки, цитати попередніх повідомлень у ланцюжках електронних листів, символи CSS тощо. Інакше продуктивність наших майбутніх навчених моделей може погіршитися.
Мітки для електронних листів з часом змінюються, оскільки команди обслуговування клієнтів Scalable додають нові та вдосконалюють або видаляють існуючі відповідно до потреб бізнесу. Щоб переконатися, що мітки для навчальних даних, а також очікувані класифікації для прогнозування актуальні, група даних працює в тісній співпраці з командою обслуговування клієнтів, щоб забезпечити правильність міток.
Модельні експерименти
Ми починаємо наш експеримент із готових, попередньо навчених distilbert-base-german-cased модель, опублікована Hugging Face. Оскільки попередньо навчена модель є моделлю представлення мови загального призначення, ми можемо адаптувати архітектуру для виконання конкретних завдань нижче за течією, таких як класифікація та відповіді на запитання, приєднавши відповідні головки до нейронної мережі. У нашому випадку використання нижчою задачею, яка нас цікавить, є класифікація послідовності. Не змінюючи існуюча архітектура, ми вирішили налаштувати три окремі попередньо навчені моделі для кожної з наших необхідних категорій. З Контейнери глибокого навчання SageMaker Hugging Face (DLC), запуск і керування NLP-експериментами спрощено за допомогою контейнерів Hugging Face і SageMaker Experiments API.
Нижче наведено фрагмент коду train.py
:
Наступний код є інструментом оцінки Hugging Face:
Щоб перевірити точно налаштовані моделі, ми використовуємо Оцінка F1 через незбалансований характер нашого набору даних електронної пошти, а також для обчислення інших показників, таких як точність, точність і запам’ятовування. Щоб SageMaker Experiments API зареєстрував показники навчального завдання, нам потрібно спочатку зареєструвати показники на локальній консолі навчального завдання, які збирає Amazon CloudWatch. Потім ми визначаємо правильний формат регулярного виразу для запису журналів CloudWatch. Визначення метрики включають назву метрики та перевірку регулярного виразу для отримання метрики з навчального завдання:
У рамках ітерації навчання для моделі класифікатора ми використовуємо матрицю помилок і класифікаційний звіт для оцінки результату. На наступному малюнку показано матрицю плутанини для прогнозування напряму діяльності.
На наступному знімку екрана показано приклад класифікаційного звіту для передбачення напряму діяльності.
Наступною ітерацією нашого експерименту ми скористаємося багатозадачне навчання щоб покращити нашу модель. Багатозадачне навчання — це форма навчання, у якій модель вчиться вирішувати кілька завдань одночасно, оскільки спільна інформація між завданнями може підвищити ефективність навчання. Приєднавши ще дві головки класифікації до оригінальної архітектури distilbert, ми можемо виконати багатозадачне тонке налаштування, яке досягне прийнятних показників для нашої команди обслуговування клієнтів.
Розгортання моделі
У нашому випадку використання класифікатор електронної пошти має бути розгорнуто на кінцевій точці, до якої наш конвеєр CRM може надсилати пакет некласифікованих електронних листів і отримувати прогнози. Оскільки ми маємо інші логіки, такі як очищення вхідних даних і багатозадачні прогнози, окрім висновку моделі Hugging Face, нам потрібно написати спеціальний сценарій висновку, який відповідає Стандарт SageMaker.
Нижче наведено фрагмент коду inference.py
:
Коли все готово, ми використовуємо SageMaker Pipelines для керування навчальним конвеєром і під’єднуємо його до нашої інфраструктури для завершення налаштування MLOps.
Щоб контролювати ефективність розгорнутої моделі, ми створюємо цикл зворотнього зв’язку, щоб дозволити CRM надавати нам статус секретних електронних листів, коли справи закрито. На основі цієї інформації ми вносимо корективи для покращення розгорнутої моделі.
Висновок
У цьому дописі ми поділилися тим, як SageMaker допомагає команді з вивчення даних у Scalable ефективно керувати життєвим циклом проекту з вивчення даних, а саме проекту класифікатора електронної пошти. Життєвий цикл починається з початкової фази аналізу та дослідження даних за допомогою SageMaker Studio; переходить до експериментування та розгортання моделі за допомогою навчання SageMaker, висновків і DLC Hugging Face; і завершується навчальним конвеєром із SageMaker Pipelines, інтегрованим з іншими службами AWS. Завдяки цій інфраструктурі ми можемо повторювати та розгортати нові моделі більш ефективно, а отже, можемо покращувати існуючі процеси в Scalable, а також досвід наших клієнтів.
Щоб дізнатися більше про Hugging Face і SageMaker, зверніться до таких ресурсів:
Про авторів
Доктор Сандра Шмід є керівником аналітики даних компанії Scalable GmbH. Вона разом зі своїми командами відповідає за підходи на основі даних і випадки використання в компанії. Її основним завданням є пошук найкращого поєднання моделей машинного навчання та науки про дані та бізнес-цілей, щоб отримати якомога більшу цінність для бізнесу та ефективність використання даних.
Хуй Данг Науковий спеціаліст з обробки даних у Scalable GmbH. У його обов’язки входить аналіз даних, створення та розгортання моделей машинного навчання, а також розробка та підтримка інфраструктури для команди з обробки даних. У вільний час він любить читати, піти в походи, займатися скелелазінням і бути в курсі останніх розробок машинного навчання.
Міа Чанг є архітектором рішень ML Specialist для Amazon Web Services. Вона працює з клієнтами в регіоні EMEA та ділиться найкращими практиками для виконання робочих навантажень AI/ML у хмарі зі своїм досвідом із прикладної математики, інформатики та AI/ML. Вона зосереджується на навантаженнях, пов’язаних із НЛП, і ділиться своїм досвідом виступу на конференції та автора книг. У вільний час вона захоплюється йогою, настільними іграми та варінням кави.
Моріц Гертлер є менеджером по роботі з клієнтами в сегменті Digital Native Businesses в AWS. Він зосереджується на клієнтах у сфері фінансових технологій і підтримує їх у прискоренні інновацій за допомогою безпечної та масштабованої хмарної інфраструктури.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. Автомобільні / електромобілі, вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- PlatoHealth. Розвідка про біотехнології та клінічні випробування. Доступ тут.
- ChartPrime. Розвивайте свою торгову гру за допомогою ChartPrime. Доступ тут.
- BlockOffsets. Модернізація екологічної компенсаційної власності. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/accelerate-client-success-management-through-email-classification-with-hugging-face-on-amazon-sagemaker/
- : має
- :є
- : ні
- :де
- $UP
- 1
- 100
- 13
- 15%
- 17
- 2021
- 26%
- 32
- 500
- 7
- a
- Здатний
- МЕНЮ
- вище
- прискорювати
- прискорення
- Прийняти
- доступ
- розмістити
- За
- рахунки
- Рахунки
- точність
- Досягає
- через
- активно
- акти
- пристосовувати
- додавати
- доповнення
- коректування
- прийняти
- Перевага
- після
- потім
- агенти
- AI / ML
- мета
- дозволяє
- Також
- Amazon
- Amazon SageMaker
- Amazon Web Services
- серед
- an
- аналіз
- аналітика
- та
- будь-який
- Apache
- API
- прикладної
- підходи
- відповідний
- твердження
- схвалювати
- архітектура
- ЕСТЬ
- аргументація
- AS
- призначений
- At
- приєднувати
- автор
- Автоматизований
- доступний
- AWS
- назад
- фон
- Банки
- база
- заснований
- основа
- BE
- оскільки
- було
- буття
- Переваги
- КРАЩЕ
- передового досвіду
- між
- рада
- Настільні ігри
- тіло
- книга
- Філія
- Перерва
- брокерський
- будувати
- Створюємо
- побудований
- бізнес
- підприємства
- але
- by
- CAN
- капітал
- Столичні
- захоплення
- захоплений
- нести
- випадок
- випадків
- категорії
- ланцюга
- класифікація
- класифікований
- Очищення
- клієнт
- клієнтів
- сходження
- близько
- закрито
- хмара
- інфраструктура хмари
- код
- кодова база
- Коди
- кави
- співробітництво
- поєднання
- приходить
- commit
- спілкуватися
- компанія
- Компанії
- порівнянний
- повний
- Завершує
- Компоненти
- обчислення
- комп'ютер
- Інформатика
- конференція
- замішання
- послідовний
- складається
- Консоль
- Контейнери
- зміст
- зміст
- виправити
- CRM
- CSS
- зберігач
- виготовлений на замовлення
- клієнт
- Клієнти
- щодня
- дані
- аналіз даних
- Analytics даних
- Підготовка даних
- наука про дані
- вчений даних
- керовані даними
- Дата
- вирішувати
- вирішене
- присвячених
- глибокий
- глибоке навчання
- дефолт
- визначати
- певний
- Визначення
- демократизувати
- демонструвати
- розгортання
- розгорнути
- розгортання
- розгортання
- розгортає
- дизайн
- деталь
- розвивати
- розвивається
- розробка
- події
- різний
- цифровий
- управління цифровим капіталом
- вниз
- два
- кожен
- легко
- Ефективність
- продуктивно
- ще
- повідомлення електронної пошти
- в регіоні EMEA
- співробітників
- включіть
- Кінцева точка
- зайнятий
- забезпечувати
- Навколишнє середовище
- епоха
- особливо
- Європа
- оцінювати
- оцінка
- Event
- все
- еволюціонувати
- досліджувати
- приклад
- Перевага
- виконавчий
- існуючий
- очікування
- очікування
- очікуваний
- досвід
- досвідчений
- Досліди
- експеримент
- Експерименти
- дослідження
- Дослідницький аналіз даних
- дослідити
- додатково
- f1
- Face
- фасилітувати
- полегшує
- мода
- швидше
- швидкий
- швидкозростаючим
- зворотний зв'язок
- Рисунок
- фінансовий
- виявлення
- FinTech
- фініки
- Перший
- перші кроки
- плоский
- Сфокусувати
- фокусується
- після
- для
- форма
- формат
- Безкоштовна
- від
- функція
- майбутнє
- Отримувати
- Games
- шлюз
- Головна мета
- породжувати
- отримати
- GitHub
- GmBH
- Цілі
- Зростання
- гість
- Guest Post
- було
- Мати
- he
- голова
- голови
- її
- його
- історичний
- відбувся
- Як
- HTML
- HTTP
- HTTPS
- Сотні
- ідентифікований
- if
- здійснювати
- реалізації
- удосконалювати
- in
- включати
- Вхідний
- Augmenter
- збільшений
- інформація
- Інфраструктура
- початковий
- інновація
- інноваційний
- вхід
- Запити
- запит
- інтегрований
- Розумний
- зацікавлений
- в
- вводити
- Invest
- інвестиції
- викликає
- IT
- ітерація
- ЙОГО
- робота
- json
- тримати
- ключ
- етикетка
- етикетки
- мова
- найбільших
- останній
- провідний
- УЧИТЬСЯ
- вивчення
- Життєвий цикл
- Лінія
- загрузка
- місцевий
- журнал
- увійшли
- шукати
- від
- машина
- навчання за допомогою машини
- made
- Підтримка
- зробити
- Робить
- управляти
- вдалося
- управління
- управління
- ринок
- ринки
- математика
- Матриця
- Злиття
- подія злиття
- повідомлення
- метод
- метрика
- Метрика
- може бути
- ML
- MLOps
- модель
- Моделі
- сучасний
- монітор
- щомісячно
- більше
- рухається
- багато
- множинний
- ім'я
- а саме
- рідний
- Природний
- Обробка природних мов
- природа
- Необхідність
- потреби
- мережу
- нервовий
- нейронної мережі
- Нові
- наступний
- nlp
- ноутбук
- зараз
- номер
- of
- Пропозиції
- on
- ONE
- ті,
- тільки
- оперативний
- or
- порядок
- оригінал
- Інше
- інакше
- наші
- з
- вихід
- поза
- над
- частина
- брати участь
- Виконувати
- продуктивність
- фаза
- підібраний
- трубопровід
- платформа
- plato
- Інформація про дані Платона
- PlatoData
- це можливо
- пошта
- практики
- Точність
- прогноз
- Прогнози
- підготовка
- попередній
- первинний
- приватний
- процес
- процеси
- обробка
- Вироблений
- Production
- продуктивність
- Продукти
- проект
- проектів
- правильний
- прототип
- забезпечувати
- забезпечує
- громадськість
- опублікований
- цілей
- Штовхати
- питання
- швидко
- лапки
- підвищення
- ставка
- Сировина
- досяг
- Читати
- читання
- готовий
- розумний
- отримує
- облік
- Знижений
- послатися
- удосконалювати
- regex
- реєструвати
- реєстру
- доречний
- надійний
- віддалений
- видаляти
- звітом
- подання
- запросити
- запитів
- вимагається
- вирішене
- ресурси
- ті
- відповідаючи
- відповідь
- відповіді
- обов'язки
- відповідальний
- результат
- повертати
- міцний
- Rock
- біг
- мудрець
- Трубопроводи SageMaker
- то ж
- масштабовані
- шкала
- наука
- вчений
- Вчені
- сценарій
- розділ
- розділам
- безпечний
- сегмент
- послати
- окремий
- Послідовність
- служити
- обслуговування
- Послуги
- установка
- форми
- загальні
- акції
- вона
- Шоу
- Signatures
- простий
- одночасно
- навички
- менше
- уривок
- So
- рішення
- Рішення
- ВИРІШИТИ
- скоро
- Простір
- Гучномовець
- спеціаліст
- Фахівці
- конкретний
- конкретно
- Стажування
- старт
- Починаючи
- починається
- впроваджений
- Статус
- перебування
- Крок
- заходи
- зберігання
- зберігати
- зберігання
- раціоналізувати
- студія
- тема
- успіх
- такі
- Опори
- Переконайтеся
- Приймати
- Завдання
- завдання
- команда
- команди
- технічний
- тензор
- тест
- Тестування
- текст
- ніж
- Дякую
- Що
- Команда
- їх
- Їх
- потім
- Там.
- отже
- вони
- це
- тисячі
- три
- через
- час
- до
- разом
- інструмент
- тема
- факел
- трек
- торгові площі
- торгова платформа
- поїзд
- навчений
- Навчання
- трансформатор
- Трансформатори
- Величезно
- ПЕРЕГЛЯД
- два
- тип
- Типи
- Updates
- us
- використання
- використання випадку
- використовуваний
- користувач
- User Experience
- використовує
- використання
- ПЕРЕВІР
- перевірка достовірності
- значення
- версія
- Очікування
- було
- we
- Багатство
- управління активами
- Web
- веб-сервіси
- ДОБРЕ
- були
- коли
- коли б ні
- який
- в той час як
- з
- в
- без
- робочий
- Робочі процеси
- працює
- запис
- йога
- зефірнет