Zephyrnet-logo

Build, Share, Deploy: hoe bedrijfsanalisten en datawetenschappers een snellere time-to-market bereiken met behulp van no-code ML en Amazon SageMaker Canvas

Datum:

Machine learning (ML) helpt organisaties hun omzet te verhogen, bedrijfsgroei te stimuleren en kosten te verlagen door de kernfuncties van het bedrijf in meerdere branches te optimaliseren, zoals vraagprognoses, kredietscores, prijzen, het voorspellen van klantverloop, het identificeren van de volgende beste aanbiedingen, het voorspellen van late verzendingen en het verbeteren van de productiekwaliteit. Traditionele ML-ontwikkelingscycli duren maanden en vereisen schaarse vaardigheden op het gebied van datawetenschap en ML-engineering. De ideeën van analisten voor ML-modellen zitten vaak in lange achterstanden in afwachting van de bandbreedte van het datawetenschapsteam, terwijl datawetenschappers zich richten op complexere ML-projecten die hun volledige vaardigheden vereisen.

Om deze patstelling te helpen doorbreken, hebben we introduceerde Amazon SageMaker Canvas, een ML-oplossing zonder code die bedrijven kan helpen de levering van ML-oplossingen tot uren of dagen te versnellen. Met SageMaker Canvas kunnen analisten eenvoudig beschikbare gegevens gebruiken in datameren, datawarehouses en operationele datastores; ML-modellen bouwen; en gebruik ze om interactief voorspellingen te doen en voor batchscores op bulkdatasets - allemaal zonder een enkele regel code te schrijven.

In dit bericht laten we zien hoe SageMaker Canvas samenwerking tussen datawetenschappers en bedrijfsanalisten mogelijk maakt, een snellere time-to-market behaalt en de ontwikkeling van ML-oplossingen versnelt. Analisten krijgen hun eigen no-code ML-werkruimte in SageMaker Canvas, zonder dat ze een ML-expert hoeven te worden. Analisten kunnen vervolgens met een paar klikken hun modellen uit Canvas delen, waarmee datawetenschappers in kunnen werken Amazon SageMaker Studio, een end-to-end ML-geïntegreerde ontwikkelomgeving (IDE). Door samen te werken, kunnen bedrijfsanalisten hun domeinkennis en de resultaten van de experimenten inbrengen, terwijl datawetenschappers effectief pijplijnen kunnen creëren en het proces kunnen stroomlijnen.

Laten we dieper ingaan op hoe de workflow eruit zou zien.

Bedrijfsanalisten bouwen een model en delen het vervolgens

Om te begrijpen hoe SageMaker Canvas de samenwerking tussen bedrijfsanalisten en datawetenschappers (of ML-ingenieurs) vereenvoudigt, benaderen we het proces eerst als bedrijfsanalist. Raadpleeg voordat u begint: Aankondiging van Amazon SageMaker Canvas - een visuele, no-code machine learning-mogelijkheid voor bedrijfsanalisten voor instructies over het bouwen en testen van het model met SageMaker Canvas.

Voor dit bericht gebruiken we een aangepaste versie van de Gegevensset creditcardfraudedetectie van Kaggle, een bekende dataset voor een binair classificatieprobleem. De dataset is oorspronkelijk zeer onevenwichtig: er zijn maar heel weinig items die zijn geclassificeerd als een negatieve klasse (abnormale transacties). Ongeacht de doelfunctiedistributie kunnen we deze dataset nog steeds gebruiken, omdat SageMaker Canvas deze onbalans afhandelt omdat het een model automatisch traint en afstemt. Deze dataset bestaat uit ongeveer 9 miljoen cellen. Je kunt ook een downloaden beperkte versie van deze dataset. De grootte van de dataset is veel kleiner, rond de 500,000 cellen, omdat deze willekeurig is onderbemonsterd en vervolgens overbemonsterd met de SMOTE-techniek om ervoor te zorgen dat er tijdens dit proces zo min mogelijk informatie verloren gaat. Het uitvoeren van een volledig experiment met deze gereduceerde dataset kost u $ 0 onder de SageMaker Canvas Free Tier.

