Det här inlägget är skrivet av Zdenko Estok, Cloud Architect på Accenture och Sakar Selimcan, DeepRacer SME på Accenture.
Med den ökande användningen av artificiell intelligens (AI) och maskininlärning (ML) för en stor majoritet av branscher (från sjukvård till försäkring, från tillverkning till marknadsföring), skiftar det primära fokuset till effektivitet när man bygger och tränar modeller i stor skala. Skapandet av en skalbar och problemfri datavetenskapsmiljö är nyckeln. Det kan ta avsevärd tid att starta och konfigurera en miljö som är skräddarsydd för ett specifikt användningsfall och ännu svårare för kollegor att samarbeta.
Enligt Accenture, kan företag som lyckas skala AI och ML effektivt uppnå nästan tredubbla avkastningen på sina investeringar. Ändå uppfyller inte alla företag sin förväntade avkastning på sin AI/ML-resa. Verktygssatser för att automatisera infrastrukturen blir avgörande för horisontell skalning av AI/ML-insatser inom ett företag.
AWS Deep Racer är ett enkelt och roligt sätt att komma igång med förstärkningsinlärning (RL), en ML-teknik där en agent upptäcker de optimala åtgärderna att vidta i en given miljö. I vårt fall skulle det vara ett AWS DeepRacer-fordon som försöker tävla snabbt runt en bana. Du kan komma igång med RL snabbt med praktiska handledningar som guidar dig genom grunderna för att träna RL-modeller och testa dem på ett spännande, autonom bilracingupplevelse.
Det här inlägget visar hur företag kan använda infrastruktur som kod (IaC) med AWS Cloud Development Kit (AWS CDK) för att påskynda skapandet och replikeringen av mycket överförbar infrastruktur och enkelt konkurrera om AWS DeepRacer-evenemang i stor skala.
"IaC i kombination med en hanterad Jupyter-miljö gav oss det bästa av två världar: repeterbara, mycket överförbara datavetenskapsmiljöer för oss att ta med våra AWS DeepRacer-konkurrenter för att fokusera på det de gör bäst: träna snabba modeller snabbt."
– Selimcan Sakar, AWS DeepRacer SME på Accenture.
Lösningsöversikt
Att organisera alla nödvändiga tjänster tar avsevärd tid när det gäller att skapa en skalbar mall som kan användas för flera användningsfall. Förr, AWS molnformation mallar har skapats för att automatisera skapandet av dessa tjänster. Med framstegen inom automatisering och konfigurering med ökande abstraktionsnivåer för att skapa olika miljöer med IaC-verktyg, används AWS CDK i stor utsträckning i olika företag. AWS CDK är ett ramverk för programvaruutveckling med öppen källkod för att definiera dina molnapplikationsresurser. Den använder programmeringsspråkens förtrogenhet och uttrycksfulla kraft för att modellera dina applikationer, samtidigt som resurser tillhandahålls på ett säkert och repeterbart sätt.
I det här inlägget möjliggör vi tillhandahållandet av olika komponenter som krävs för att utföra logganalys med hjälp av Amazon SageMaker på AWS DeepRacer via AWS CDK konstrukt.
Även om analysdiagrammet som finns i DeepRacer-konsolen är effektivt och okomplicerat när det gäller belöningar som beviljats och uppnådda framsteg, ger den ingen inblick i hur snabbt bilen rör sig genom waypoints, eller vilken typ av linje bilen föredrar runt banan. . Det är här avancerad logganalys kommer in i bilden. Vår avancerade logganalys syftar till att effektivisera träningen i efterhand för att förstå vilka belöningsfunktioner och handlingsutrymmen som fungerar bättre än de andra när man tränar flera modeller, och om en modell är överanpassad, så att förare kan träna smartare och uppnå bättre resultat med mindre träning.
Vår lösning beskriver en AWS DeepRacer-miljökonfiguration som använder AWS CDK för att påskynda resan för användare som experimenterar med SageMaker-logganalys och förstärkningsinlärning på AWS för en AWS DeepRacer-händelse.
En administratör kan köra AWS CDK-skriptet som tillhandahålls i GitHub repo via AWS Management Console eller i terminalen efter att ha laddat koden i sin miljö. Stegen är följande:
- Öppen AWS Cloud9 på konsolen.
- Ladda AWS CDK-modulen från GitHub till AWS Cloud9-miljön.
- Konfigurera AWS CDK-modulen enligt beskrivningen i det här inlägget.
- Öppna filen cdk.context.json och inspektera alla parametrar.
- Ändra parametrarna efter behov och kör AWS CDK-kommandot med den avsedda personan för att starta den konfigurerade miljön som lämpar sig för den personan.
Följande diagram illustrerar lösningsarkitekturen.
Med hjälp av AWS CDK kan vi versionskontrollera våra tillhandahållna resurser och ha en mycket transportabel miljö som överensstämmer med bästa praxis på företagsnivå.
Förutsättningar
För att tillhandahålla ML-miljöer med AWS CDK, fyll i följande förutsättningar:
- Ha tillgång till ett AWS-konto och behörigheter inom regionen för att distribuera nödvändiga resurser för olika personer. Se till att du har inloggningsuppgifterna och behörigheterna för att distribuera AWS CDK-stacken på ditt konto.
- Vi rekommenderar att du följer vissa bästa metoder som framhävs genom koncepten som beskrivs i följande resurser:
- Klona GitHub repo in i din miljö.
Distribuera portföljen på ditt konto
I den här implementeringen använder vi AWS Cloud9 för att skapa en datavetenskaplig miljö med hjälp av AWS CDK.
- Navigera till AWS Cloud9-konsolen.
- Ange din miljötyp, instanstyp och plattform.
- Ange din AWS identitets- och åtkomsthantering (IAM) roll, VPC och subnät.
- Skapa en ny mapp som heter DeepRacer i din AWS Cloud9-miljö.
- Kör följande kommando för att installera AWS CDK och se till att du har rätt beroenden för att distribuera portföljen:
- För att verifiera att AWS CDK har installerats och för att komma åt dokumenten, kör följande kommando i din terminal (det bör omdirigera dig till AWS CDK-dokumentationen):
- Nu kan vi klona AWS DeepRacer-förvaret från GitHub.
- Öppna det klonade repet i AWS Cloud9:
När du har granskat innehållet i DeepRacer_cdk
katalog kommer det att finnas en fil som heter package.json
med alla nödvändiga moduler och beroenden definierade. Det är här du kan definiera dina resurser i en modul.
- Installera sedan alla nödvändiga moduler och beroenden för AWS CDK-appen:
Detta kommer att syntetisera motsvarande CloudFormation-mall.
- För att köra distributionen, ändra antingen filen context.json med parameternamn eller definiera dem explicit under körning:
Följande komponenter skapas för AWS DeepRacer-logganalys baserat på att köra skriptet:
- An IAM-roll för SageMaker-anteckningsboken med en hanterad policy
- A SageMaker anteckningsbok instans med instanstypen antingen uttryckligen tillagd som en cdk-kontextparameter eller standardvärde lagrat i filen context.json
- En VPC med CIDR som specificerats i filen context.json tillsammans med fyra offentliga undernät konfigurerade
- En ny säkerhetsgrupp för Sagemaker notebook-instansen som tillåter kommunikation inom VPC
- En SageMaker-livscykelpolicy med ett bash-skript som förladdar innehållet i en annan GitHub repository, som innehåller filerna vi använder för att köra logganalysen på AWS DeepRacer-modellerna
- Du kan köra AWS CDK-stacken enligt följande:
- Gå till AWS CloudFormation-konsolen i regionen där stacken är utplacerad för att verifiera resurserna.
Nu kan användare börja använda dessa tjänster för att arbeta med logganalys och djup RL-modellutbildning på SageMaker för AWS DeepRacer.
Modultestning
Du kan även köra vissa enhetstester innan du distribuerar stacken för att verifiera att du av misstag inte tog bort några nödvändiga resurser. Enhetstesterna finns i DeepRacer/test/deep_racer.test.ts
och kan köras med följande kod:
Generera diagram med cdk-dia
Utför följande steg för att skapa diagram:
- installera
graphviz
med hjälp av ditt operativsystems verktyg:
Detta installerar cdk-dia-applikationen.
- Kör nu följande kod:
En grafisk representation av din AWS CDK-stack kommer att lagras i .png-format.
När du har kört de föregående stegen bör du se att du kan se skapandet av anteckningsbokförekomsten med status Avvaktan. När statusen för anteckningsbokförekomsten är I tjänst (som visas i följande skärmdump), kan du fortsätta med nästa steg.
- Välja Öppna Jupyter för att börja köra Python-skriptet för att utföra logganalysen.
För ytterligare information om logganalys med AWS DeepRacer och tillhörande visualiseringar, se Använder logganalys för att driva experiment och vinna AWS DeepRacer F1 ProAm Race.
Städa upp
Utför följande steg för att undvika pågående avgifter:
- Använd cdk destroy för att ta bort resurserna som skapats via AWS CDK.
- Ta bort CloudFormation-stacken på AWS CloudFormation-konsolen.
Slutsats
AWS DeepRacer-evenemang är ett bra sätt att öka intresset och öka ML-kunskapen över alla pelare och nivåer i en organisation. I det här inlägget delade vi hur du kan konfigurera en dynamisk AWS DeepRacer-miljö och ställa in selektiva tjänster för att påskynda användarnas resa på AWS-plattformen. Vi diskuterade hur man skapar tjänster Amazon SageMaker Notebook Instance, IAM-roller, SageMaker notebook-livscykelkonfiguration med bästa praxis, en VPC och Amazon Elastic Compute Cloud (Amazon EC2) instanser baserade på att identifiera sammanhanget med AWS CDK och skalning för olika användare med AWS DeepRacer.
Konfigurera CDK-miljön och kör den avancerade anteckningsboken för logganalys för att göra modulen effektivare. Hjälp åkare att uppnå bättre resultat på kortare tid och få detaljerade insikter om belöningsfunktioner och åtgärder.
Referensprojekt
Mer information finns på följande resurser:
Om författarna
Zdenko Estok arbetar som molnarkitekt och DevOps-ingenjör på Accenture. Han arbetar med AABG för att utveckla och implementera innovativa molnlösningar, och är specialiserad på infrastruktur som kod- och molnsäkerhet. Zdenko gillar att cykla till kontoret och tycker om trevliga promenader i naturen.
Selimcan "Can" Sakar är en molnförst utvecklare och lösningsarkitekt på Accenture med fokus på artificiell intelligens och en passion för att se modeller konvergera.
Shikhar Kwatra är en AI/ML-specialistlösningsarkitekt på Amazon Web Services och arbetar med en ledande global systemintegratör. Shikhar hjälper till med att utforma, bygga och underhålla kostnadseffektiva, skalbara molnmiljöer för organisationen och stödjer GSI-partnern i att bygga strategiska industrilösningar på AWS. Shikhar tycker om att spela gitarr, komponera musik och träna mindfulness på fritiden.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- Platoblockchain. Web3 Metaverse Intelligence. Kunskap förstärkt. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/configure-an-aws-deepracer-environment-for-training-and-log-analysis-using-the-aws-cdk/
- 10
- 100
- 11
- 7
- 9
- a
- Able
- accelerera
- Accenture
- tillgång
- av misstag
- Konto
- Uppnå
- uppnås
- tvärs
- Handling
- åtgärder
- lagt till
- Annat
- antagen
- avancerat
- framsteg
- Efter
- Recensioner
- AI
- AI / ML
- AIDS
- Syftet
- Alla
- tillåta
- amason
- Amazon EC2
- Amazon SageMaker
- Amazon SageMaker Studio
- Amazon Web Services
- mängd
- analys
- och
- Annan
- api
- app
- Ansökan
- tillämpningar
- tillämpas
- arkitektur
- runt
- konstgjord
- artificiell intelligens
- Konstgjord intelligens (AI)
- bistå
- associerad
- automatisera
- Automation
- tillgänglig
- AWS
- AWS Cloud9
- AWS molnformation
- AWS Deep Racer
- baserat
- bash
- Grunderna
- blir
- innan
- Där vi får lov att vara utan att konstant prestera,
- BÄST
- bästa praxis
- Bättre
- föra
- Byggnad
- kallas
- Kan få
- bil
- Vid
- fall
- vissa
- byta
- avgifter
- cloud
- Cloud Security
- Cloud9
- koda
- samarbeta
- kollegor
- kombinerad
- Kommunikation
- Företag
- konkurrera
- konkurrenter
- fullborda
- komponenter
- Compute
- Begreppen
- konfiguration
- betydande
- Konsol
- innehåller
- innehåll
- sammanhang
- kontroll
- konvergerar
- FÖRETAG
- Motsvarande
- skapa
- skapas
- Skapa
- skapande
- referenser
- datum
- datavetenskap
- djup
- Standard
- definierade
- distribuera
- utplacerade
- utplacera
- utplacering
- beskriven
- förstöra
- detaljerad
- detaljer
- utveckla
- Utvecklare
- Utveckling
- diagrammen
- olika
- upptäcker
- diskuteras
- dokumentation
- inte
- driv
- under
- dynamisk
- lätt
- Effektiv
- effektivitet
- effektivt
- ansträngningar
- antingen
- möjliggöra
- ingenjör
- företagsnivå
- företag
- Miljö
- miljöer
- väsentlig
- Även
- händelse
- händelser
- spännande
- förväntat
- uttrycksfull
- f1
- Förtrogenhet
- SNABB
- Fil
- Filer
- Förnamn
- Fokus
- efter
- följer
- format
- Ramverk
- från
- kul
- funktioner
- Få
- generera
- skaffa sig
- GitHub
- Ge
- ges
- Välgörenhet
- beviljats
- diagram
- stor
- Grupp
- styra
- praktisk
- hälso-och sjukvård
- hjälpa
- Markerad
- höggradigt
- Horisontell
- Hur ser din drömresa ut
- How To
- html
- HTTPS
- identifiera
- Identitet
- genomföra
- in
- Öka
- ökande
- industrier
- industrin
- informationen
- Infrastruktur
- innovativa
- insikt
- insikter
- installera
- installerad
- exempel
- försäkring
- Intelligens
- intresse
- Investeringar
- IT
- resa
- json
- Nyckel
- Snäll
- kunskap
- Språk
- lansera
- ledande
- inlärning
- nivåer
- linje
- läser in
- belägen
- Maskinen
- maskininlärning
- Majoritet
- göra
- hantera
- förvaltade
- ledning
- sätt
- Produktion
- Marknadsföring
- Möt
- Mindfulness
- ML
- modell
- modeller
- Modulerna
- Moduler
- förflyttar
- multipel
- Musik
- namn
- Natur
- nästan
- nödvändigt för
- Nya
- Nästa
- anteckningsbok
- Office
- Ombord
- pågående
- öppen källkod
- Programvara med öppen källkod
- drift
- operativsystem
- optimala
- beställa
- organisation
- Övrigt
- parameter
- parametrar
- partnern
- brinner
- Tidigare
- utför
- behörigheter
- plattform
- plato
- Platon Data Intelligence
- PlatonData
- Spela
- i
- policy
- portfölj
- Inlägg
- kraft
- praxis
- förutsättningar
- primär
- process
- Programmering
- programmeringsspråk
- Framsteg
- förutsatt
- tillhandahållande
- allmän
- Python
- snabbt
- Lopp
- åkare
- Racing
- höja
- som sträcker sig
- rekommenderar
- dirigera om
- om
- region
- ta bort
- repeterbar
- replikation
- Repository
- representation
- Obligatorisk
- Resurser
- Resultat
- avkastning
- återgår
- översyn
- Belöna
- Belöningar
- Roll
- roller
- Körning
- rinnande
- säker
- sagemaker
- skalbar
- Skala
- skala ai
- skalning
- Vetenskap
- säkerhet
- selektiv
- Tjänster
- in
- inställning
- delas
- Skift
- skall
- visas
- Visar
- Enkelt
- smartare
- EMS
- So
- Mjukvara
- mjukvaruutveckling
- lösning
- Lösningar
- några
- utrymmen
- specialist
- specialiserat
- specifik
- specificerade
- stapel
- starta
- igång
- status
- Steg
- Fortfarande
- lagras
- okomplicerad
- Strategisk
- studio
- undernät
- subnät
- Stöder
- system
- skräddarsydd
- Ta
- tar
- mall
- mallar
- terminal
- testa
- tester
- Smakämnen
- Grunderna
- deras
- Genom
- tid
- till
- verktyg
- spår
- Tåg
- Utbildning
- Trippel
- självstudiekurser
- förstå
- enhet
- us
- användning
- användningsfall
- användare
- värde
- olika
- Omfattande
- vehikel
- verifiera
- version
- via
- tittar
- webb
- webbservice
- Vad
- om
- som
- medan
- brett
- kommer
- vinna
- inom
- Arbete
- arbetssätt
- fungerar
- Världens
- skulle
- Om er
- Din
- zephyrnet