Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod

Sedan den globala finanskrisen har riskhantering tagit en stor roll i att forma beslutsfattande för banker, inklusive att förutsäga lånestatus för potentiella kunder. Detta är ofta en dataintensiv övning som kräver maskininlärning (ML). Det är dock inte alla organisationer som har datavetenskapliga resurser och expertis för att bygga ett ML-arbetsflöde för riskhantering.

Amazon SageMaker är en helt hanterad ML-plattform som tillåter dataingenjörer och affärsanalytiker att snabbt och enkelt bygga, träna och distribuera ML-modeller. Dataingenjörer och affärsanalytiker kan samarbeta genom att använda SageMakers funktioner för no-code/low-code. Dataingenjörer kan använda Amazon SageMaker Data Wrangler att snabbt aggregera och förbereda data för modellbygge utan att skriva kod. Då kan affärsanalytiker använda det visuella peka-och-klicka-gränssnittet för Amazon SageMaker Canvas att generera korrekta ML-förutsägelser på egen hand.

I det här inlägget visar vi hur enkelt det är för dataingenjörer och affärsanalytiker att samarbeta för att bygga ett ML-arbetsflöde som involverar dataförberedelse, modellbyggande och slutledning utan att skriva kod.

Lösningsöversikt

Även om ML-utveckling är en komplex och iterativ process, kan du generalisera ett ML-arbetsflöde till dataförberedelse, modellutveckling och modelldistribution.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Data Wrangler och Canvas abstraherar komplexiteten i dataförberedelse och modellutveckling, så att du kan fokusera på att leverera värde till ditt företag genom att dra insikter från dina data utan att vara expert på kodutveckling. Följande arkitekturdiagram framhäver komponenterna i en lösning utan kod/låg kod.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Amazon enkel lagringstjänst (Amazon S3) fungerar som vårt datalager för rådata, konstruerade data och modellartefakter. Du kan också välja att importera data från Amazon RedShift, Amazonas Athena, Databricks och Snowflake.

Som datavetare använder vi sedan Data Wrangler för utforskande dataanalys och funktionsteknik. Även om Canvas kan köra funktionstekniska uppgifter, kräver funktionsteknik vanligtvis viss statistik och domänkunskap för att berika en datauppsättning till rätt form för modellutveckling. Därför ger vi detta ansvar till dataingenjörer så att de kan transformera data utan att skriva kod med Data Wrangler.

Efter databeredningen överlåter vi modellbyggandeansvaret till dataanalytiker, som kan använda Canvas för att träna en modell utan att behöva skriva någon kod.

Slutligen gör vi singel- och batchförutsägelser direkt inom Canvas från den resulterande modellen utan att själva behöva distribuera modellslutpunkter.

Datauppsättning översikt

Vi använder SageMaker-funktioner för att förutsäga statusen för ett lån med en modifierad version av Lending Clubs allmänt tillgänglig låneanalysdatauppsättning. Datauppsättningen innehåller lånedata för lån utgivna till och med 2007–2011. Kolumnerna som beskriver lånet och låntagaren är våra funktioner. Kolumnen loan_status är målvariabeln, vilket är vad vi försöker förutsäga.

För att demonstrera i Data Wrangler delar vi upp datasetet i två CSV-filer: del ett och del två. Vi har tagit bort några kolumner från Lending Clubs ursprungliga datauppsättning för att förenkla demon. Vår datauppsättning innehåller över 37,000 21 rader och XNUMX funktionskolumner, som beskrivs i följande tabell.

Kolumnnamn Beskrivning
loan_status Lånets aktuella status (målvariabel).
loan_amount Det angivna lånebeloppet som låntagaren ansökt om. Om kreditavdelningen minskar lånebeloppet, återspeglas det i detta värde.
funded_amount_by_investors Det totala belopp som investerarna åtagit sig för det lånet vid den tidpunkten.
term Antalet betalningar på lånet. Värden är i månader och kan vara antingen 36 eller 60.
interest_rate Ränta på lånet.
installment Den månatliga betalningen som låntagaren är skyldig om lånet härrör från.
grade LC tilldelas lånebetyg.
sub_grade LC tilldelad låneundergrad.
employment_length Anställningslängd i år. Möjliga värden är mellan 0–10, där 0 betyder mindre än ett år och 10 betyder tio eller fler år.
home_ownership Bostadsägarstatusen som låntagaren uppger vid registreringen. Våra värderingar är HYRA, EGNA, BOKA och ÖVRIGT.
annual_income Den självdeklarerade årsinkomsten som låntagaren lämnar vid registreringen.
verification_status Indikerar om inkomsten har verifierats eller inte av LC.
issued_amount Den månad då lånet finansierades.
purpose En kategori som tillhandahålls av låntagaren för låneförfrågan.
dti Ett förhållande som beräknas med hjälp av låntagarens totala månatliga skuldbetalningar på de totala skuldförpliktelserna, exklusive bolån och det begärda LC-lånet, dividerat med låntagarens självrapporterade månadsinkomst.
earliest_credit_line Den månad då låntagarens tidigast rapporterade kreditgräns öppnades.
inquiries_last_6_months Antalet förfrågningar under de senaste 6 månaderna (exklusive bil- och bolåneförfrågningar).
open_credit_lines Antalet öppna kreditgränser i låntagarens kreditfil.
derogatory_public_records Antalet nedsättande offentliga register.
revolving_line_utilization_rate Utnyttjandegrad för rullande linjer, eller mängden kredit som låntagaren använder i förhållande till all tillgänglig revolverande kredit.
total_credit_lines Det totala antalet kreditlinjer som för närvarande finns i låntagarens kreditfil.