Nadat het model is gebouwd, kunnen analisten het gebruiken om rechtstreeks in Canvas voorspellingen te doen voor individuele verzoeken of voor een volledige invoerdataset in bulk.

Gebruik het getrainde model om voorspellingen te genereren

Modellen die zijn gebouwd met Canvas Standard Build kunnen ook eenvoudig met een klik op de knop worden gedeeld met datawetenschappers en ML-ingenieurs die SageMaker Studio gebruiken. Hierdoor kan een datawetenschapper de prestaties van het door u gebouwde model valideren en feedback geven. ML-ingenieurs kunnen uw model oppikken en integreren met bestaande workflows en producten die beschikbaar zijn voor uw bedrijf en uw klanten. Houd er rekening mee dat het op het moment van schrijven niet mogelijk is om een ​​model dat is gebouwd met Canvas Quick Build of een tijdreeksvoorspellingsmodel te delen.

Een model delen via de Canvas UI is eenvoudig:

  1. Kies een model op de pagina met de modellen die je hebt gemaakt.
  2. Kies Delen.Deel het getrainde model vanaf het tabblad Analyseren
  3. Kies een of meer versies van het model dat u wilt delen.
  4. Voeg eventueel een notitie toe met meer context over het model of de hulp die u zoekt.
  5. Kies SageMaker Studio-link maken.Deel het model met SageMaker Studio
  6. Kopieer de gegenereerde link.Kopieer de gegenereerde link

En dat is het! U kunt de link nu delen met uw collega's via Slack, e-mail of een andere methode van uw voorkeur. De datawetenschapper moet zich in hetzelfde SageMaker Studio-domein bevinden om toegang te krijgen tot uw model, dus zorg ervoor dat dit het geval is bij de beheerder van uw organisatie.

Deel het model door een Slack-bericht of een e-mail te sturen

Datawetenschappers hebben toegang tot de modelinformatie
van SageMaker Studio

Laten we nu de rol van datawetenschapper of ML-engineer spelen en de dingen vanuit hun oogpunt bekijken met SageMaker Studio.

De link die door de analist wordt gedeeld, brengt ons naar SageMaker Studio, de eerste cloudgebaseerde IDE voor de end-to-end ML-workflow.

Toon het modeloverzicht zoals te zien in SageMaker Studio

Het tabblad wordt automatisch geopend en toont een overzicht van het model dat door de analist in SageMaker Canvas is gemaakt. U kunt snel de naam van het model, het ML-probleemtype, de modelversie en welke gebruiker het model heeft gemaakt zien (onder het veld Canvas gebruikers-ID). U hebt ook toegang tot details over de invoergegevensset en het beste model dat SageMaker kon produceren. Daar gaan we later in de post op in.

Op de Invoergegevensset tabblad kunt u ook de gegevensstroom van de bron naar de invoergegevensset zien. In dit geval wordt slechts één gegevensbron gebruikt en zijn er geen join-bewerkingen toegepast, dus wordt één bron weergegeven. U kunt statistieken en details over de dataset analyseren door te kiezen voor Notitieboek voor gegevensverkenning openen. Met dit notitieblok kunt u de gegevens verkennen die beschikbaar waren voordat het model werd getraind, en bevat het een analyse van de doelvariabele, een voorbeeld van de invoergegevens, statistieken en beschrijvingen van kolommen en rijen, evenals andere nuttige informatie voor de gegevenswetenschapper om meer weten over de dataset. Voor meer informatie over dit rapport, zie: Gegevensverkenningsrapport.

Toon het modeloverzicht, met de afgeronde opdrachten en de opdrachtinformatie

Laten we na het analyseren van de invoerdataset naar het tweede tabblad van het modeloverzicht gaan, AutoML-taak. Dit tabblad bevat een beschrijving van de AutoML-taak toen u de optie Standard Build in SageMaker Canvas selecteerde.

