Introductie van hybride machine learning

Bronknooppunt: 1575227

Gartner voorspelt dat tegen het einde van 2024 75% van de bedrijven zal overstappen van pilots naar het operationeel maken van kunstmatige intelligentie (AI), en dat de overgrote meerderheid van de werklasten op de lange termijn in de cloud zal belanden. Voor sommige ondernemingen die van plan zijn naar de cloud te migreren, kunnen de complexiteit, omvang en duur van migraties ontmoedigend zijn. De snelheid van verschillende teams en hun honger naar nieuwe tools kunnen dramatisch variëren. Het data science-team van een onderneming wil misschien graag de nieuwste cloudtechnologie adopteren, terwijl het applicatieontwikkelingsteam zich richt op het lokaal draaien van hun webapplicaties. Zelfs met een meerjarig cloudmigratieplan moeten sommige productreleases in de cloud worden gebouwd om aan de bedrijfsresultaten van de onderneming te kunnen voldoen.

Voor deze klanten stellen wij hybride machine learning (ML)-patronen voor als tussenstap in uw reis naar de cloud. Hybride ML-patronen zijn patronen waarbij minimaal twee computeromgevingen betrokken zijn, meestal lokale computerbronnen zoals persoonlijke laptops of bedrijfsdatacenters, en de cloud. Met de hybride ML-architectuurpatronen die in dit bericht worden beschreven, kunnen ondernemingen hun gewenste bedrijfsdoelen bereiken zonder te hoeven wachten tot de cloudmigratie is voltooid. Uiteindelijk willen we het succes van onze klanten in alle vormen en vormen ondersteunen.

We hebben een nieuwe whitepaper gepubliceerd, Hybride machinaal leren, om u te helpen de cloud te integreren met de bestaande lokale ML-infrastructuur. Voor meer whitepapers van AWS, zie AWS-whitepapers en handleidingen.

Hybride ML-architectuurpatronen

De whitepaper geeft u een overzicht van de verschillende hybride ML-patronen gedurende de gehele ML-levenscyclus, inclusief de ontwikkeling van ML-modellen, gegevensvoorbereiding, training, implementatie en doorlopend beheer. De volgende tabel vat de acht verschillende hybride ML-architectuurpatronen samen die we in de whitepaper bespreken. Voor elk patroon bieden we naast de voor- en nadelen een voorlopige referentiearchitectuur. We identificeren ook een ‘wanneer te verhuizen’-criterium om u te helpen beslissingen te nemen, bijvoorbeeld wanneer de inspanning om een ​​bepaald patroon in stand te houden en te schalen de waarde ervan heeft overschreden.

Ontwikkeling Trainingen Deployment
Ontwikkel op personal computers, train en host in de cloud Lokaal trainen, implementeren in de cloud Lever ML-modellen in de cloud aan applicaties die op locatie worden gehost
Ontwikkel op lokale servers, train en host in de cloud Sla gegevens lokaal op, train en implementeer in de cloud Host ML-modellen met Lambda@Edge naar applicaties op locatie
Ontwikkel in de cloud terwijl u verbinding maakt met gegevens die op locatie worden gehost Train met een externe SaaS-provider om in de cloud te hosten
Train in de cloud, implementeer ML-modellen op locatie Orchestreer hybride ML-workloads met Kubeflow en Amazon EKS Anywhere

In dit bericht duiken we diep in het hybride architectuurpatroon voor implementatie, met een focus op het aanbieden van modellen die in de cloud worden gehost aan applicaties die op locatie worden gehost.

Architectuur overzicht

De meest voorkomende use case voor dit hybride patroon zijn bedrijfsmigraties. Uw data science-team is misschien klaar om te implementeren in de cloud, maar uw applicatieteam is nog steeds bezig met het herstructureren van hun code om te hosten op cloud-native services. Deze aanpak stelt de datawetenschappers in staat hun nieuwste modellen op de markt te brengen, terwijl het applicatieteam afzonderlijk nadenkt over wanneer, waar en hoe de rest van de applicatie naar de cloud moet worden verplaatst.

Het volgende diagram toont de architectuur voor het hosten van een ML-model via Amazon Sage Maker in een AWS-regio, waar antwoorden worden gegeven op verzoeken van applicaties die op locatie worden gehost.

Hybride ML

Technische diepe duik

In deze sectie duiken we diep in de technische architectuur en concentreren we ons op de verschillende componenten die expliciet de hybride werklast omvatten en verwijzen we waar nodig naar bronnen elders.

Laten we een praktijkvoorbeeld nemen van een detailhandelsbedrijf waarvan het applicatieontwikkelingsteam hun e-commerce webapplicatie op locatie heeft gehost. Het bedrijf wil de merkloyaliteit verbeteren, de verkoop en omzet laten groeien en de efficiëntie verhogen door data te gebruiken om meer geavanceerde en unieke klantervaringen te creëren. Ze zijn van plan de klantbetrokkenheid met 50% te vergroten door een ‘aanbevolen voor jou’-widget op hun startscherm toe te voegen. Ze hebben echter moeite om gepersonaliseerde ervaringen te bieden vanwege de beperkingen van statische, op regels gebaseerde systemen, complexiteit en kosten, en wrijving met platformintegratie vanwege hun huidige, verouderde, on-premises architectuur.