Vi använder denna datauppsättning för vår dataförberedelse och modellutbildning.

Förutsättningar

Slutför följande förutsättningssteg:

  1. Ladda upp båda lånefilerna till en S3-skopa som du väljer.
  2. Se till att du har nödvändiga behörigheter. För mer information, se Kom igång med Data Wrangler.
  3. Konfigurera en SageMaker-domän konfigurerad för att använda Data Wrangler. För instruktioner, se Ombord på Amazon SageMaker Domain.

Importera data

Skapa ett nytt Data Wrangler-dataflöde från Amazon SageMaker Studio UI.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Importera data från Amazon S3 genom att välja CSV-filerna från S3-bucket där du placerade din datauppsättning. När du har importerat båda filerna kan du se två separata arbetsflöden i Data flöde se.

Du kan välja flera samplingsalternativ när du importerar dina data i ett Data Wrangler-flöde. Sampling kan hjälpa när du har en datauppsättning som är för stor för att förberedas interaktivt, eller när du vill bevara andelen sällsynta händelser i din samplade datauppsättning. Eftersom vår datauppsättning är liten använder vi inte sampling.

Förbered data

För vårt användningsfall har vi två datauppsättningar med en gemensam kolumn: id. Som ett första steg i dataförberedelsen vill vi kombinera dessa filer genom att sammanfoga dem. För instruktioner, se Transformera data.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vi använder Ansluta sig datatransformationssteget och använd Inre gå med typ på id kolonn.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Som ett resultat av vår sammanfogningstransformation skapar Data Wrangler ytterligare två kolumner: id_0 och id_1. Dessa kolumner är dock onödiga för vårt modellbygge. Vi släpper dessa redundanta kolumner med hjälp av Hantera kolumner omvandla steg.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.
Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vi har importerat våra datauppsättningar, sammanfogat dem och tagit bort onödiga kolumner. Vi är nu redo att berika vår data genom funktionsteknik och förbereda för modellbygge.

Utför funktionsteknik

Vi använde Data Wrangler för att förbereda data. Du kan också använda Funktion för datakvalitet och insiktsrapport inom Data Wrangler för att verifiera din datakvalitet och upptäcka avvikelser i din data. Dataforskare behöver ofta använda dessa datainsikter för att effektivt tillämpa rätt domänkunskap på tekniska funktioner. För det här inlägget antar vi att vi har slutfört dessa kvalitetsbedömningar och kan gå vidare till funktionsteknik.

I det här steget tillämpar vi några transformationer på numeriska, kategoriska och textkolumner.

Vi normaliserar först räntan för att skala värdena mellan 0–1. Vi gör detta med hjälp av Process numerisk transformera för att skala interest_rate kolumn med en min-max scaler. Syftet med normalisering (eller standardisering) är att eliminera bias från vår modell. Variabler som mäts i olika skalor kommer inte att bidra lika till modellinlärningsprocessen. Därför hjälper en transformationsfunktion som en min-max scalertransform till att normalisera funktioner.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

För att konvertera en kategorivariabel till ett numeriskt värde använder vi one-hot encoding. Vi väljer Koda kategoriskt transformera och välj sedan En het kodning. One-hot-kodning förbättrar en ML-modells prediktiva förmåga. Denna process omvandlar ett kategoriskt värde till en ny funktion genom att tilldela ett binärt värde på 1 eller 0 till funktionen. Som ett enkelt exempel, om du hade en kolumn som innehöll antingen värdet på yes or no, en-hot-kodning skulle konvertera den kolumnen till två kolumner: a Yes kolumn och a No kolumn. Ett ja-värde skulle ha 1 i Yes kolumn och en 0 i No kolumn. One-hot-kodning gör våra data mer användbara eftersom numeriska värden lättare kan bestämma en sannolikhet för våra förutsägelser.

Slutligen presenterar vi employer_title kolumn för att omvandla dess strängvärden till en numerisk vektor. Vi tillämpar Count Vectorizer och en standard tokenizer inom Vektorisera omvandla. Tokenisering bryter ner en mening eller en serie text till ord, medan en vektoriserare konverterar textdata till en maskinläsbar form. Dessa ord representeras som vektorer.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Med alla funktionssteg genomförda kan vi exportera data och mata ut resultaten till vår S3-hink. Alternativt kan du exportera ditt flöde som Python-kod, eller en Jupyter-anteckningsbok för att skapa en pipeline med din vy med Amazon SageMaker-rörledningar. Tänk på detta när du vill köra dina funktionstekniksteg i stor skala eller som en del av en ML-pipeline.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vi kan nu använda Data Wrangler-utdatafilen som vår input för Canvas. Vi refererar till detta som ett dataset i Canvas för att bygga vår ML-modell.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

