Configurer un environnement AWS DeepRacer pour la formation et l'analyse des journaux à l'aide d'AWS CDK

Cet article a été co-écrit par Zdenko Estok, Cloud Engineer chez Accenture et Sakar Selimcan, DeepRacer SME chez Accenture.

Avec l’utilisation croissante de l’intelligence artificielle (IA) et de l’apprentissage automatique (ML) dans la grande majorité des secteurs (de la santé à l’assurance, de la fabrication au marketing), l’objectif principal est de passer à l’efficacité lors de la création de modèles et de la formation à grande échelle. La création d’un environnement de science des données évolutif et sans tracas est essentielle. Il peut être long de lancer et de configurer un environnement conçu pour un cas d’utilisation spécifique, et même difficile d’impliquer des collègues dans une collaboration.

Selon Accenture, les entreprises qui parviennent à faire évoluer efficacement l’IA et l’apprentissage automatique peuvent générer près de trois fois le retour sur investissement. Cependant, toutes les entreprises n’obtiennent pas les rendements escomptés sur le parcours IA/ML. Les boîtes à outils d’automatisation de l’infrastructure deviennent essentielles pour la mise à l’échelle horizontale des efforts d’IA/ML au sein d’une entreprise.

AWS DeepRacer est un moyen simple et amusant de démarrer l’apprentissage par renforcement (RL), une technologie d’apprentissage automatique dans laquelle un agent découvre les actions optimales à entreprendre dans un environnement donné. Dans notre cas, il s’agirait d’un véhicule AWS DeepRacer essayant de courir rapidement sur une piste. Démarrez rapidement avec RL grâce à des didacticiels pratiques qui vous guident à travers les bases de la formation et du test des modèles RL dans une expérience de course passionnante et autonome.

Cet article montre comment les entreprises peuvent utiliser Infrastructure as Code (IaC) avec AWS Cloud Development Kit (AWS CDK) pour accélérer considérablement la création et l’itération d’infrastructures évolutives et concourir facilement pour les événements AWS DeepRacer à grande échelle.

« IaC combiné à un environnement Jupyter géré nous a donné le meilleur des deux mondes : des environnements de science des données hautement reproductibles et évolutifs afin que nous puissions préparer les concurrents d’AWS DeepRacer à se concentrer sur ce qu’ils font le mieux : former rapidement des modèles agiles.

– Selimkan Sakar, PME AWS DeepRacer chez Accenture

Vue d’ensemble de la solution

Il faut beaucoup de temps pour organiser tous les services nécessaires lorsqu’il s’agit de créer un modèle évolutif pouvant être appliqué à plusieurs cas d’utilisation. Dans le passé, des modèles AWS CloudFormation étaient créés pour automatiser la création de ces services. Avec les progrès de l’automatisation et de la configuration avec des niveaux d’abstraction croissants pour la configuration de différents environnements avec des outils IaC, AWS CDK est largement adopté dans de nombreuses organisations. AWS CDK est une infrastructure de développement logiciel open source permettant de définir des ressources pour vos applications cloud. Il utilise la familiarité et la puissance expressive des langages de programmation pour modéliser vos applications, tout en fournissant des ressources de manière sûre et reproductible.

Dans cet article, nous activons le provisionnement des différents composants requis pour effectuer l’analyse des journaux avec Amazon SageMaker sur AWS DeepRacer via les installations AWS CDK.

Bien que le graphique d’analyse fourni dans la console DeepRacer soit efficace et simple en termes de récompenses attribuées et de progrès réalisés, il ne donne pas une idée de la vitesse à laquelle la voiture se déplace à travers les points de piste, ni du type de ligne que la voiture préfère autour du piste. C’est là que l’analyse avancée des journaux entre en jeu. Notre analyse avancée des journaux vise une formation rétrospective aux compétences pour comprendre quelles fonctions de récompense et quels espaces de travail fonctionnent mieux que d’autres lors de la formation de plusieurs modèles, et si le modèle est surajusté, afin que les participants puissent s’entraîner plus intelligemment et obtenir de meilleurs résultats avec moins de formation. .