De AutoML-technologie onder SageMaker Canvas elimineert het zware werk van het bouwen van ML-modellen. Het bouwt, traint en stemt automatisch het beste ML-model uit op basis van uw gegevens met behulp van een geautomatiseerde aanpak, terwijl u volledige controle en zichtbaarheid behoudt. Deze zichtbaarheid op de gegenereerde kandidaatmodellen en de hyperparameters die tijdens het AutoML-proces worden gebruikt, is opgenomen in de: kandidaat generatie notitieboek, die beschikbaar is op dit tabblad.

De AutoML-taak tabblad bevat ook een lijst van elk model dat is gebouwd als onderdeel van het AutoML-proces, gesorteerd op de F1-objectieve metriek. Om het beste model uit de gelanceerde trainingsbanen te markeren, wordt een tag met een groene cirkel gebruikt in de Beste model kolom. U kunt ook eenvoudig andere statistieken visualiseren die tijdens de trainings- en evaluatiefase worden gebruikt, zoals de nauwkeurigheidsscore en de Area Under the Curve (AUC). Voor meer informatie over de modellen die u kunt trainen tijdens een AutoML-taak en de meetwaarden die worden gebruikt voor het evalueren van de prestaties van het getrainde model, raadpleegt u Modelondersteuning, statistieken en validatie.

Voor meer informatie over het model, kunt u nu met de rechtermuisknop op het beste model klikken en kiezen Openen in modeldetails. Als alternatief kunt u kiezen voor de Beste model link bovenaan de Model overzicht sectie die u voor het eerst bezocht.

Modeldetails met functiebelangen en statistieken

De pagina met modeldetails bevat een overvloed aan nuttige informatie over het model dat het beste presteerde met deze invoergegevens. Laten we ons eerst concentreren op de samenvatting bovenaan de pagina. De schermafbeelding van het voorgaande voorbeeld laat zien dat van de honderden modeltrainingsruns een XGBoost-model het beste presteerde op de invoergegevensset. Op het moment van schrijven kan SageMaker Canvas drie soorten ML-algoritmen trainen: lineaire leerling, XGBoost en een meerlaagse perceptron (MLP), elk met een breed scala aan voorverwerkingspijplijnen en hyperparameters. Raadpleeg voor meer informatie over elk algoritme: pagina met ondersteunde algoritmen.

SageMaker bevat ook een verklarende functionaliteit dankzij een schaalbare en efficiënte implementatie van KernelSHAP, gebaseerd op het concept van een Shapley-waarde uit het veld van de coöperatieve speltheorie die aan elk kenmerk een belangrijkheidswaarde toekent voor een bepaalde voorspelling. Dit zorgt voor transparantie over hoe het model tot zijn voorspellingen is gekomen, en het is erg handig om het belang van een kenmerk te definiëren. Een volledig verklaarbaarheidsrapport inclusief functiebelang kan worden gedownload in PDF-, notebook- of onbewerkte gegevensindeling. In dat rapport wordt een bredere reeks statistieken weergegeven, evenals een volledige lijst met hyperparameters die tijdens de AutoML-taak worden gebruikt. Zie voor meer informatie over hoe SageMaker geïntegreerde verklaarbaarheidstools biedt voor AutoML-oplossingen en standaard ML-algoritmen: Gebruik geïntegreerde verklaarbaarheidstools en verbeter de modelkwaliteit met Amazon SageMaker Autopilot.

Ten slotte tonen de andere tabbladen in deze weergave informatie over prestatiedetails (verwarringsmatrix, precisie-oproepcurve, ROC-curve), artefacten die worden gebruikt voor invoer en gegenereerd tijdens de AutoML-taak, en netwerkdetails.

Op dit moment heeft de datawetenschapper twee keuzes: het model direct implementeren of een trainingspijplijn maken die handmatig of automatisch kan worden gepland of geactiveerd. De volgende secties bieden inzicht in beide opties.