Het applicatieteam heeft een vijfjarige bedrijfsmigratiestrategie om hun webapplicatie te herstructureren met behulp van cloud-native architectuur om naar de cloud te verhuizen, terwijl de data science-teams klaar zijn om te beginnen met de implementatie in de cloud. Met het hybride architectuurpatroon dat in dit bericht wordt beschreven, kan het bedrijf snel het gewenste bedrijfsresultaat bereiken zonder te hoeven wachten tot de vijfjarige bedrijfsmigratie is voltooid.

De datawetenschappers ontwikkelen het ML-model, voeren training uit en implementeren het getrainde model in de cloud. De e-commerce-webtoepassing die op locatie wordt gehost, gebruikt het ML-model via de blootgestelde eindpunten. Laten we dit in detail doornemen.

In de modelontwikkelingsfase kunnen datawetenschappers lokale ontwikkelomgevingen gebruiken, zoals PyCharm- of Jupyter-installaties op hun pc, en vervolgens verbinding maken met de cloud via AWS Identiteits- en toegangsbeheer (IAM)-machtigingen en interface met AWS-service-API's via de AWS-opdrachtregelinterface (AWS CLI) of een AWS SDK (zoals Boto3). Ze hebben ook de flexibiliteit om te gebruiken Amazon SageMaker Studio, een enkele webgebaseerde visuele interface die wordt geleverd met algemene data science-pakketten en kernels die vooraf zijn geïnstalleerd voor modelontwikkeling.

Datawetenschappers kunnen profiteren van de trainingsmogelijkheden van SageMaker, waaronder toegang tot on-demand CPU- en GPU-instanties, automatische modelafstemming, beheerde Spot-instanties, controlepunten voor het opslaan van de status van modellen, beheerde gedistribueerde training en nog veel meer, met behulp van de SageMaker-trainings-SDK en API's. Voor een overzicht van trainingsmodellen met SageMaker, zie Train een model met Amazon SageMaker.

Nadat het model is getraind, kunnen datawetenschappers de modellen implementeren met behulp van de hostingmogelijkheden van SageMaker en een REST HTTP(s)-eindpunt beschikbaar stellen dat voorspellingen doet om applicaties te beëindigen die op locatie worden gehost. De applicatieontwikkelingsteams kunnen hun on-premise applicaties integreren om te communiceren met het ML-model via door SageMaker gehoste eindpunten om de gevolgtrekkingsresultaten te verkrijgen. Applicatieontwikkelaars hebben toegang tot de geïmplementeerde modellen via API-verzoeken (Application Programming Interface) met responstijden van slechts enkele milliseconden. Dit ondersteunt gebruiksscenario's die realtime reacties vereisen, zoals gepersonaliseerde productaanbevelingen.

De clienttoepassing op locatie maakt verbinding met het ML-model dat wordt gehost op het door SageMaker gehoste eindpunt op AWS via een particulier netwerk met behulp van een VPN- of Direct Connect-verbinding, om gevolgtrekkingsresultaten aan de eindgebruikers te leveren. De clienttoepassing kan elke clientbibliotheek gebruiken om het eindpunt aan te roepen met behulp van een HTTP Post-verzoek, samen met de benodigde authenticatiereferenties die programmatisch zijn geconfigureerd en de verwachte payload. SageMaker heeft ook opdrachten en bibliotheken die enkele details op laag niveau abstraheren, zoals authenticatie met behulp van de AWS-inloggegevens die zijn opgeslagen in onze clientapplicatieomgeving, zoals de SageMaker invoke-eindpunt runtime-opdracht van de AWS CLI, SageMaker runtime-client van Boto3 (AWS SDK voor Python) en de Predictor-klasse van SageMaker Python-SDK.

Om het eindpunt via internet toegankelijk te maken, kunnen we gebruiken Amazon API-gateway. Hoewel u rechtstreeks toegang hebt tot door SageMaker gehoste eindpunten vanuit API Gateway, is een gebruikelijk patroon dat u kunt gebruiken het toevoegen van een AWS Lambda tussendoor functioneren. U kunt de Lambda-functie gebruiken voor elke voorverwerking, die nodig kan zijn om de aanvraag te verzenden in het formaat dat door het eindpunt wordt verwacht, of voor naverwerking om het antwoord om te zetten in het formaat dat door de clienttoepassing wordt vereist. Voor meer informatie, zie Een Amazon SageMaker-modeleindpunt aanroepen met Amazon API Gateway en AWS Lambda.

De clienttoepassing op locatie maakt verbinding met ML-modellen die worden gehost op SageMaker op AWS via een particulier netwerk met behulp van een VPN- of Direct Connect-verbinding, om gevolgtrekkingsresultaten aan de eindgebruikers te leveren.

