Ceci est un article invité de Capital évolutif, une FinTech leader en Europe qui propose une gestion de patrimoine numérique et une plateforme de courtage avec un tarif forfaitaire de trading.
En tant qu'entreprise à croissance rapide, les objectifs de Scalable Capital sont non seulement de construire une infrastructure innovante, robuste et fiable, mais également de fournir les meilleures expériences à nos clients, notamment en matière de services clients.
Scalable reçoit quotidiennement des centaines de demandes par courrier électronique de nos clients. En mettant en œuvre un modèle moderne de traitement du langage naturel (NLP), le processus de réponse a été façonné beaucoup plus efficacement et le temps d'attente pour les clients a été considérablement réduit. Le modèle de machine learning (ML) classe les nouvelles demandes clients entrantes dès leur arrivée et les redirige vers des files d'attente prédéfinies, ce qui permet à nos agents dédiés au succès client de se concentrer sur le contenu des emails en fonction de leurs compétences et d'apporter des réponses adaptées.
Dans cet article, nous démontrons les avantages techniques de l'utilisation des transformateurs Hugging Face déployés avec Amazon Sage Maker, telles que la formation et l'expérimentation à grande échelle, et l'augmentation de la productivité et de la rentabilité.
Énoncé du problème
Scalable Capital est l’une des FinTechs à la croissance la plus rapide en Europe. Dans le but de démocratiser l'investissement, la société offre à ses clients un accès facile aux marchés financiers. Les clients de Scalable peuvent participer activement au marché via la plateforme de courtage de la société ou utiliser Scalable Wealth Management pour investir de manière intelligente et automatisée. En 2021, Scalable Capital a vu sa clientèle décupler, passant de dizaines de milliers à des centaines de milliers.
Pour offrir à nos clients une expérience utilisateur de premier ordre (et cohérente) à travers les produits et le service client, l'entreprise recherchait des solutions automatisées pour générer des gains d'efficacité pour une solution évolutive tout en maintenant l'excellence opérationnelle. Les équipes de science des données et de service client de Scalable Capital ont identifié que l'un des plus grands goulots d'étranglement dans le service à nos clients était la réponse aux demandes par courrier électronique. Plus précisément, le goulot d'étranglement résidait dans l'étape de classification, au cours de laquelle les employés devaient quotidiennement lire et étiqueter les textes de demande. Une fois les e-mails acheminés vers leurs files d'attente appropriées, les spécialistes respectifs se sont rapidement engagés et ont résolu les cas.
Pour rationaliser ce processus de classification, l'équipe de science des données de Scalable a construit et déployé un modèle NLP multitâche utilisant une architecture de transformateur de pointe, basée sur le modèle pré-entraîné. distilbert-base-allemand-boîtier modèle édité par Hugging Face. distilbert-base-allemand-boîtier utilise l' distillation des connaissances méthode pour pré-entraîner un modèle de représentation de langage à usage général plus petit que le modèle de base BERT d'origine. La version distillée atteint des performances comparables à la version originale, tout en étant plus petite et plus rapide. Pour faciliter notre processus de cycle de vie ML, nous avons décidé d'adopter SageMaker pour créer, déployer, servir et surveiller nos modèles. Dans la section suivante, nous présentons la conception de l’architecture de notre projet.
Vue d'ensemble de la solution
L'infrastructure ML de Scalable Capital se compose de deux comptes AWS : l'un comme environnement pour la phase de développement et l'autre pour la phase de production.
Le diagramme suivant montre le flux de travail de notre projet de classificateur d'e-mails, mais peut également être généralisé à d'autres projets de science des données.
Le flux de travail comprend les composants suivants :
- Expérimentation de modèles – Les data scientists utilisent Amazon SageMakerStudio pour réaliser les premières étapes du cycle de vie de la science des données : analyse exploratoire des données (EDA), nettoyage et préparation des données, et construction de modèles prototypes. Une fois la phase exploratoire terminée, nous nous tournons vers VSCode hébergé par un notebook SageMaker comme outil de développement à distance pour modulariser et produire notre base de code. Pour explorer différents types de modèles et configurations de modèles, et en même temps suivre nos expérimentations, nous utilisons SageMaker Training et SageMaker Experiments.
- Construction du modèle – Après avoir décidé d'un modèle pour notre cas d'utilisation de production, dans ce cas un modèle multitâche distilbert-base-allemand-boîtier modèle, affiné à partir du modèle pré-entraîné de Hugging Face, nous validons et transmettons notre code à la branche de développement de Github. L'événement de fusion Github déclenche notre pipeline Jenkins CI, qui à son tour démarre une tâche SageMaker Pipelines avec des données de test. Cela agit comme un test pour s'assurer que les codes fonctionnent comme prévu. Un point de terminaison de test est déployé à des fins de test.
- Déploiement de modèle – Après s'être assurés que tout fonctionne comme prévu, les data scientists fusionnent la branche de développement dans la branche principale. Cet événement de fusion déclenche désormais une tâche SageMaker Pipelines utilisant les données de production à des fins de formation. Ensuite, les artefacts du modèle sont produits et stockés dans un fichier de sortie. Service de stockage simple Amazon (Amazon S3) et une nouvelle version du modèle est enregistrée dans le registre des modèles SageMaker. Les data scientists examinent les performances du nouveau modèle, puis approuvent s'il est conforme aux attentes. L'événement d'approbation du modèle est capturé par Amazon Event Bridge, qui déploie ensuite le modèle sur un point de terminaison SageMaker dans l'environnement de production.
- MLOps – Étant donné que le point de terminaison SageMaker est privé et ne peut pas être atteint par des services en dehors du VPC, un AWS Lambda fonction et Passerelle d'API Amazon un point de terminaison public est requis pour communiquer avec CRM. Chaque fois que de nouveaux e-mails arrivent dans la boîte de réception CRM, CRM appelle le point de terminaison public API Gateway, ce qui déclenche à son tour la fonction Lambda pour appeler le point de terminaison privé SageMaker. La fonction relaie ensuite la classification vers CRM via le point de terminaison public API Gateway. Pour surveiller les performances de notre modèle déployé, nous mettons en œuvre une boucle de rétroaction entre le CRM et les data scientists pour suivre les métriques de prédiction du modèle. Sur une base mensuelle, CRM met à jour les données historiques utilisées pour l'expérimentation et la formation des modèles. Nous utilisons Flux de travail gérés par Amazon pour Apache Airflow (Amazon MWAA) en tant que planificateur pour notre recyclage mensuel.
Dans les sections suivantes, nous décomposons plus en détail les étapes de préparation des données, d’expérimentation du modèle et de déploiement du modèle.
Préparation des données
Scalable Capital utilise un outil CRM pour gérer et stocker les données de courrier électronique. Le contenu pertinent des e-mails comprend l'objet, le corps et les banques dépositaires. Il y a trois étiquettes à attribuer à chaque e-mail : de quel secteur d'activité l'e-mail provient, quelle file d'attente est appropriée et le sujet spécifique de l'e-mail.
Avant de commencer à entraîner des modèles NLP, nous nous assurons que les données d'entrée sont propres et que les étiquettes sont attribuées conformément aux attentes.
Pour récupérer le contenu des demandes des clients Scalable, nous supprimons des données brutes de courrier électronique ainsi que du texte et des symboles supplémentaires, tels que les signatures de courrier électronique, les impressions, les citations de messages précédents dans les chaînes de courrier électronique, les symboles CSS, etc. Sinon, nos futurs modèles formés pourraient connaître des performances dégradées.
Les étiquettes des e-mails évoluent au fil du temps à mesure que les équipes du service client évolutif en ajoutent de nouvelles et affinent ou suppriment celles existantes pour répondre aux besoins de l'entreprise. Pour s'assurer que les étiquettes des données d'entraînement ainsi que les classifications attendues pour la prédiction sont à jour, l'équipe de science des données travaille en étroite collaboration avec l'équipe du service client pour garantir l'exactitude des étiquettes.
Expérimentation de modèles
Nous commençons notre expérience avec le pré-entraîné facilement disponible distilbert-base-allemand-boîtier modèle édité par Hugging Face. Étant donné que le modèle pré-entraîné est un modèle de représentation du langage à usage général, nous pouvons adapter l'architecture pour effectuer des tâches spécifiques en aval, telles que la classification et la réponse aux questions, en attachant les têtes appropriées au réseau neuronal. Dans notre cas d'utilisation, la tâche en aval qui nous intéresse est la classification de séquences. Sans modifier le architecture existante, nous décidons d'affiner trois modèles pré-entraînés distincts pour chacune de nos catégories requises. Avec le Conteneurs d'apprentissage profond SageMaker Hugging Face (DLC), le démarrage et la gestion des expériences NLP sont simplifiés grâce aux conteneurs Hugging Face et à l'API SageMaker Experiments.
Ce qui suit est un extrait de code de train.py
:
Le code suivant est l’estimateur Hugging Face :
Pour valider les modèles affinés, nous utilisons le Score F1 en raison de la nature déséquilibrée de notre ensemble de données de courrier électronique, mais également pour calculer d'autres mesures telles que l'exactitude, la précision et le rappel. Pour que l'API SageMaker Experiments enregistre les métriques de la tâche de formation, nous devons d'abord enregistrer les métriques dans la console locale de la tâche de formation, qui sont récupérées par Amazon Cloud Watch. Ensuite, nous définissons le format regex correct pour capturer les journaux CloudWatch. Les définitions de métriques incluent le nom des métriques et la validation des expressions régulières pour extraire les métriques de la tâche de formation :
Dans le cadre de l'itération de formation du modèle de classificateur, nous utilisons une matrice de confusion et un rapport de classification pour évaluer le résultat. La figure suivante montre la matrice de confusion pour la prédiction du secteur d'activité.
La capture d'écran suivante montre un exemple de rapport de classification pour la prévision du secteur d'activité.
Lors de la prochaine itération de notre expérience, nous profiterons de apprentissage multi-tâches pour améliorer notre modèle. L'apprentissage multitâche est une forme de formation dans laquelle un modèle apprend à résoudre plusieurs tâches simultanément, car les informations partagées entre les tâches peuvent améliorer l'efficacité de l'apprentissage. En attachant deux têtes de classification supplémentaires à l'architecture originale de Distilbert, nous pouvons effectuer un réglage fin multitâche, qui atteint des mesures raisonnables pour notre équipe de service client.
Déploiement de modèle
Dans notre cas d'utilisation, le classificateur d'e-mails doit être déployé sur un point de terminaison, auquel notre pipeline CRM peut envoyer un lot d'e-mails non classifiés et obtenir des prédictions. Étant donné que nous disposons d'autres logiques, telles que le nettoyage des données d'entrée et les prédictions multitâches, en plus de l'inférence du modèle Hugging Face, nous devons écrire un script d'inférence personnalisé qui adhère au Norme SageMaker.
Ce qui suit est un extrait de code de inference.py
:
Lorsque tout est opérationnel et prêt, nous utilisons SageMaker Pipelines pour gérer notre pipeline de formation et l'attacher à notre infrastructure pour terminer notre configuration MLOps.
Pour surveiller les performances du modèle déployé, nous construisons une boucle de rétroaction pour permettre au CRM de nous fournir le statut des e-mails classifiés lorsque les dossiers sont clôturés. Sur la base de ces informations, nous effectuons des ajustements pour améliorer le modèle déployé.
Conclusion
Dans cet article, nous avons expliqué comment SageMaker aide l'équipe de science des données de Scalable à gérer efficacement le cycle de vie d'un projet de science des données, à savoir le projet de classificateur d'e-mails. Le cycle de vie commence par la phase initiale d'analyse et d'exploration des données avec SageMaker Studio ; passe ensuite à l'expérimentation et au déploiement de modèles avec la formation, l'inférence et les DLC SageMaker ; et se complète par un pipeline de formation avec SageMaker Pipelines intégré à d'autres services AWS. Grâce à cette infrastructure, nous sommes en mesure d'itérer et de déployer de nouveaux modèles plus efficacement, et sommes donc en mesure d'améliorer les processus existants au sein de Scalable ainsi que les expériences de nos clients.
Pour en savoir plus sur Hugging Face et SageMaker, reportez-vous aux ressources suivantes :
À propos des auteurs
Dr Sandra Schmid est responsable de l'analyse des données chez Scalable GmbH. Elle est responsable des approches basées sur les données et des cas d'utilisation dans l'entreprise en collaboration avec ses équipes. Son objectif principal est de trouver la meilleure combinaison de modèles d'apprentissage automatique et de science des données et d'objectifs commerciaux afin d'obtenir autant de valeur commerciale et d'efficacité que possible à partir des données.
Houy Dang Scientifique des données chez Scalable GmbH. Ses responsabilités comprennent l'analyse des données, la création et le déploiement de modèles d'apprentissage automatique, ainsi que le développement et la maintenance de l'infrastructure pour l'équipe de science des données. Dans ses temps libres, il aime lire, faire de la randonnée, de l'escalade et se tenir au courant des derniers développements en matière d'apprentissage automatique.
Mia Chang est un architecte de solutions spécialisé en ML pour Amazon Web Services. Elle travaille avec des clients de la région EMEA et partage les meilleures pratiques pour exécuter des charges de travail IA/ML sur le cloud grâce à son expérience en mathématiques appliquées, en informatique et en IA/ML. Elle se concentre sur les charges de travail spécifiques à la PNL et partage son expérience en tant que conférencière et auteure de livres. Pendant son temps libre, elle aime le yoga, les jeux de société et préparer du café.
Moritz Guertler est responsable de compte dans le segment Digital Native Businesses chez AWS. Il se concentre sur les clients du secteur FinTech et les aide à accélérer l'innovation grâce à une infrastructure cloud sécurisée et évolutive.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoData.Network Ai générative verticale. Autonomisez-vous. Accéder ici.
- PlatoAiStream. Intelligence Web3. Connaissance Amplifiée. Accéder ici.
- PlatonESG. Automobile / VE, Carbone, Technologie propre, Énergie, Environnement, Solaire, La gestion des déchets. Accéder ici.
- PlatoHealth. Veille biotechnologique et essais cliniques. Accéder ici.
- GraphiquePrime. Élevez votre jeu de trading avec ChartPrime. Accéder ici.
- Décalages de bloc. Modernisation de la propriété des compensations environnementales. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/accelerate-client-success-management-through-email-classification-with-hugging-face-on-amazon-sagemaker/
- :possède
- :est
- :ne pas
- :où
- $UP
- 1
- 100
- 13
- 15%
- 17
- 2021
- 26%
- 32
- 500
- 7
- a
- Capable
- A Propos
- au dessus de
- accélérer
- accélérer
- Accepter
- accès
- accommoder
- Selon
- Compte
- hybrides
- précision
- Atteint
- à travers
- activement
- actes
- adapter
- ajouter
- ajout
- ajustements
- adopter
- Avantage
- Après
- après
- agents
- AI / ML
- objectif
- permet
- aussi
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- parmi
- an
- selon une analyse de l’Université de Princeton
- analytique
- et les
- tous
- Apache
- api
- appliqué
- approches
- approprié
- approbation
- approuver
- architecture
- SONT
- arguments
- AS
- attribué
- At
- joindre
- auteur
- Automatisation
- disponibles
- AWS
- RETOUR
- fond
- Banks
- base
- basé
- base
- BE
- car
- était
- va
- avantages.
- LES MEILLEURS
- les meilleures pratiques
- jusqu'à XNUMX fois
- planche
- Jeux de société
- corps
- livre
- Branche
- Pause
- courtage
- construire
- Développement
- construit
- la performance des entreprises
- entreprises
- mais
- by
- CAN
- capital
- de la capitale
- capturer
- capturé
- porter
- maisons
- cas
- catégories
- Chaînes
- classification
- classifié
- Nettoyage
- client
- CLIENTS
- Escalade
- Fermer
- fonds à capital fermé
- le cloud
- infrastructure de cloud
- code
- base de code
- codes
- Café
- collaboration
- combinaison
- vient
- commettre
- communiquer
- Société
- De l'entreprise
- comparable
- complet
- finalise
- composants électriques
- calcul
- ordinateur
- Informatique
- Congrès
- confusion
- cohérent
- consiste
- Console
- Conteneurs
- contenu
- contenu
- correct
- CRM
- CSS
- gardien
- Customiser
- des clients
- Clients
- Tous les jours
- données
- l'analyse des données
- Analyse de Donnée
- Préparation des données
- science des données
- Data Scientist
- data-driven
- Date
- décider
- décidé
- dévoué
- profond
- l'apprentissage en profondeur
- Réglage par défaut
- Vous permet de définir
- défini
- définitions
- démocratiser
- démontrer
- déployer
- déployé
- déployer
- déploiement
- déploie
- Conception
- détail
- développer
- développement
- Développement
- développements
- différent
- numérique
- gestion de patrimoine numérique
- down
- deux
- chacun
- Easy
- efficacité
- efficacement
- d'autre
- emails
- EMEA
- employés
- permettre
- Endpoint
- engagé
- assurer
- Environment
- époque
- notamment
- Europe
- évaluer
- évaluation
- événement
- peut
- évolue
- examiner
- exemple
- Excellence
- exécutif
- existant
- attente
- attentes
- attendu
- d'experience
- expérimenté
- Expériences
- expérience
- expériences
- exploration
- L'analyse exploratoire des données
- explorez
- supplémentaire
- f1
- Visage
- faciliter
- facilite
- Mode
- plus rapide
- le plus rapide
- croissance la plus rapide
- Réactions
- Figure
- la traduction de documents financiers
- trouver
- FinTech
- fintechs
- Prénom
- premières étapes
- plat
- Focus
- se concentre
- Abonnement
- Pour
- formulaire
- le format
- gratuitement ici
- De
- fonction
- avenir
- Gain
- Games
- porte
- à usage général
- générer
- obtenez
- GitHub
- GmBH
- Objectifs
- Croissance
- GUEST
- Invité Message
- ait eu
- Vous avez
- he
- front
- têtes
- ici
- sa
- historique
- organisé
- Comment
- HTML
- http
- HTTPS
- Des centaines
- identifié
- if
- Mettre en oeuvre
- la mise en œuvre
- améliorer
- in
- comprendre
- Nouveau
- Améliore
- increased
- d'information
- Infrastructure
- initiale
- Innovation
- technologie innovante
- contribution
- Messages
- enquête
- des services
- Intelligent
- intéressé
- développement
- introduire
- Investir
- un investissement
- invoque
- IT
- itération
- SES
- Emploi
- json
- XNUMX éléments à
- ACTIVITES
- Libellé
- Etiquettes
- langue
- le plus grand
- Nouveautés
- conduisant
- APPRENTISSAGE
- apprentissage
- vos produits
- Gamme
- charge
- locales
- enregistrer
- Connecté
- recherchez-
- perte
- click
- machine learning
- LES PLANTES
- Maintenir
- a prendre une
- Fabrication
- gérer
- gérés
- gestion
- les gérer
- Marché
- Marchés
- mathématiques
- Matrice
- aller
- événement de fusion
- messages
- méthode
- métrique
- Métrique
- pourrait
- ML
- MLOps
- modèle
- numériques jumeaux (digital twin models)
- Villas Modernes
- Surveiller
- mensuel
- PLUS
- se déplace
- beaucoup
- plusieurs
- prénom
- à savoir
- indigène
- Nature
- Traitement du langage naturel
- Nature
- Besoin
- Besoins
- réseau et
- neural
- Réseau neuronal
- Nouveauté
- next
- nlp
- cahier
- maintenant
- nombre
- of
- Offres Speciales
- on
- ONE
- et, finalement,
- uniquement
- opérationnel
- or
- de commander
- original
- Autre
- autrement
- nos
- ande
- sortie
- au contrôle
- plus de
- partie
- participer
- Effectuer
- performant
- phase
- choisi
- pipeline
- plateforme
- Platon
- Intelligence des données Platon
- PlatonDonnées
- possible
- Post
- pratiques
- La précision
- prédiction
- Prédictions
- préparation
- précédent
- primaire
- Privé
- processus
- les process
- traitement
- Produit
- Vidéo
- productivité
- Produits
- Projet
- projets
- correct
- prototype
- fournir
- fournit
- public
- publié
- des fins
- Push
- question
- vite.
- citations
- augmenter
- Tarif
- raw
- atteint
- Lire
- en cours
- solutions
- raisonnable
- reçoit
- Articles
- Prix Réduit
- reportez-vous
- affiner
- regex
- vous inscrire
- enregistrement
- pertinent
- fiable
- éloigné
- supprimez
- rapport
- représentation
- nécessaire
- demandes
- conditions
- résolu
- Resources
- ceux
- répondre
- réponse
- réponses
- responsabilités
- responsables
- résultat
- retourner
- robuste
- Rock
- pour le running
- sagemaker
- Pipelines SageMaker
- même
- évolutive
- Escaliers intérieurs
- Sciences
- Scientifique
- scientifiques
- scénario
- Section
- les sections
- sécurisé
- clignotant
- envoyer
- séparé
- Séquence
- besoin
- service
- Services
- installation
- en forme de
- commun
- Partages
- elle
- Spectacles
- Signatures
- étapes
- simultanément
- compétences
- faibles
- Fragment
- So
- sur mesure
- Solutions
- RÉSOUDRE
- Bientôt
- Space
- Speaker
- spécialiste
- spécialistes
- groupe de neurones
- spécifiquement
- Étape
- Commencer
- Commencez
- départs
- state-of-the-art
- Statut
- rester
- étapes
- Étapes
- storage
- stockée
- stockage
- rationaliser
- studio
- sujet
- succès
- tel
- Les soutiens
- sûr
- Prenez
- Tâche
- tâches
- équipe
- équipes
- Technique
- dizaines
- tester
- Essais
- texte
- que
- Merci
- qui
- Le
- leur
- Les
- puis
- Là.
- donc
- l'ont
- this
- milliers
- trois
- Avec
- fiable
- à
- ensemble
- outil
- sujet
- torche
- suivre
- Commerce
- Trading Platform
- Train
- qualifié
- Formation
- transformateur
- transformateurs
- énormément
- TOUR
- deux
- type
- types
- Actualités
- us
- utilisé
- cas d'utilisation
- d'utiliser
- Utilisateur
- Expérience utilisateur
- Usages
- en utilisant
- VALIDER
- validation
- Plus-value
- version
- Attendre
- était
- we
- Richesse
- gestion de patrimoine
- web
- services Web
- WELL
- ont été
- quand
- chaque fois que
- qui
- tout en
- comprenant
- dans les
- sans
- workflow
- workflows
- vos contrats
- écrire
- Yoga
- zéphyrnet