Het model direct implementeren

Als de datawetenschapper tevreden is met de resultaten die zijn verkregen door de AutoML-taak, kunnen ze het model rechtstreeks vanuit de Modeldetails: bladzijde. Het is zo simpel als kiezen Model implementeren naast de modelnaam.

Aanvullende modeldetails, waar u het model kunt implementeren

SageMaker toont u twee opties voor implementatie: een realtime eindpunt, mogelijk gemaakt door Amazon SageMaker-eindpunten, en batchinferentie, mogelijk gemaakt door Amazon SageMaker-batchtransformatie.

Optie om voorspelling te starten vanuit AutoML

SageMaker biedt ook andere manieren van gevolgtrekking. Zie voor meer informatie Modellen voor gevolgtrekking implementeren.

Om de realtime voorspellingsmodus in te schakelen, geeft u het eindpunt eenvoudig een naam, een instantietype en een instantietelling. Omdat dit model geen zware rekenbronnen vereist, kunt u een op CPU gebaseerde instantie gebruiken met een aanvankelijke telling van 1. U kunt meer leren over de verschillende soorten beschikbare instanties en hun specificaties op de Amazon SageMaker-prijspagina (in de Prijzen op aanvraag sectie, kies het Realtime gevolgtrekking tabblad). Als u niet weet welke instantie u moet kiezen voor uw implementatie, kunt u SageMaker ook vragen om de beste voor u te vinden op basis van uw KPI's met behulp van de SageMaker Inferentie Aanbeveling. U kunt ook aanvullende optionele parameters opgeven, met betrekking tot het al dan niet vastleggen van aanvraag- en antwoordgegevens van of naar het eindpunt. Dit kan handig zijn als u van plan bent om uw model bewaken. U kunt ook kiezen welke inhoud u wilt geven als onderdeel van uw reactie, of het nu alleen de voorspelling of de voorspellingskans is, de waarschijnlijkheid van alle klassen en de doellabels.

Om een ​​batchscoretaak uit te voeren om voorspellingen te krijgen voor een hele set invoer in één keer, kunt u de batchtransformatietaak starten vanuit de AWS-beheerconsole of via de SageMaker Python SDK. Raadpleeg voor meer informatie over batchtransformatie: Batchtransformatie gebruiken en de voorbeeldnotitieboekjes.

Een trainingspijplijn definiëren

ML-modellen kunnen zelden of nooit als statisch en onveranderlijk worden beschouwd, omdat ze afwijken van de basislijn waarop ze zijn getraind. Gegevens uit de echte wereld evolueren in de loop van de tijd en er komen meer patronen en inzichten uit voort, die al dan niet worden vastgelegd door het oorspronkelijke model dat is getraind op historische gegevens. Om dit probleem op te lossen, kunt u een trainingspijplijn opzetten die uw modellen automatisch opnieuw traint met de nieuwste beschikbare gegevens.

Bij het definiëren van deze pijplijn is een van de opties van de datawetenschapper om opnieuw AutoML te gebruiken voor de trainingspijplijn. U kunt een AutoML-taak programmatisch starten door de API create_auto_ml_job() aan te roepen vanuit de AWS Boto3-SDK. U kunt deze bewerking aanroepen vanuit een AWS Lambda functie binnen een AWS Stap Functies workflow, of vanuit een LambdaStep in Amazon SageMaker-pijpleidingen.

