Detta är ett gästinlägg från Skalbar kapital, en ledande FinTech i Europa som erbjuder digital förmögenhetsförvaltning och en mäklarplattform med schablonbelopp.
Som ett snabbväxande företag är Scalable Capitals mål att inte bara bygga en innovativ, robust och pålitlig infrastruktur, utan också att erbjuda de bästa upplevelserna för våra kunder, särskilt när det kommer till kundtjänster.
Scalable tar emot hundratals e-postförfrågningar från våra kunder dagligen. Genom att implementera en modern NLP-modell (natural language processing) har svarsprocessen formats mycket mer effektivt och väntetiden för klienter har minskat enormt. Maskininlärningsmodellen (ML) klassificerar nya inkommande kundförfrågningar så snart de anländer och omdirigerar dem till fördefinierade köer, vilket gör att våra dedikerade klientframgångsagenter kan fokusera på innehållet i e-postmeddelandena enligt deras kompetens och ge lämpliga svar.
I det här inlägget visar vi de tekniska fördelarna med att använda Hugging Face-transformatorer utplacerade med Amazon SageMaker, såsom utbildning och experiment i stor skala, och ökad produktivitet och kostnadseffektivitet.
Problem uttalande
Scalable Capital är en av de snabbast växande FinTechs i Europa. Med målet att demokratisera investeringar ger företaget sina kunder enkel tillgång till finansmarknaderna. Kunder till Scalable kan aktivt delta på marknaden genom företagets mäklarhandelsplattform, eller använda Scalable Wealth Management för att investera på ett intelligent och automatiserat sätt. Under 2021 upplevde Scalable Capital en tiofaldig ökning av sin kundbas, från tiotusentals till hundratusentals.
För att ge våra kunder en förstklassig (och konsekvent) användarupplevelse över produkter och kundservice, letade företaget efter automatiserade lösningar för att generera effektivitetsvinster för en skalbar lösning med bibehållen operativ excellens. Scalable Capitals datavetenskap och kundtjänstteam identifierade att en av de största flaskhalsarna i att betjäna våra kunder var att svara på e-postförfrågningar. Specifikt var flaskhalsen klassificeringssteget, där anställda var tvungna att läsa och märka förfrågningstexter dagligen. Efter att e-postmeddelandena dirigerats till sina rätta köer, engagerade sig respektive specialist snabbt och löste ärendena.
För att effektivisera denna klassificeringsprocess byggde och implementerade datavetenskapsteamet på Scalable en multitask NLP-modell med hjälp av den senaste transformatorarkitekturen, baserad på den förutbildade distilbert-bas-tysk-fodral modell publicerad av Hugging Face. distilbert-bas-tysk-fodral använder kunskapsdestillation metod för att förträna en mindre allmän språkrepresentationsmodell än den ursprungliga BERT-basmodellen. Den destillerade versionen uppnår jämförbar prestanda som originalversionen, samtidigt som den är mindre och snabbare. För att underlätta vår ML-livscykelprocess beslutade vi att använda SageMaker för att bygga, distribuera, betjäna och övervaka våra modeller. I följande avsnitt presenterar vi vår projektarkitekturdesign.
Lösningsöversikt
Scalable Capitals ML-infrastruktur består av två AWS-konton: ett som miljö för utvecklingsstadiet och det andra för produktionsskedet.
Följande diagram visar arbetsflödet för vårt e-postklassificeringsprojekt, men kan också generaliseras till andra datavetenskapliga projekt.
Arbetsflödet består av följande komponenter:
- Modellexperiment – Dataforskare använder Amazon SageMaker Studio att utföra de första stegen i datavetenskapens livscykel: explorativ dataanalys (EDA), datarensning och förberedelse samt bygga prototypmodeller. När den utforskande fasen är klar, vänder vi oss till VSCode med en SageMaker-anteckningsbok som vårt fjärrutvecklingsverktyg för att modularisera och producera vår kodbas. För att utforska olika typer av modeller och modellkonfigurationer, och samtidigt hålla koll på våra experiment, använder vi SageMaker Training och SageMaker Experiments.
- Modellbyggd – Efter att vi bestämt oss för en modell för vårt produktionsanvändningsfall, i det här fallet en multi-task distilbert-bas-tysk-fodral modell, finjusterad från den förtränade modellen från Hugging Face, förbinder vi oss och skickar vår kod till Github-utvecklargrenen. Github merge-händelsen utlöser vår Jenkins CI-pipeline, som i sin tur startar ett SageMaker Pipelines-jobb med testdata. Detta fungerar som ett test för att säkerställa att koder körs som förväntat. En teständpunkt distribueras för teständamål.
- Modelldistribution – Efter att ha sett till att allt fungerar som förväntat slår datavetare samman utveckla-grenen till den primära grenen. Denna sammanslagningshändelse utlöser nu ett SageMaker Pipelines-jobb som använder produktionsdata i utbildningssyfte. Efteråt produceras modellartefakter och lagras i en utgång Amazon enkel lagringstjänst (Amazon S3) hink, och en ny modellversion loggas i SageMakers modellregister. Dataforskare undersöker prestandan för den nya modellen och godkänner sedan om den är i linje med förväntningarna. Modellgodkännandehändelsen fångas upp av Amazon EventBridge, som sedan distribuerar modellen till en SageMaker-slutpunkt i produktionsmiljön.
- MLOps – Eftersom SageMaker-slutpunkten är privat och inte kan nås av tjänster utanför VPC, an AWS Lambda funktion och Amazon API Gateway offentliga slutpunkter krävs för att kommunicera med CRM. Närhelst nya e-postmeddelanden kommer till CRM-inkorgen, anropar CRM API Gateways offentliga slutpunkt, vilket i sin tur utlöser Lambda-funktionen för att anropa den privata SageMaker-slutpunkten. Funktionen vidarebefordrar sedan klassificeringen tillbaka till CRM via API Gateway public endpoint. För att övervaka prestandan för vår implementerade modell implementerar vi en återkopplingsslinga mellan CRM och dataforskarna för att hålla reda på förutsägelsemått från modellen. På månadsbasis uppdaterar CRM de historiska data som används för experiment och modellträning. Vi använder Amazon Managed Workflows för Apache Airflow (Amazon MWAA) som schemaläggare för vår månatliga omskolning.
I följande avsnitt bryter vi ner stegen för dataförberedelse, modellexperimentering och modelldistribution mer i detalj.
Dataförberedelse
Scalable Capital använder ett CRM-verktyg för att hantera och lagra e-postdata. Relevant e-postinnehåll består av ämne, text och depåbanker. Det finns tre etiketter att tilldela varje e-postmeddelande: vilken bransch e-postmeddelandet kommer från, vilken kö som är lämplig och det specifika ämnet för e-postmeddelandet.
Innan vi börjar träna några NLP-modeller ser vi till att indata är rena och att etiketterna tilldelas enligt förväntningarna.
För att hämta rent frågeinnehåll från skalbara klienter tar vi bort från rå e-postdata och extra text och symboler, såsom e-postsignaturer, impressum, citat från tidigare meddelanden i e-postkedjor, CSS-symboler och så vidare. Annars kan våra framtida utbildade modeller uppleva försämrad prestanda.
Etiketter för e-postmeddelanden utvecklas över tiden när skalbara kundtjänstteam lägger till nya och förfinar eller tar bort befintliga för att tillgodose affärsbehov. För att säkerställa att etiketter för träningsdata samt förväntade klassificeringar för förutsägelse är uppdaterade arbetar datavetenskapsteamet i nära samarbete med kundtjänstteamet för att säkerställa att etiketterna är korrekta.
Modellexperiment
Vi börjar vårt experiment med de lättillgängliga förtränade distilbert-bas-tysk-fodral modell publicerad av Hugging Face. Eftersom den förtränade modellen är en språkrepresentationsmodell för allmänt bruk, kan vi anpassa arkitekturen för att utföra specifika nedströmsuppgifter – såsom klassificering och frågesvar – genom att fästa lämpliga huvuden till det neurala nätverket. I vårt användningsfall är den nedströmsuppgift vi är intresserade av sekvensklassificering. Utan att ändra befintlig arkitekturbestämmer vi oss för att finjustera tre separata förtränade modeller för var och en av våra nödvändiga kategorier. Med SageMaker Hugging Face Deep Learning Containers (DLC), start och hantering av NLP-experiment görs enkelt med Hugging Face-behållare och SageMaker Experiments API.
Följande är ett kodavsnitt av train.py
:
Följande kod är Hugging Face-estimatorn:
För att validera de finjusterade modellerna använder vi F1-poäng på grund av den obalanserade naturen hos vår e-postdatauppsättning, men också för att beräkna andra mätvärden som noggrannhet, precision och återkallelse. För att SageMaker Experiments API ska registrera träningsjobbets mätvärden måste vi först logga mätvärdena till träningsjobbets lokala konsol, som hämtas av amazoncloudwatch. Sedan definierar vi det korrekta regex-formatet för att fånga CloudWatch-loggarna. Metrikdefinitionerna inkluderar namnet på måtten och regex-validering för att extrahera måtten från träningsjobbet:
Som en del av träningsiterationen för klassificeringsmodellen använder vi en förvirringsmatris och klassificeringsrapport för att utvärdera resultatet. Följande figur visar förvirringsmatrisen för förutsägelse av bransch.
Följande skärmdump visar ett exempel på klassificeringsrapporten för branschprognos.
Som en nästa iteration av vårt experiment kommer vi att dra nytta av multi-task inlärning att förbättra vår modell. Multi-task learning är en form av träning där en modell lär sig att lösa flera uppgifter samtidigt, eftersom den delade informationen mellan uppgifter kan förbättra inlärningseffektiviteten. Genom att koppla ytterligare två klassificeringshuvuden till den ursprungliga distilbert-arkitekturen kan vi utföra multi-task finjustering, vilket uppnår rimliga mätvärden för vårt kundserviceteam.
Modelldistribution
I vårt användningsfall ska e-postklassificeraren distribueras till en slutpunkt, till vilken vår CRM-pipeline kan skicka en grupp oklassificerade e-postmeddelanden och få tillbaka förutsägelser. Eftersom vi har andra logiker – som rensning av indata och förutsägelser om flera uppgifter – förutom Hugging Face-modellinferens, måste vi skriva ett anpassat slutledningsskript som följer SageMaker standard.
Följande är ett kodavsnitt av inference.py
:
När allt är klart och klart använder vi SageMaker Pipelines för att hantera vår träningspipeline och koppla den till vår infrastruktur för att slutföra vår MLOps-installation.
För att övervaka prestandan för den distribuerade modellen bygger vi en återkopplingsslinga för att göra det möjligt för CRM att förse oss med statusen för hemligstämplade e-postmeddelanden när ärenden avslutas. Baserat på denna information gör vi justeringar för att förbättra den distribuerade modellen.
Slutsats
I det här inlägget delade vi hur SageMaker underlättar datavetenskapsteamet på Scalable att hantera livscykeln för ett datavetenskapsprojekt på ett effektivt sätt, nämligen e-postklassificeringsprojektet. Livscykeln börjar med den inledande fasen av dataanalys och utforskning med SageMaker Studio; går vidare till modellexperiment och implementering med SageMaker-utbildning, slutledning och DLC:er för Hugging Face; och kompletteras med en utbildningspipeline med SageMaker Pipelines integrerade med andra AWS-tjänster. Tack vare denna infrastruktur kan vi iterera och distribuera nya modeller mer effektivt och kan därför förbättra befintliga processer inom Scalable såväl som våra kunders upplevelser.
För att lära dig mer om Hugging Face och SageMaker, se följande resurser:
Om författarna
Dr Sandra Schmid är chef för dataanalys på Scalable GmbH. Hon ansvarar för datadrivna arbetssätt och användningsfall i företaget tillsammans med sina team. Hennes huvudfokus är att hitta den bästa kombinationen av maskininlärning och datavetenskapliga modeller och affärsmål för att få så mycket affärsnytta och effektivitet av data som möjligt.
Huy Dang Data Scientist på Scalable GmbH. Hans ansvar inkluderar dataanalys, att bygga och distribuera modeller för maskininlärning, samt att utveckla och underhålla infrastruktur för datavetenskapsteamet. På fritiden tycker han om att läsa, vandra, klättra och hålla sig uppdaterad med de senaste maskininlärningsutvecklingarna.
Mia Chang är en ML Specialist Solutions Architect för Amazon Web Services. Hon arbetar med kunder i EMEA och delar bästa praxis för att köra AI/ML-arbetsbelastningar i molnet med sin bakgrund inom tillämpad matematik, datavetenskap och AI/ML. Hon fokuserar på NLP-specifika arbetsbelastningar och delar med sig av sin erfarenhet som konferenstalare och bokförfattare. På fritiden tycker hon om yoga, brädspel och att brygga kaffe.
Moritz Guertler är en Account Executive i segmentet Digital Native Businesses på AWS. Han fokuserar på kunder inom FinTech-området och stödjer dem i att accelerera innovation genom säker och skalbar molninfrastruktur.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- PlatoData.Network Vertical Generative Ai. Styrka dig själv. Tillgång här.
- PlatoAiStream. Web3 Intelligence. Kunskap förstärkt. Tillgång här.
- Platoesg. Fordon / elbilar, Kol, CleanTech, Energi, Miljö, Sol, Avfallshantering. Tillgång här.
- PlatoHealth. Biotech och kliniska prövningar Intelligence. Tillgång här.
- ChartPrime. Höj ditt handelsspel med ChartPrime. Tillgång här.
- BlockOffsets. Modernisera miljökompensation ägande. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/accelerate-client-success-management-through-email-classification-with-hugging-face-on-amazon-sagemaker/
- : har
- :är
- :inte
- :var
- $UPP
- 1
- 100
- 13
- 15%
- 17
- 2021
- 26%
- 32
- 500
- 7
- a
- Able
- Om Oss
- ovan
- accelerera
- accelererande
- Acceptera
- tillgång
- rymma
- Enligt
- Konto
- konton
- noggrannhet
- uppnår
- tvärs
- aktivt
- handlingar
- anpassa
- lägga till
- Dessutom
- justeringar
- anta
- Fördel
- Efter
- efteråt
- medel
- AI / ML
- Syftet
- tillåter
- också
- amason
- Amazon SageMaker
- Amazon Web Services
- bland
- an
- analys
- analytics
- och
- vilken som helst
- Apache
- api
- tillämpas
- tillvägagångssätt
- lämpligt
- godkännande
- godkänna
- arkitektur
- ÄR
- argument
- AS
- delad
- At
- bifoga
- Författaren
- Automatiserad
- tillgänglig
- AWS
- tillbaka
- bakgrund
- Banker
- bas
- baserat
- grund
- BE
- därför att
- varit
- Där vi får lov att vara utan att konstant prestera,
- Fördelarna
- BÄST
- bästa praxis
- mellan
- ombord
- Brädspel
- kropp
- boken
- Branch
- Ha sönder
- mäklar
- SLUTRESULTAT
- Byggnad
- byggt
- företag
- företag
- men
- by
- KAN
- kapital
- Kapitalets
- fånga
- fångas
- bära
- Vid
- fall
- kategorier
- kedjor
- klassificering
- klassificerad
- Rengöring
- klient
- klienter
- Klättring
- Stäng
- stängt
- cloud
- molninfrastruktur
- koda
- kodbas
- koder
- Kaffe
- samverkan
- kombination
- kommer
- förbinda
- kommunicera
- företag
- Företagets
- jämförbar
- fullborda
- slutför
- komponenter
- Compute
- dator
- Datavetenskap
- Konferens
- förvirring
- konsekvent
- består
- Konsol
- Behållare
- innehåll
- innehåll
- korrekt
- CRM
- CSS
- väktare
- beställnings
- kund
- Kunder
- dagligen
- datum
- dataanalys
- Data Analytics
- Förberedelse av data
- datavetenskap
- datavetare
- data driven
- Datum
- beslutar
- beslutade
- dedicerad
- djup
- djupt lärande
- Standard
- definiera
- definierade
- definitioner
- DEMOKRATISERA
- demonstrera
- distribuera
- utplacerade
- utplacera
- utplacering
- vecklas ut
- Designa
- detalj
- utveckla
- utveckla
- Utveckling
- utvecklingen
- olika
- digital
- digital förmögenhetsförvaltning
- ner
- grund
- varje
- lätt
- effektiviteter
- effektivt
- annars
- e
- EMEA
- anställda
- möjliggöra
- Slutpunkt
- ingrepp
- säkerställa
- Miljö
- epok
- speciellt
- Europa
- utvärdera
- utvärdering
- händelse
- allt
- utvecklas
- undersöka
- exempel
- Excellence
- verkställande
- befintliga
- förväntan
- förväntningar
- förväntat
- erfarenhet
- erfaren
- Erfarenheter
- experimentera
- experiment
- utforskning
- Utforskande dataanalys
- utforska
- extra
- f1
- Ansikte
- främja
- underlättar
- Mode
- snabbare
- snabbast
- snabbast växande
- återkoppling
- Figur
- finansiella
- finna
- fintech
- fintechs
- Förnamn
- första stegen
- platta
- Fokus
- fokuserar
- efter
- För
- formen
- format
- Fri
- från
- fungera
- framtida
- Få
- Games
- nätbryggan
- generell mening
- generera
- skaffa sig
- GitHub
- GmBH
- Mål
- Odling
- Gäst
- gäst inlägg
- hade
- Har
- he
- huvud
- huvuden
- här
- hans
- historisk
- värd
- Hur ser din drömresa ut
- html
- http
- HTTPS
- Hundratals
- identifierade
- if
- genomföra
- genomföra
- förbättra
- in
- innefattar
- Inkommande
- Öka
- ökat
- informationen
- Infrastruktur
- inledande
- Innovation
- innovativa
- ingång
- förfrågningar
- utredning
- integrerade
- Intelligent
- intresserad
- in
- införa
- Invest
- investering
- anropar
- IT
- iteration
- DESS
- Jobb
- json
- Ha kvar
- Nyckel
- etikett
- Etiketter
- språk
- största
- senaste
- ledande
- LÄRA SIG
- inlärning
- livscykel
- linje
- läsa in
- lokal
- log
- inloggad
- du letar
- förlust
- Maskinen
- maskininlärning
- gjord
- upprätthålla
- göra
- Framställning
- hantera
- förvaltade
- ledning
- hantera
- marknad
- Marknader
- matematik
- Matris
- Sammanfoga
- slå samman händelsen
- meddelanden
- metod
- metriska
- Metrics
- kanske
- ML
- MLOps
- modell
- modeller
- Modern Konst
- Övervaka
- månad
- mer
- förflyttar
- mycket
- multipel
- namn
- nämligen
- nativ
- Natural
- Naturlig språkbehandling
- Natur
- Behöver
- behov
- nät
- neurala
- neurala nätverk
- Nya
- Nästa
- nlp
- anteckningsbok
- nu
- antal
- of
- Erbjudanden
- on
- ONE
- ettor
- endast
- operativa
- or
- beställa
- ursprungliga
- Övriga
- annat
- vår
- ut
- produktion
- utanför
- över
- del
- delta
- Utföra
- prestanda
- fas
- plockade
- rörledning
- plattform
- plato
- Platon Data Intelligence
- PlatonData
- möjlig
- Inlägg
- praxis
- Precision
- förutsägelse
- Förutsägelser
- beredning
- föregående
- primär
- privat
- process
- processer
- bearbetning
- producerad
- Produktion
- produktivitet
- Produkter
- projektet
- projekt
- rätt
- Prototypen
- ge
- ger
- allmän
- publicerade
- syfte
- Tryck
- fråga
- snabbt
- citat
- höja
- Betygsätta
- Raw
- kommit fram till
- Läsa
- Läsning
- redo
- rimlig
- erhåller
- register
- Minskad
- hänvisa
- förfina
- regex
- registrera
- register
- relevanta
- pålitlig
- avlägsen
- ta bort
- rapport
- representation
- begära
- förfrågningar
- Obligatorisk
- löst
- Resurser
- att
- reagera
- respons
- svar
- ansvar
- ansvarig
- resultera
- avkastning
- robusta
- sten
- rinnande
- sagemaker
- SageMaker-rörledningar
- Samma
- skalbar
- Skala
- Vetenskap
- Forskare
- vetenskapsmän
- skript
- §
- sektioner
- säkra
- segmentet
- sända
- separat
- Sekvens
- tjänar
- service
- Tjänster
- inställning
- formad
- delas
- aktier
- hon
- Visar
- signaturer
- Enkelt
- samtidigt
- färdigheter
- mindre
- kodavsnitt
- So
- lösning
- Lösningar
- LÖSA
- snart
- Utrymme
- Högtalare
- specialist
- specialister
- specifik
- specifikt
- Etapp
- starta
- Starta
- startar
- state-of-the-art
- status
- vistas
- Steg
- Steg
- förvaring
- lagras
- misslyckande
- effektivisera
- studio
- ämne
- framgång
- sådana
- Stöder
- säker
- Ta
- uppgift
- uppgifter
- grupp
- lag
- Teknisk
- tiotals
- testa
- Testning
- text
- än
- Tack
- den där
- Smakämnen
- deras
- Dem
- sedan
- Där.
- därför
- de
- detta
- tusentals
- tre
- Genom
- tid
- till
- tillsammans
- verktyg
- ämne
- brännaren
- spår
- Handel
- Handelsplattform
- Tåg
- tränad
- Utbildning
- transformator
- transformatorer
- oerhört
- SVÄNG
- två
- Typ
- typer
- Uppdateringar
- us
- användning
- användningsfall
- Begagnade
- Användare
- Användarupplevelse
- användningar
- med hjälp av
- BEKRÄFTA
- godkännande
- värde
- version
- väntar
- var
- we
- Rikedom
- förmögenhetsförvaltning
- webb
- webbservice
- VÄL
- były
- när
- närhelst
- som
- medan
- med
- inom
- utan
- arbetsflöde
- arbetsflöden
- fungerar
- skriva
- Yoga
- zephyrnet