Notre solution décrit la configuration d’un environnement AWS DeepRacer à l’aide d’AWS CDK pour accélérer le parcours des utilisateurs qui font l’expérience de l’analyse des journaux SageMaker et de l’apprentissage par renforcement sur AWS pour un événement AWS DeepRacer.

Un administrateur peut exécuter le script AWS CDK fourni dans le référentiel GitHub via AWS Management Console ou dans un terminal après avoir téléchargé le code dans son environnement. Les étapes sont les suivantes:

  1. Ouvrez AWS Cloud9 sur la console.
  2. Chargez le module AWS CDK depuis GitHub dans un environnement AWS Cloud9.
  3. Configurez le module AWS CDK comme décrit dans cet article.
  4. Ouvrez le fichier cdk.context.json et vérifiez tous les paramètres.
  5. Modifiez les paramètres selon vos besoins et exécutez une commande AWS CDK avec la personne prévue pour lancer l’environnement configuré approprié pour cette personne.

Le schéma suivant montre l’architecture de la solution.

cdk-arc

Avec l’aide d’AWS CDK, nous contrôlons nos versions disponibles et disposons d’un environnement très portable qui s’aligne sur les meilleures pratiques à l’échelle de l’entreprise.

Exigences de base

Pour provisionner des environnements ML à l’aide d’AWS CDK, remplissez les conditions préalables suivantes :

  1. Vous avez accès au compte AWS et aux autorisations au sein de la région pour publier les ressources nécessaires pour différentes personnes. Assurez-vous que vous disposez des informations d’identification et des autorisations pour déployer la pile AWS CDK sur votre compte.
  2. Nous vous recommandons de suivre les meilleures pratiques spécifiques mises en évidence dans les concepts détaillés dans les ressources suivantes :
  3. Clonez le référentiel GitHub dans votre environnement.

Publiez le portefeuille sur votre compte

Dans cette publication, nous utilisons AWS Cloud9 pour créer un environnement de science des données à l’aide d’AWS CDK.

  1. Accédez à la console AWS Cloud9.
  2. Sélectionnez le type d’environnement, le type d’instance et la plate-forme.

  1. Définissez le rôle, le VPC et le sous-réseau AWS Identity and Access Management (IAM).

  1. Dans votre environnement AWS Cloud9, créez un nouveau dossier appelé DeepRacer.
  2. Exécutez la commande suivante pour installer AWS CDK et assurez-vous que vous disposez des bonnes dépendances pour déployer le presse-papiers :
  1. Pour vérifier que l’AWS CDK est installé et accéder à la documentation, exécutez la commande suivante dans le terminal (elle devrait vous rediriger vers la documentation AWS CDK) :
  1. Nous pouvons désormais cloner le référentiel AWS DeepRacer à partir de GitHub.
  2. Ouvrez le référentiel cloné dans AWS Cloud9 :

Après avoir examiné le contenu de DeepRacer_cdk répertoire, il y aura un fichier appelé package.json Avec tous les modules et dépendances requis spécifiés. C’est ici que vous définissez vos ressources dans un module.

  1. Ensuite, installez tous les modules et dépendances requis pour votre application AWS CDK :

Cela compilera le modèle CloudFormation correspondant.

  1. Pour exécuter le déploiement, modifiez le fichier context.json avec les noms des paramètres ou spécifiez-les explicitement lors de l’exécution :

Les composants suivants de l’analyse des journaux AWS DeepRacer ont été créés sur la base de l’exécution du script :

  • Rôle IAM de bloc-notes SageMaker avec stratégie gérée
  • Une instance de bloc-notes SageMaker avec le type d’instance explicitement ajouté en tant que paramètre de contexte cdk ou une valeur par défaut stockée dans le fichier context.json
  • VPC avec CIDR tel que défini dans le fichier context.json avec quatre sous-réseaux publics configurés
  • Un nouveau groupe de sécurité pour une instance de bloc-notes Sagemaker qui permet la communication au sein d’un VPC
  • Politique de cycle de vie SageMaker avec un script bash qui précharge le contenu d’un autre référentiel GitHub, qui contient les fichiers que nous utilisons pour exécuter l’analyse des journaux sur nos modèles AWS DeepRacer

  1. Vous pouvez exécuter la pile AWS CDK comme suit :
  1. Accédez à la console AWS CloudFormation dans la région où la pile est déployée pour vérifier les ressources.