Het volgende diagram illustreert hoe het data science-team het ML-model ontwikkelt, training uitvoert en het getrainde model in de cloud implementeert, terwijl het applicatieontwikkelingsteam de e-commerce-webapplicatie op locatie ontwikkelt en implementeert.

Architectuur diepe duik

Nadat het model in de productieomgeving is geïmplementeerd, kunnen uw datawetenschappers er gebruik van maken Amazon SageMaker-modelmonitor om de kwaliteit van de ML-modellen continu in realtime te monitoren. Ze kunnen ook een geautomatiseerd waarschuwingssysteem opzetten wanneer er afwijkingen in de modelkwaliteit optreden, zoals datadrift en afwijkingen. Amazon CloudWatch-logboeken verzamelt logbestanden die de modelstatus monitoren en waarschuwt u wanneer de kwaliteit van het model bepaalde drempels bereikt. Hierdoor kunnen uw datawetenschappers corrigerende maatregelen nemen, zoals het opnieuw trainen van modellen, het controleren van upstream-systemen of het oplossen van kwaliteitsproblemen zonder dat ze de modellen handmatig hoeven te monitoren. Met AWS Managed Services kan uw datawetenschapsteam de nadelen vermijden van het helemaal opnieuw implementeren van monitoringoplossingen.

Uw datawetenschappers kunnen de totale tijd die nodig is om hun ML-modellen in productie te implementeren, verkorten door het testen van de belasting en het afstemmen van modellen voor SageMaker ML-instanties te automatiseren met behulp van Amazon SageMaker Inferentie-aanbeveler. Het helpt uw ​​datawetenschappers bij het selecteren van het beste exemplaartype en de beste configuratie (zoals het aantal exemplaren, containerparameters en modeloptimalisaties) voor hun ML-modellen.

Ten slotte is het altijd een best practice om het hosten van uw ML-model los te koppelen van het hosten van uw applicatie. Bij deze aanpak gebruiken de datawetenschappers speciale bronnen om hun ML-model te hosten, met name bronnen die gescheiden zijn van de applicatie, wat het proces om betere modellen te pushen aanzienlijk vereenvoudigt. Dit is een belangrijke stap in het innovatievliegwiel. Dit voorkomt ook elke vorm van nauwe koppeling tussen het gehoste ML-model en de applicatie, waardoor het model zeer performant kan zijn.

Naast het verbeteren van de modelprestaties met bijgewerkte onderzoekstrends, biedt deze aanpak de mogelijkheid om een ​​model opnieuw in te zetten met bijgewerkte gegevens. De wereldwijde COVID-19-pandemie heeft de realiteit aangetoond dat markten voortdurend veranderen en dat het ML-model op de hoogte moet blijven van de nieuwste trends. De enige manier waarop u aan deze eis kunt voldoen, is door uw model opnieuw te trainen en opnieuw te implementeren met bijgewerkte gegevens.

Conclusie

Bekijk het whitepaper Hybride machinaal leren, waarin we kijken naar aanvullende patronen voor het hosten van ML-modellen via Lambda@Edge, AWS-buitenposten, Lokale AWS-zones en AWS-golflengte. We verkennen hybride ML-patronen gedurende de gehele ML-levenscyclus. We kijken naar lokale ontwikkeling, terwijl we trainen en implementeren in de cloud. We bespreken patronen voor lokale training om in de cloud te implementeren, en zelfs om ML-modellen in de cloud te hosten om applicaties op locatie te bedienen.

Hoe integreert u de cloud met uw bestaande lokale ML-infrastructuur? Deel uw feedback over hybride ML in de opmerkingen, zodat we onze producten, functies en documentatie kunnen blijven verbeteren. Als u de auteurs van dit document wilt inschakelen voor advies over uw cloudmigratie, kunt u contact met ons opnemen via hybrid-ml-support@amazon.com.


Over de auteurs

Alak Eswaradass is een Solutions Architect bij AWS, gevestigd in Chicago, Illinois. Ze heeft een passie voor het helpen van klanten bij het ontwerpen van cloud-architecturen met behulp van AWS-services om zakelijke uitdagingen op te lossen. Ze trekt rond met haar dochters en verkent in haar vrije tijd de natuur.

Emily Webber kwam bij AWS net na de lancering van SageMaker en probeert sindsdien de wereld erover te vertellen! Naast het bouwen van nieuwe ML-ervaringen voor klanten, mediteert Emily graag en bestudeert ze het Tibetaans boeddhisme.

Roep Bains is een Solutions Architect bij AWS die zich richt op AI/ML. Hij heeft een passie voor machine learning en het helpen van klanten bij het bereiken van hun zakelijke doelstellingen. In zijn vrije tijd houdt hij van lezen en wandelen.

Bron: https://aws.amazon.com/blogs/machine-learning/introducing-hybrid-machine-learning/

Tijdstempel:

Meer van AWS Blog over machine learning