Det här är ett gästblogginlägg av Danny Brock, Rajeev Govindan och Krishnaram Kenthapadi på Fiddler AI.
Din Amazon SageMaker modellerna är live. De hanterar miljontals slutsatser varje dag och skapar bättre affärsresultat för ditt företag. De presterar exakt lika bra som dagen de lanserades.
Eh, vänta. Är de? Kanske. Kanske inte.
Utan företagsklass modellövervakning, kan dina modeller förfalla i tysthet. Dina team för maskininlärning (ML) kanske aldrig vet att dessa modeller faktiskt har förändrats från mirakel av inkomstgenerering till skulder som fattar felaktiga beslut som kostar ditt företag tid och pengar.
Oroa dig inte. Lösningen är närmare än du tror.
Fiddler, en modell Performance Management-lösning i företagsklass tillgänglig på AWS Marketplace, erbjuder modellövervakning och förklarande AI för att hjälpa ML-team att inspektera och ta itu med ett omfattande antal modellproblem. Genom modellövervakning, modellförklaring, analys och fördomsdetektering förser Fiddler ditt företag med en enkel glasruta som är lätt att använda för att säkerställa att dina modeller beter sig som de ska. Och om de inte är det, tillhandahåller Fiddler också funktioner som gör att du kan inspektera dina modeller för att hitta de bakomliggande orsakerna till prestandaförsämring.
Det här inlägget visar hur du MLOps Teamet kan förbättra dataforskarnas produktivitet och minska tiden för att upptäcka problem för dina modeller som distribueras i SageMaker genom att integrera med Fiddler Model Performance Management Platform i några enkla steg.
Lösningsöversikt
Följande referensarkitektur belyser de primära punkterna för integration. Fiddler finns som en "sidecar" till ditt befintliga SageMaker ML-arbetsflöde.
Resten av detta inlägg leder dig genom stegen för att integrera din SageMaker-modell med Fiddler's Modell Performance Management Platform:
- Se till att din modell har datafångst aktiverat.
- Skapa en Fiddler-testmiljö.
- Registrera information om din modell i din Fiddler-miljö.
- Skapa ett AWS Lambda funktion för att publicera SageMaker-slutledningar till Fiddler.
- Utforska Fiddlers övervakningsmöjligheter i din Fiddler-testmiljö.
Förutsättningar
Det här inlägget förutsätter att du har ställt in SageMaker och distribuerat en modellslutpunkt. För att lära dig hur du konfigurerar SageMaker för modellservering, se Distribuera modeller för slutledning. Några exempel finns också på GitHub repo.
Se till att din modell har datafångst aktiverat
På SageMaker-konsolen, navigera till din modells serveringsslutpunkt och se till att du har aktiverat Data infångning till en Amazon enkel lagringstjänst (Amazon S3) hink. Detta lagrar slutsatserna (förfrågningar och svar) din modell gör varje dag som JSON linjer filer (.jsonl) i Amazon S3.
Skapa en Fiddler-testmiljö
Från fiddler.ai webbplats kan du begära en gratis provperiod. Efter att ha fyllt i ett snabbt formulär kommer Fiddler att kontakta dig för att förstå detaljerna i dina behov av modellprestandahantering och kommer att ha en testmiljö redo för dig inom några timmar. Du kan förvänta dig en dedikerad miljö som https://yourcompany.try.fiddler.ai.
Registrera information om din modell i din Fiddler-miljö
Innan du kan börja publicera händelser från din SageMaker-värdmodell i Fiddler måste du skapa ett projekt i din Fiddler-testmiljö och ge Fiddler-information om din modell genom ett steg som kallas modellregistrering. Om du vill använda en förkonfigurerad anteckningsbok inifrån Amazon SageMaker Studio istället för att kopiera och klistra in följande kodavsnitt kan du referera till Fiddler snabbstarts-anteckningsboken GitHub. Studio tillhandahåller ett enda webbaserat visuellt gränssnitt där du kan utföra alla ML-utvecklingssteg.
Först måste du installera Fiddler Python-klient i din SageMaker-anteckningsbok och instansiera Fiddler-klienten. Du kan få AUTH_TOKEN
från Inställningar sida i din Fiddler-testmiljö.
Skapa sedan ett projekt i din Fiddler-testmiljö:
Ladda nu upp din träningsdatauppsättning. Anteckningsboken tillhandahåller också en exempeldatauppsättning för att köra Fiddler's förklarbarhet algoritmer och som baslinje för övervakning av mätvärden. Datauppsättningen används också för att generera schemat för denna modell i Fiddler.
Slutligen, innan du kan börja publicera slutsatser till Fiddler för övervakning, rotorsaksanalys och förklaringar, måste du registrera din modell. Låt oss först skapa en model_info
objekt som innehåller metadata om din modell:
Sedan kan du registrera modellen med din nya model_info
objekt:
Bra! Nu kan du publicera några händelser till Fiddler för att observera modellens prestanda.
Skapa en Lambda-funktion för att publicera SageMaker-slutledningar till Fiddler
Med Lambdas enkla serverlösa arkitektur kan du snabbt bygga mekanismen som krävs för att flytta dina slutsatser från S3-bucketen du konfigurerade tidigare till din nyligen förberedda Fiddler-testmiljö. Denna Lambda-funktion är ansvarig för att öppna eventuella nya JSONL-händelseloggfiler i din modells S3-bucket, analysera och formatera JSONL-innehållet till en dataram och sedan publicera den dataramen med händelser till din Fiddler-testmiljö. Följande skärmdump visar koddetaljerna för vår funktion.
Lambdafunktionen måste konfigureras för att utlösa nyskapade filer i din S3-hink. Det följande handledning guidar dig genom att skapa en Amazon EventBridge trigger som anropar Lambda-funktionen när en fil laddas upp till Amazon S3. Följande skärmdump visar vår funktions triggerkonfiguration. Detta gör det enkelt att se till att varje gång din modell gör nya slutsatser, de händelser som lagras i Amazon S3 laddas in i Fiddler för att driva modellens observerbarhet som ditt företag behöver.
För att förenkla detta ytterligare är koden för denna Lambda-funktion allmänt tillgänglig från Spelmans dokumentationssida. Detta kodexempel fungerar för närvarande för binära klassificeringsmodeller med strukturerade indata. Om du har modelltyper med olika funktioner eller uppgifter, kontakta Fiddler för hjälp med mindre ändringar av koden.
Lambdafunktionen måste referera till Fiddler Python-klienten. Fiddler har skapat ett allmänt tillgängligt Lambda-lager som du kan referera till för att säkerställa att import fiddler as fdl
steg fungerar sömlöst. Du kan referera till detta lager via ett ARN i us-west-2-regionen: arn:aws:lambda:us-west-2:079310353266:layer:fiddler-client-0814:1
, som visas i följande skärmdump.
Du måste också ange Lambda-miljövariabler så att Lambda-funktionen vet hur man ansluter till din Fiddler-testmiljö, och vilka ingångar och utgångar som finns inom .jsonl-filerna som fångas upp av din modell. Följande skärmdump visar en lista över nödvändiga miljövariabler, som också är på Spelmans dokumentationssida. Uppdatera värdena för miljövariablerna så att de matchar din modell och datamängd.
Utforska Fiddlers övervakningsmöjligheter i din Fiddler-testmiljö
Du har gjort det! Med din baslinjedata, modell och trafik kopplade kan du nu förklara datadrift, extremvärden, modellbias, dataproblem och prestandablips, och dela instrumentpaneler med andra. Avsluta din resa med tittar på en demo om de modellfunktioner för prestationshantering du har introducerat för ditt företag.
Exemplen på skärmdumparna nedan ger en glimt av modellinsikter som drift, avvikande detektering, lokala punktförklaringar och modellanalyser som finns i din Fiddler-testmiljö.
Slutsats
Det här inlägget belyste behovet av företagsklass modellövervakning och visade hur du kan integrera dina modeller distribuerade i SageMaker med Fiddler Model Performance Management Plattform på bara några få steg. Fiddler erbjuder funktionalitet för modellövervakning, förklarlig AI, bias-detektion och rotorsaksanalys, och är tillgänglig på AWS Marketplace. Genom att tillhandahålla din MLOps samarbeta med en enkel glasruta som är lätt att använda för att säkerställa att dina modeller beter sig som förväntat och för att identifiera de bakomliggande orsakerna till prestandaförsämring, kan Fiddler hjälpa till att förbättra dataforskarnas produktivitet och minska tiden för att upptäcka och lösa problem.
Om du vill lära dig mer om Fiddler besök gärna fiddler.ai eller om du föredrar att skapa en personlig demo och teknisk diskussion via e-post sales@fiddler.ai.
Om författarna
Danny Brock är Sr Solutions Engineer på Fiddler AI. Danny har länge varit anställd inom analys- och ML-området och driver försäljnings- och efterförsäljningsteam för startups som Endeca och Incorta. Han grundade sitt eget konsultföretag för stordataanalys, Branchbird, 2012.
Rajeev Govindan är Sr Solutions Engineer på Fiddler AI. Rajeev har lång erfarenhet av försäljningsteknik och mjukvaruutveckling på flera företag, inklusive AppDynamics.
Krishnaram Kenthapadi är chefsforskare för Fiddler AI. Tidigare var han huvudforskare på Amazon AWS AI, där han ledde initiativen för rättvisa, förklarabarhet, integritet och modellförståelse i Amazon AI-plattformen, och innan dess hade han roller på LinkedIn AI och Microsoft Research. Krishnaram tog sin doktorsexamen i datavetenskap från Stanford University 2006.
- AI
- ai konst
- ai art generator
- har robot
- Amazon SageMaker
- artificiell intelligens
- artificiell intelligenscertifiering
- artificiell intelligens inom bankväsendet
- artificiell intelligens robot
- robotar med artificiell intelligens
- programvara för artificiell intelligens
- AWS maskininlärning
- AWS Marketplace
- blockchain
- blockchain konferens ai
- coingenius
- konversationskonstnärlig intelligens
- kryptokonferens ai
- dalls
- djupt lärande
- du har google
- maskininlärning
- plato
- plato ai
- Platon Data Intelligence
- Platon spel
- PlatonData
- platogaming
- skala ai
- syntax
- zephyrnet