Les utilisateurs peuvent désormais commencer à utiliser ces services pour travailler avec l’analyse des journaux et la formation approfondie du modèle RL sur SageMaker pour AWS DeepRacer.

Tests unitaires

Vous pouvez également exécuter des tests unitaires avant de déployer la pile pour vérifier que vous n’avez pas accidentellement supprimé les ressources requises. Les tests unitaires se trouvent dans DeepRacer/test/deep_racer.test.ts Il peut être exécuté avec le code suivant :

Créer des graphiques avec cdk-dia

Pour créer les graphiques, procédez comme suit :

  1. installer graphviz À l’aide des outils de votre système d’exploitation :

Cela installe l’application cdk-dia.

  1. Exécutez maintenant le code suivant :

Une représentation graphique de votre pile AWS CDK sera stockée au format .png.

Après avoir exécuté les étapes précédentes, vous devriez voir le processus de création d’instance de bloc-notes avec l’état en attente. Lorsque l’état de l’instance de bloc-notes à votre sérvice (Comme indiqué dans l’image suivante), vous pouvez procéder aux étapes suivantes.

  1. Il choisit Ouvrir Jupyter Pour démarrer un script Python pour effectuer l’analyse du journal.

Pour plus de détails sur l’analyse des journaux avec AWS DeepRacer et les visualisations associées, consultez Utilisation de l’analyse des journaux pour exécuter des essais et gagner la course AWS DeepRacer F1 ProAm.

nettoyage

Pour éviter les frais courants, procédez comme suit :

  1. Utilisez la destruction cdk pour supprimer les ressources créées via AWS CDK.
  2. Dans la console AWS CloudFormation, supprimez le package CloudFormation.

Conclusion

Les événements AWS DeepRacer sont un excellent moyen de susciter l’intérêt et d’accroître les connaissances sur le ML dans tous les piliers et niveaux de l’organisation. Dans cet article, nous avons expliqué comment vous pouvez configurer un environnement AWS DeepRacer dynamique et mettre en place des services sélectifs pour accélérer le parcours de vos utilisateurs sur la plate-forme AWS. Nous avons discuté de la création de services d’instance de bloc-notes Amazon SageMaker, des rôles IAM, de la configuration du cycle de vie du bloc-notes SageMaker avec les meilleures pratiques, des instances VPC, des instances Amazon Elastic Compute Cloud (Amazon EC2) basées sur la contextualisation à l’aide d’AWS CDK et de l’adaptation à différents utilisateurs à l’aide d’AWS DeepRacer.

Configurez l’environnement CDK et exécutez le bloc-notes d’analyse avancée des journaux pour plus d’efficacité dans le fonctionnement de l’unité. Aidez les coureurs à obtenir de meilleurs résultats en moins de temps et obtenez des informations précises sur les fonctions de récompense et les mouvements.

Les références

Plus d’informations sont disponibles dans les sources suivantes :

  1. Automatisez la configuration d’Amazon SageMaker Studio à l’aide d’AWS CDK
  2. Référence de l’API AWS SageMaker CDK

À propos des auteurs

Zdenko iStock Il travaille comme ingénieur cloud et ingénieur DevOps chez Accenture. Travaille avec AABG pour développer et mettre en œuvre des solutions cloud innovantes, spécialisées dans les infrastructures telles que le code et la sécurité cloud. Zdenko adore se rendre au bureau à vélo et profiter d’agréables promenades dans la nature.

Selimkan “Can” Sakar est le développeur cloud senior et l’architecte de solutions chez Accenture avec un accent sur l’IA et une passion pour regarder les modèles converger.

Shekhar Quatre est un architecte de solutions spécialisé en IA/apprentissage automatique chez Amazon Web Services, travaillant avec un intégrateur de systèmes mondial de premier plan. Shikhar aide à concevoir, créer et maintenir des environnements cloud rentables et évolutifs pour l’entreprise, et soutient le partenaire GSI dans la création de solutions industrielles stratégiques sur AWS. Shekhar aime jouer de la guitare, composer de la musique et pratiquer la pleine conscience pendant son temps libre.

Enregistrer un commentaire

Plus récente Plus ancienne

نموذج الاتصال