Exemple de flux de travail RL utilisant Amazon SageMaker RL - Amazon SageMaker

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemple de flux de travail RL utilisant Amazon SageMaker RL

L'exemple suivant décrit les étapes de développement de modèles RL à l'aide d'Amazon SageMaker RL.

  1. Formuler le problème d'apprentissage par renforcement—Tout d'abord, formulez le problème métier dans un problème d'apprentissage par renforcement. Par exemple, la scalabilité automatique permet aux services d'augmenter ou de réduire la capacité de manière dynamique selon les conditions que vous définissez. Actuellement, cela exige la configuration des alarmes, la mise à l'échelle des stratégies et des seuils, ainsi que d'autres étapes manuelles. Pour résoudre cela avec l'apprentissage à renforcement, nous définissons les composantes du processus de décision markovien :

    1. Objectif—Mettre à l'échelle la capacité d'instance afin qu'elle corresponde au profil de charge souhaité.

    2. Environnement—Un environnement personnalisé qui inclut le profil de chargement. Il génère un charge simulée avec des variations quotidiennes et hebdomadaires ainsi que des pics occasionnels. Le système simulé souffre d'un décalage entre les demandes de nouvelles ressources et leur disponibilité pour servir les demandes.

    3. État—La charge actuelle, le nombre de tâches en échec et le nombre de machines actives.

    4. Action—Supprimer, ajouter ou conserver le même nombre d'instances.

    5. Récompense—Une récompense positive pour des transactions réussie et une pénalité élevée pour des transactions en échec au-delà d'un seuil spécifié.

  2. Définir l'environnement d'apprentissage par renforcement—L'environnement d'apprentissage par renforcement peut être l'environnement concret dans lequel l'agent d'apprentissage par renforcement interagit ou une simulation concrète. Vous pouvez connecter des environnements open source et personnalisés développés à l'aide d'interfaces Gym et d'environnements de simulation commerciaux tels que MATLAB Simulink.

  3. Définir les préréglages—Les préréglages configurent les tâches d'entraînement d'apprentissage par renforcement et définissent les hyperparamètres pour les algorithmes d'apprentissage par renforcement.

  4. Rédiger le code de formation : écrivez le code d'entraînement sous forme de script Python et transmettez-le à une tâche de SageMaker formation. Dans votre code d'entraînement, importez les fichiers d'environnement ainsi que les fichiers de préréglage, puis définissez la fonctionnalité main().

  5. Entraînez le modèle RL : utilisez le SageMaker RLEstimator dans Amazon SageMaker Python SDK pour démarrer une tâche de formation RL. Si vous utilisez un mode local, la tâche d'entraînement s'exécute sur l'instance de bloc-notes. Lorsque vous l'utilisez SageMaker pour l'entraînement, vous pouvez sélectionner GPU ou CPU des instances. Stockez le résultat de la tâche de formation dans un répertoire local si vous vous entraînez en mode local, ou sur Amazon S3 si vous utilisez la SageMaker formation.

    Le RLEstimator exige les informations suivantes comme paramètres.

    1. Le répertoire source dans lequel l'environnement, les préréglages et le code d'entraînement sont chargés.

    2. Le chemin d'accès au script d'entraînement.

    3. La boîte à outils d'apprentissage à renforcement et l'infrastructure de deep learning que vous souhaitez utiliser. Cela correspond automatiquement au ECR chemin Amazon du conteneur RL.

    4. Les paramètres d'entraînement, tels que le nombre d'instances, le nom de la tâche et le chemin d'accès S3 pour la sortie.

    5. Les définitions de métriques que vous souhaitez capturer dans vos journaux. Ils peuvent également être visualisés dans CloudWatch et dans des SageMaker carnets de notes.

  6. Visualisez les indicateurs de formation et les résultats : une fois qu'une tâche de formation utilisant un modèle RL est terminée, vous pouvez consulter les mesures que vous avez définies dans les tâches de formation dans CloudWatch,. Vous pouvez également tracer les métriques dans un bloc-notes à l'aide de la bibliothèque SDK d'analyse Amazon SageMaker Python. La visualisation des métriques vous aide à comprendre comment les performances du modèle, telles que mesurées par la récompense, s'améliorent au fil du temps.

    Note

    Si vous vous entraînez en mode local, vous ne pouvez pas y visualiser les métriques CloudWatch.

  7. Évaluer le modèle—Les données contrôlées depuis des modèles précédemment entraînés peuvent être transmises pour évaluation et inférence dans le canal de vérification. En mode local, utilisez le répertoire local. En mode SageMaker entraînement, vous devez d'abord télécharger les données sur S3.

  8. Déployer des modèles RL —Enfin, déployez le modèle entraîné sur un point de terminaison hébergé sur SageMaker des conteneurs ou sur un appareil périphérique en utilisant AWS IoT Greengrass.

Pour plus d'informations sur RL with SageMaker, consultez Using RL with the SageMaker Python SDK.