Als alternatief kan de datawetenschapper de kennis, artefacten en hyperparameters gebruiken die zijn verkregen uit de AutoML-taak om een ​​complete trainingspijplijn te definiëren. Je hebt de volgende middelen nodig:

  • Het algoritme dat het beste werkte voor de use case – Je hebt deze informatie al verkregen uit de samenvatting van het door Canvas gegenereerde model. Voor dit gebruik is dit het ingebouwde algoritme van XGBoost. Raadpleeg voor instructies over het gebruik van de SageMaker Python SDK om het XGBoost-algoritme met SageMaker te trainen Gebruik XGBoost met de SageMaker Python SDK.
    Informatie over het algoritme dat is getraind met de Canvas-taak
  • De hyperparameters afgeleid door de AutoML-taak – Deze zijn verkrijgbaar in de Uitlegbaarheid sectie. U kunt ze gebruiken als invoer bij het definiëren van de trainingstaak met de SageMaker Python SDK.
    De modelhyperparameters
  • De feature-engineeringcode in de sectie Artefacten – U kunt deze code zowel gebruiken voor het voorbewerken van de gegevens vóór de training (bijvoorbeeld via Amazon SageMaker Processing) als voor de inferentie (bijvoorbeeld als onderdeel van een SageMaker-inferentiepijplijn).
    De S3-URI van de Feature Engineering Code

U kunt deze resources combineren als onderdeel van een SageMaker-pijplijn. We laten de implementatiedetails in dit bericht weg - houd ons in de gaten voor meer inhoud over dit onderwerp.

Conclusie

Met SageMaker Canvas kunt u ML gebruiken om voorspellingen te genereren zonder dat u code hoeft te schrijven. Een bedrijfsanalist kan het autonoom gaan gebruiken met lokale datasets, maar ook met gegevens die al zijn opgeslagen op Amazon eenvoudige opslagservice (Amazone S3), Amazon roodverschuiving, of Sn
owflake. Met slechts een paar klikken kunnen ze hun datasets voorbereiden en samenvoegen, geschatte nauwkeurigheid analyseren, controleren welke kolommen impact hebben, het best presterende model trainen en nieuwe individuele of batchvoorspellingen genereren, allemaal zonder dat ze een deskundige datawetenschapper nodig hebben. Vervolgens kunnen ze, indien nodig, het model delen met een team van datawetenschappers of MLOps-ingenieurs, die de modellen importeren in SageMaker Studio en samen met de analist werken aan het leveren van een productieoplossing.

Bedrijfsanalisten kunnen zelfstandig inzichten uit hun data halen zonder een diploma in ML te hebben en zonder ook maar één regel code te hoeven schrijven. Datawetenschappers hebben nu extra tijd om te werken aan uitdagendere projecten die hun uitgebreide kennis van AI en ML beter kunnen gebruiken.

Wij zijn van mening dat deze nieuwe samenwerking de deur opent naar het bouwen van veel krachtigere ML-oplossingen voor uw bedrijf. Je hebt nu analisten die waardevolle zakelijke inzichten produceren, terwijl datawetenschappers en ML-ingenieurs helpen bij het verfijnen, afstemmen en uitbreiden waar nodig.

Aanvullende informatiebronnen


Over de auteurs

David Gallitelli is Specialist Solutions Architect voor AI/ML in de EMEA-regio. Hij is gevestigd in Brussel en werkt nauw samen met klanten in de hele Benelux. Hij is een ontwikkelaar sinds hij heel jong was en begon te coderen op 7-jarige leeftijd. Hij begon AI/ML te leren op de universiteit en is er sindsdien verliefd op geworden.

Marc Roy is een Principal Machine Learning Architect voor AWS en helpt klanten bij het ontwerpen en bouwen van AI / ML-oplossingen. Marks werk omvat een breed scala aan ML-use-cases, met een primaire interesse in computervisie, deep learning en het schalen van ML binnen de onderneming. Hij heeft bedrijven in vele sectoren geholpen, waaronder verzekeringen, financiële dienstverlening, media en entertainment, gezondheidszorg, nutsbedrijven en productie. Mark heeft zes AWS-certificeringen, waaronder de ML Specialty-certificering. Voordat hij bij AWS kwam, was Mark meer dan 25 jaar architect, ontwikkelaar en technologieleider, waaronder 19 jaar in financiële dienstverlening.

spot_img

Laatste intelligentie

spot_img

Chat met ons

Hallo daar! Hoe kan ik u helpen?