Questo è un post per gli ospiti di Capitale Scalabile, una FinTech leader in Europa che offre gestione patrimoniale digitale e una piattaforma di intermediazione con una tariffa forfettaria di trading.
Essendo un'azienda in rapida crescita, gli obiettivi di Scalable Capital non sono solo costruire un'infrastruttura innovativa, solida e affidabile, ma anche fornire le migliori esperienze ai nostri clienti, soprattutto quando si tratta di servizi ai clienti.
Scalable riceve quotidianamente centinaia di richieste via e-mail dai nostri clienti. Implementando un moderno modello di elaborazione del linguaggio naturale (NLP), il processo di risposta è stato modellato in modo molto più efficiente e i tempi di attesa per i clienti sono stati notevolmente ridotti. Il modello di machine learning (ML) classifica le nuove richieste dei clienti in arrivo non appena arrivano e le reindirizza a code predefinite, consentendo ai nostri agenti di successo dei clienti dedicati di concentrarsi sui contenuti delle e-mail in base alle loro competenze e fornire risposte adeguate.
In questo post, dimostriamo i vantaggi tecnici derivanti dall'utilizzo dei trasformatori Hugging Face implementati Amazon Sage Maker, come la formazione e la sperimentazione su larga scala e una maggiore produttività ed efficienza in termini di costi.
Dichiarazione del problema
Scalable Capital è una delle FinTech in più rapida crescita in Europa. Con l'obiettivo di democratizzare gli investimenti, l'azienda offre ai propri clienti un facile accesso ai mercati finanziari. I clienti di Scalable possono partecipare attivamente al mercato attraverso la piattaforma di trading di intermediazione della società o utilizzare Scalable Wealth Management per investire in modo intelligente e automatizzato. Nel 2021, Scalable Capital ha registrato un aumento di dieci volte della sua base clienti, da decine di migliaia a centinaia di migliaia.
Per offrire ai nostri clienti un'esperienza utente di altissimo livello (e coerente) tra i prodotti e il servizio clienti, l'azienda era alla ricerca di soluzioni automatizzate per generare efficienze per una soluzione scalabile mantenendo l'eccellenza operativa. I team di data science e assistenza clienti di Scalable Capital hanno identificato che uno dei maggiori colli di bottiglia nel servire i nostri clienti era la risposta alle richieste via e-mail. Nello specifico, il collo di bottiglia era la fase di classificazione, in cui i dipendenti dovevano leggere ed etichettare quotidianamente i testi delle richieste. Dopo che le e-mail sono state indirizzate alle code appropriate, i rispettivi specialisti hanno coinvolto e risolto rapidamente i casi.
Per semplificare questo processo di classificazione, il team di data science di Scalable ha creato e distribuito un modello NLP multitasking utilizzando un'architettura di trasformazione all'avanguardia, basata sul modello pre-addestrato distillbert-base-tedesco-cassa modello pubblicato da Hugging Face. distillbert-base-tedesco-cassa utilizza l' distillazione della conoscenza metodo per pre-addestrare un modello di rappresentazione linguistica di uso generale più piccolo rispetto al modello base BERT originale. La versione distillata raggiunge prestazioni paragonabili alla versione originale, pur essendo più piccola e più veloce. Per facilitare il processo del ciclo di vita del machine learning, abbiamo deciso di adottare SageMaker per creare, distribuire, servire e monitorare i nostri modelli. Nella sezione seguente, presentiamo il design dell'architettura del nostro progetto.
Panoramica della soluzione
L'infrastruttura ML di Scalable Capital è composta da due account AWS: uno come ambiente per la fase di sviluppo e l'altro per la fase di produzione.
Il diagramma seguente mostra il flusso di lavoro per il nostro progetto di classificazione della posta elettronica, ma può anche essere generalizzato ad altri progetti di scienza dei dati.
Il flusso di lavoro è costituito dai seguenti componenti:
- Sperimentazione del modello – I data scientist utilizzano Amazon Sage Maker Studio eseguire i primi passi nel ciclo di vita della scienza dei dati: analisi esplorativa dei dati (EDA), pulizia e preparazione dei dati e costruzione di modelli prototipali. Una volta completata la fase esplorativa, ci rivolgiamo a VSCode ospitato da un notebook SageMaker come strumento di sviluppo remoto per modularizzare e produrre la nostra base di codice. Per esplorare diversi tipi di modelli e configurazioni di modelli e allo stesso tempo per tenere traccia delle nostre sperimentazioni, utilizziamo SageMaker Training e SageMaker Experiments.
- Costruzione del modello – Dopo aver deciso un modello per il nostro caso d'uso di produzione, in questo caso multi-task distillbert-base-tedesco-cassa modello, ottimizzato dal modello preaddestrato di Hugging Face, impegniamo e inviamo il nostro codice al ramo di sviluppo di Github. L'evento di unione di Github attiva la nostra pipeline CI Jenkins, che a sua volta avvia un lavoro SageMaker Pipelines con i dati di test. Questo funge da test per assicurarsi che i codici funzionino come previsto. Un endpoint di test viene distribuito a scopo di test.
- Distribuzione del modello – Dopo essersi assicurati che tutto funzioni come previsto, i data scientist uniscono il ramo di sviluppo nel ramo primario. Questo evento di unione ora attiva un processo SageMaker Pipelines utilizzando i dati di produzione a scopo di formazione. Successivamente, gli artefatti del modello vengono prodotti e archiviati in un output Servizio di archiviazione semplice Amazon (Amazon S3) e una nuova versione del modello viene registrata nel registro dei modelli SageMaker. I data scientist esaminano le prestazioni del nuovo modello, quindi approvano se è in linea con le aspettative. L'evento di approvazione del modello viene acquisito da Amazon EventBridge, che quindi distribuisce il modello su un endpoint SageMaker nell'ambiente di produzione.
- MLOp – Poiché l'endpoint SageMaker è privato e non può essere raggiunto dai servizi esterni al VPC, an AWS Lambda funzione e Gateway API Amazon Gli endpoint pubblici sono necessari per comunicare con CRM. Ogni volta che arrivano nuove email nella casella di posta di CRM, CRM richiama l'endpoint pubblico API Gateway, che a sua volta attiva la funzione Lambda per richiamare l'endpoint privato SageMaker. La funzione inoltra quindi la classificazione a CRM tramite l'endpoint pubblico API Gateway. Per monitorare le prestazioni del nostro modello distribuito, implementiamo un ciclo di feedback tra CRM e i data scientist per tenere traccia delle metriche di previsione dal modello. Su base mensile il CRM aggiorna i dati storici utilizzati per la sperimentazione e il training del modello. Noi usiamo Flussi di lavoro gestiti da Amazon per Apache Airflow (Amazon MWAA) come pianificatore per la nostra riqualificazione mensile.
Nelle sezioni seguenti vengono analizzati in modo più dettagliato i passaggi di preparazione dei dati, sperimentazione del modello e distribuzione del modello.
Preparazione dei dati
Scalable Capital utilizza uno strumento CRM per la gestione e l'archiviazione dei dati di posta elettronica. I contenuti rilevanti delle email sono costituiti da oggetto, corpo e banca depositaria. Esistono tre etichette da assegnare a ciascuna e-mail: da quale settore di attività proviene l'e-mail, quale coda è appropriata e l'argomento specifico dell'e-mail.
Prima di iniziare l'addestramento di qualsiasi modello PNL, ci assicuriamo che i dati di input siano puliti e che le etichette siano assegnate secondo le aspettative.
Per recuperare contenuti di richiesta puliti dai client scalabili, rimuoviamo dai dati e-mail non elaborati e testo e simboli aggiuntivi, come firme e-mail, impressioni, virgolette di messaggi precedenti in catene di e-mail, simboli CSS e così via. In caso contrario, i nostri futuri modelli addestrati potrebbero riscontrare prestazioni ridotte.
Le etichette per le e-mail si evolvono nel tempo man mano che i team di assistenza clienti scalabili ne aggiungono di nuove e perfezionano o rimuovono quelle esistenti per soddisfare le esigenze aziendali. Per garantire che le etichette per i dati di addestramento e le classificazioni previste per la previsione siano aggiornate, il team di data science lavora in stretta collaborazione con il team del servizio clienti per garantire la correttezza delle etichette.
Sperimentazione del modello
Iniziamo il nostro esperimento con il pre-addestrato facilmente disponibile distillbert-base-tedesco-cassa modello pubblicato da Hugging Face. Poiché il modello pre-addestrato è un modello di rappresentazione del linguaggio di uso generale, possiamo adattare l'architettura per eseguire compiti specifici a valle, come la classificazione e la risposta alle domande, collegando teste appropriate alla rete neurale. Nel nostro caso d'uso, l'attività a valle che ci interessa è la classificazione delle sequenze. Senza modificare il architettura esistente, decidiamo di mettere a punto tre modelli preaddestrati separati per ciascuna delle categorie richieste. Con il Contenitori di deep learning SageMaker Hugging Face (DLC), l'avvio e la gestione degli esperimenti NLP sono semplificati con i contenitori Hugging Face e l'API SageMaker Experiments.
Quello che segue è uno snippet di codice di train.py
:
Il codice seguente è lo stimatore Hugging Face:
Per convalidare i modelli ottimizzati, utilizziamo il file Punteggio F1 a causa della natura sbilanciata del nostro set di dati di posta elettronica, ma anche per calcolare altri parametri come accuratezza, precisione e ricordo. Affinché l'API SageMaker Experiments possa registrare i parametri del lavoro di formazione, dobbiamo prima registrare i parametri nella console locale del lavoro di formazione, che vengono raccolti da Amazon Cloud Watch. Quindi definiamo il formato regex corretto per acquisire i log CloudWatch. Le definizioni delle metriche includono il nome delle metriche e la convalida regex per l'estrazione delle metriche dal processo di training:
Come parte dell'iterazione di training per il modello di classificazione, utilizziamo una matrice di confusione e un report di classificazione per valutare il risultato. La figura seguente mostra la matrice di confusione per la previsione del settore di attività.
La schermata seguente mostra un esempio del report di classificazione per la previsione del settore aziendale.
Come prossima iterazione del nostro esperimento, trarremo vantaggio da apprendimento multitasking per migliorare il nostro modello. L'apprendimento multi-task è una forma di formazione in cui un modello impara a risolvere più attività contemporaneamente, poiché le informazioni condivise tra le attività possono migliorare l'efficienza dell'apprendimento. Collegando altre due teste di classificazione all'architettura originale di distilbert, possiamo eseguire la messa a punto multi-task, che raggiunge metriche ragionevoli per il nostro team di assistenza clienti.
Distribuzione del modello
Nel nostro caso d'uso, il classificatore di posta elettronica deve essere distribuito su un endpoint, al quale la nostra pipeline CRM può inviare un batch di email non classificate e ottenere previsioni. Poiché disponiamo di altre logiche, come la pulizia dei dati di input e le previsioni multi-task, oltre all'inferenza del modello Hugging Face, dobbiamo scrivere uno script di inferenza personalizzato che aderisca al Standard SageMaker.
Quello che segue è uno snippet di codice di inference.py
:
Quando tutto è pronto e pronto, utilizziamo SageMaker Pipelines per gestire la nostra pipeline di formazione e collegarla alla nostra infrastruttura per completare la configurazione di MLOps.
Per monitorare le prestazioni del modello distribuito, creiamo un ciclo di feedback per consentire al CRM di fornirci lo stato delle e-mail riservate quando i casi vengono chiusi. Sulla base di queste informazioni, apportiamo modifiche per migliorare il modello distribuito.
Conclusione
In questo post, abbiamo condiviso il modo in cui SageMaker aiuta il team di data science di Scalable a gestire in modo efficiente il ciclo di vita di un progetto di data science, ovvero il progetto di classificazione della posta elettronica. Il ciclo di vita inizia con la fase iniziale di analisi ed esplorazione dei dati con SageMaker Studio; passa alla sperimentazione e all'implementazione del modello con la formazione, l'inferenza e i DLC Hugging Face di SageMaker; e si completa con una pipeline di formazione con SageMaker Pipelines integrata con altri servizi AWS. Grazie a questa infrastruttura, siamo in grado di iterare e implementare nuovi modelli in modo più efficiente e siamo quindi in grado di migliorare i processi esistenti all'interno di Scalable così come le esperienze dei nostri clienti.
Per ulteriori informazioni su Hugging Face e SageMaker, fare riferimento alle seguenti risorse:
Informazioni sugli autori
Dott.ssa Sandra Schmid è responsabile dell'analisi dei dati presso Scalable GmbH. È responsabile degli approcci basati sui dati e dei casi d'uso in azienda insieme ai suoi team. Il suo obiettivo principale è trovare la migliore combinazione di modelli di machine learning e data science e obiettivi aziendali al fine di ottenere il massimo valore aziendale ed efficienza dai dati.
Huy Dan Data Scientist presso Scalable GmbH. Le sue responsabilità includono l'analisi dei dati, la creazione e l'implementazione di modelli di machine learning, nonché lo sviluppo e la manutenzione dell'infrastruttura per il team di data science. Nel tempo libero gli piace leggere, fare escursioni, arrampicarsi su roccia e rimanere aggiornato sugli ultimi sviluppi dell'apprendimento automatico.
Mia Chang è un ML Specialist Solutions Architect per Amazon Web Services. Lavora con clienti nell'area EMEA e condivide le best practice per l'esecuzione di carichi di lavoro AI/ML sul cloud con il suo background in matematica applicata, informatica e AI/ML. Si concentra su carichi di lavoro specifici della PNL e condivide la sua esperienza come relatrice di conferenze e autrice di libri. Nel tempo libero le piace lo yoga, i giochi da tavolo e preparare il caffè.
Moritz Guertler è un Account Executive nel segmento Digital Native Businesses presso AWS. Si concentra sui clienti nel settore FinTech e li supporta nell'accelerare l'innovazione attraverso un'infrastruttura cloud sicura e scalabile.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Automobilistico/VE, Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Grafico Prime. Migliora il tuo gioco di trading con ChartPrime. Accedi qui.
- BlockOffset. Modernizzare la proprietà della compensazione ambientale. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/accelerate-client-success-management-through-email-classification-with-hugging-face-on-amazon-sagemaker/
- :ha
- :È
- :non
- :Dove
- $ SU
- 1
- 100
- 13
- 15%
- 17
- 2021
- 26%
- 32
- 500
- 7
- a
- capace
- WRI
- sopra
- accelerare
- accelerando
- Accetta
- accesso
- ospitare
- Secondo
- Il mio account
- conti
- precisione
- Realizza
- operanti in
- attivamente
- atti
- adattare
- aggiungere
- aggiunta
- regolazioni
- adottare
- Vantaggio
- Dopo shavasana, sedersi in silenzio; saluti;
- dopo
- agenti
- AI / ML
- puntare
- consente
- anche
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- tra
- an
- .
- analitica
- ed
- in qualsiasi
- Apache
- api
- applicato
- approcci
- opportuno
- approvazione
- approvare
- architettura
- SONO
- argomenti
- AS
- addetto
- At
- allegare
- autore
- Automatizzata
- disponibile
- AWS
- precedente
- sfondo
- Banche
- base
- basato
- base
- BE
- perché
- stato
- essendo
- vantaggi
- MIGLIORE
- best practice
- fra
- tavola
- Giochi da tavolo
- stile di vita
- libro
- Branch di società
- Rompere
- mediazione
- costruire
- Costruzione
- costruito
- affari
- aziende
- ma
- by
- Materiale
- capitale
- Capitale
- catturare
- catturato
- trasportare
- Custodie
- casi
- categoria
- Catene
- classificazione
- classificato
- Pulizia
- cliente
- clienti
- arrampicata
- Chiudi
- chiuso
- Cloud
- infrastruttura cloud
- codice
- base del codice
- codici
- Caffè
- collaborazione
- combinazione
- viene
- commettere
- comunicare
- azienda
- Società
- paragonabile
- completamento di una
- Completa
- componenti
- Calcolare
- computer
- Informatica
- Convegno
- confusione
- coerente
- consiste
- consolle
- Tecnologie Container
- contenuto
- testuali
- correggere
- CRM
- CSS
- custode
- costume
- cliente
- Clienti
- alle lezioni
- dati
- analisi dei dati
- Dati Analytics
- Preparazione dei dati
- scienza dei dati
- scienziato di dati
- data-driven
- Data
- decide
- deciso
- dedicato
- deep
- apprendimento profondo
- Predefinito
- definire
- definito
- definizioni
- democratizzare
- dimostrare
- schierare
- schierato
- distribuzione
- deployment
- Distribuisce
- Design
- dettaglio
- sviluppare
- in via di sviluppo
- Mercato
- sviluppi
- diverso
- digitale
- gestione del patrimonio digitale
- giù
- dovuto
- ogni
- facile
- efficienze
- in modo efficiente
- altro
- dipendenti
- enable
- endpoint
- impegnato
- garantire
- Ambiente
- epoca
- particolarmente
- Europa
- valutare
- valutazione
- Evento
- qualunque cosa
- evolvere
- esaminare
- esempio
- Eccellenza
- esecutivo
- esistente
- aspettativa
- le aspettative
- previsto
- esperienza
- esperto
- Esperienze
- esperimento
- esperimenti
- esplorazione
- Analisi dei dati esplorativi
- esplora
- extra
- f1
- Faccia
- facilitare
- facilita
- Moda
- più veloce
- più veloce
- più rapida crescita
- feedback
- figura
- finanziario
- ricerca
- Fintech
- fintechs
- Nome
- primi passi
- piatto
- Focus
- si concentra
- i seguenti
- Nel
- modulo
- formato
- Gratis
- da
- function
- futuro
- Guadagno
- Giochi
- porta
- scopo generale
- generare
- ottenere
- GitHub
- GmbH
- Obiettivi
- Crescita
- GUEST
- Ospite Messaggio
- ha avuto
- Avere
- he
- capo
- teste
- suo
- il suo
- storico
- ospitato
- Come
- HTML
- http
- HTTPS
- centinaia
- identificato
- if
- realizzare
- Implementazione
- competenze
- in
- includere
- In arrivo
- Aumento
- è aumentato
- informazioni
- Infrastruttura
- inizialmente
- Innovazione
- creativi e originali
- ingresso
- Richieste
- inchiesta
- integrato
- Intelligente
- interessato
- ai miglioramenti
- introdurre
- Investire
- investimento
- invoca
- IT
- iterazione
- SUO
- Lavoro
- json
- mantenere
- Le
- Discografica
- per il tuo brand
- Lingua
- maggiore
- con i più recenti
- principale
- IMPARARE
- apprendimento
- ciclo di vita
- linea
- caricare
- locale
- ceppo
- registrati
- cerca
- spento
- macchina
- machine learning
- fatto
- Mantenere
- make
- Fare
- gestire
- gestito
- gestione
- gestione
- Rappresentanza
- Mercati
- matematica
- Matrice
- Unire
- evento di unione
- messaggi
- metodo
- metrico
- Metrica
- forza
- ML
- MLOp
- modello
- modelli
- moderno
- Monitorare
- mensile
- Scopri di più
- si muove
- molti
- multiplo
- Nome
- cioè
- nativo
- Naturale
- Elaborazione del linguaggio naturale
- Natura
- Bisogno
- esigenze
- Rete
- neurale
- rete neurale
- New
- GENERAZIONE
- nlp
- taccuino
- adesso
- numero
- of
- Offerte
- on
- ONE
- quelli
- esclusivamente
- operativa
- or
- minimo
- i
- Altro
- altrimenti
- nostro
- su
- produzione
- al di fuori
- ancora
- parte
- partecipare
- Eseguire
- performance
- fase
- raccolto
- conduttura
- piattaforma
- Platone
- Platone Data Intelligence
- PlatoneDati
- possibile
- Post
- pratiche
- Precisione
- predizione
- Previsioni
- preparazione
- precedente
- primario
- un bagno
- processi
- i processi
- lavorazione
- Prodotto
- Produzione
- della produttività
- Prodotti
- progetto
- progetti
- corretto
- prototipo
- fornire
- fornisce
- la percezione
- pubblicato
- fini
- Spingi
- domanda
- rapidamente
- virgolette
- aumentare
- tasso
- Crudo
- a raggiunto
- Leggi
- Lettura
- pronto
- ragionevole
- riceve
- record
- Ridotto
- riferimento
- raffinare
- regex
- registro
- registro
- pertinente
- affidabile
- a distanza
- rimuovere
- rapporto
- rappresentazione
- richiesta
- richieste
- necessario
- risoluto
- Risorse
- quelli
- risponde
- risposta
- risposte
- responsabilità
- responsabile
- colpevole
- ritorno
- robusto
- Roccia
- running
- sagemaker
- Pipeline SageMaker
- stesso
- scalabile
- Scala
- Scienze
- Scienziato
- scienziati
- copione
- Sezione
- sezioni
- sicuro
- segmento
- inviare
- separato
- Sequenza
- servire
- servizio
- Servizi
- flessibile.
- a forma di
- condiviso
- azioni
- lei
- Spettacoli
- firme
- Un'espansione
- contemporaneamente
- abilità
- inferiore
- frammento
- So
- soluzione
- Soluzioni
- RISOLVERE
- presto
- lo spazio
- Speaker
- specialista
- specialisti
- specifico
- in particolare
- Stage
- inizia a
- Di partenza
- inizio
- state-of-the-art
- Stato dei servizi
- soggiorno
- step
- Passi
- conservazione
- memorizzati
- memorizzare
- snellire
- studio
- soggetto
- il successo
- tale
- supporti
- sicuro
- Fai
- Task
- task
- team
- le squadre
- Consulenza
- decine
- test
- Testing
- testo
- di
- Grazie
- che
- Il
- loro
- Li
- poi
- Là.
- perciò
- di
- questo
- migliaia
- tre
- Attraverso
- tempo
- a
- insieme
- argomento
- torcia
- pista
- Trading
- Piattaforma di trading
- Treni
- allenato
- Training
- trasformatore
- trasformatori
- tremendamente
- TURNO
- seconda
- Digitare
- Tipi di
- Aggiornamenti
- us
- uso
- caso d'uso
- utilizzato
- Utente
- Esperienza da Utente
- usa
- utilizzando
- CONVALIDARE
- convalida
- APPREZZIAMO
- versione
- In attesa
- Prima
- we
- Ricchezza
- gestione patrimoniale
- sito web
- servizi web
- WELL
- sono stati
- quando
- ogni volta che
- quale
- while
- con
- entro
- senza
- flusso di lavoro
- flussi di lavoro
- lavori
- scrivere
- Yoga
- zefiro