I vårt fall exporterade vi vår förberedda datauppsättning till standard Studio-hinken med en output prefix. Vi hänvisar till denna datauppsättningsplats när vi laddar in data i Canvas för att bygga nästa modell.

Bygg och träna din ML-modell med Canvas

Starta Canvas-applikationen på SageMaker-konsolen. För att bygga en ML-modell från förberedda data i föregående avsnitt, utför vi följande steg:

  1. Importera den förberedda datamängden till Canvas från S3-hinken.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vi refererar till samma S3-sökväg där vi exporterade Data Wrangler-resultaten från föregående avsnitt.

  1. Skapa ny modell i Canvas och namnge den loan_prediction_model.
  2. Välj den importerade datamängden och lägg till den i modellobjektet.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

För att få Canvas att bygga en modell måste vi välja målkolumnen.

  1. Eftersom vårt mål är att förutsäga sannolikheten för en långivares förmåga att återbetala ett lån, väljer vi loan_status kolonn.

Canvas identifierar automatiskt typen av ML-problemformulering. I skrivande stund stöder Canvas problem med regression, klassificering och tidsserieprognoser. Du kan ange typen av problem eller låta Canvas automatiskt härleda problemet från dina data.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

  1. Välj ditt alternativ för att starta modellbyggeprocessen: Snabbbyggnad or Standardbyggd.

Smakämnen Snabbbyggnad alternativet använder din datauppsättning för att träna en modell inom 2–15 minuter. Detta är användbart när du experimenterar med en ny datauppsättning för att avgöra om datauppsättningen du har kommer att räcka för att göra förutsägelser. Vi använder det här alternativet för det här inlägget.

Smakämnen Standardbyggd option väljer noggrannhet framför hastighet och använder cirka 250 modellkandidater för att träna modellen. Processen tar vanligtvis 1–2 timmar.

Efter att modellen har byggts kan du granska resultaten av modellen. Canvas uppskattar att din modell kan förutsäga rätt resultat 82.9 % av gångerna. Dina egna resultat kan variera beroende på variationen i träningsmodellerna.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Dessutom kan du dyka djupt in i detaljanalys av modellen för att lära dig mer om modellen.

Funktionens betydelse representerar den uppskattade betydelsen av varje funktion för att förutsäga målkolumnen. I det här fallet har kreditgränskolumnen den mest betydande inverkan när det gäller att förutsäga om en kund kommer att betala tillbaka lånebeloppet, följt av ränta och årsinkomst.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Förvirringsmatrisen i Avancerade mätvärden avsnittet innehåller information för användare som vill ha en djupare förståelse för deras modellprestanda.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Innan du kan distribuera din modell för produktionsarbetsbelastningar, använd Canvas för att testa modellen. Canvas hanterar vår modellslutpunkt och låter oss göra förutsägelser direkt i Canvas användargränssnitt.

  1. Välja förutsäga och granska resultaten på antingen Batch-förutsägelse or Enkel förutsägelse fliken.

I följande exempel gör vi en enda förutsägelse genom att modifiera värden för att förutsäga vår målvariabel loan_status i realtid

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Vi kan också välja en större datamängd och låta Canvas generera batchförutsägelser åt oss.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Slutsats

End-to-end maskininlärning är komplex och iterativ, och involverar ofta flera personas, teknologier och processer. Data Wrangler och Canvas möjliggör samarbete mellan team utan att dessa team behöver skriva någon kod.

En dataingenjör kan enkelt förbereda data med Data Wrangler utan att skriva någon kod och skicka den förberedda datamängden till en affärsanalytiker. En affärsanalytiker kan sedan enkelt bygga exakta ML-modeller med bara några klick med Canvas och få exakta förutsägelser i realtid eller i batch.

Kom igång med Data Wrangler använda dessa verktyg utan att behöva hantera någon infrastruktur. Du kan ställ in Canvas börja snabbt och omedelbart skapa ML-modeller för att stödja dina affärsbehov.


Om författarna

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.Peter Chung är en lösningsarkitekt för AWS och brinner för att hjälpa kunder att avslöja insikter från sina data. Han har byggt lösningar för att hjälpa organisationer att fatta datadrivna beslut inom både den offentliga och privata sektorn. Han innehar alla AWS-certifieringar samt två GCP-certifieringar.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai. Meenakshisundaram Thandavarayan är senior AI/ML-specialist med AWS. Han hjälper högteknologiska strategiska konton på deras AI- och ML-resa. Han brinner mycket för datadriven AI.

Bygg ett arbetsflöde för maskininlärning för riskhantering på Amazon SageMaker utan kod PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.Dan Ferguson är lösningsarkitekt på AWS, baserad i New York, USA. Som expert på maskininlärningstjänster arbetar Dan för att stödja kunder på deras resa mot att integrera ML-arbetsflöden effektivt, effektivt och hållbart.

Tidsstämpel:

Mer från AWS maskininlärning