La prévision de séries chronologiques fait référence au processus de prédiction des valeurs futures des données de séries chronologiques (données collectées à intervalles réguliers dans le temps). Des méthodes simples de prévision de séries chronologiques utilisent des valeurs historiques de la même variable dont les valeurs futures doivent être prédites, tandis que des méthodes plus complexes basées sur l'apprentissage automatique (ML) utilisent des informations supplémentaires, telles que les données de séries chronologiques de variables associées.
Prévisions Amazon est un service de prévision de séries chronologiques basé sur ML qui comprend des algorithmes basés sur plus de 20 ans d'expérience en matière de prévision utilisés par -, apportant la même technologie utilisée chez Amazon aux développeurs en tant que service entièrement géré, éliminant ainsi le besoin de gérer les ressources. Forecast utilise ML pour apprendre non seulement le meilleur algorithme pour chaque élément, mais également le meilleur ensemble d'algorithmes pour chaque élément, créant automatiquement le meilleur modèle pour vos données.
Cet article décrit comment déployer des charges de travail de prévision récurrentes (charges de travail de prévision de séries chronologiques) sans code à l'aide AWS CloudFormation, Fonctions d'étape AWSet une Gestionnaire de systèmes AWS. La méthode présentée ici vous aide à créer un pipeline qui vous permet d'utiliser le même flux de travail à partir du premier jour de votre expérimentation de prévision de séries chronologiques jusqu'au déploiement du modèle en production.
Prévision de séries chronologiques à l'aide de Forecast
Le workflow de Forecast implique les concepts communs suivants :
- Importation de jeux de données – Dans Prévision, un groupe de jeux de données est une collection d'ensembles de données, de schémas et de résultats de prévision qui vont de pair. Chaque groupe d'ensembles de données peut avoir jusqu'à trois ensembles de données, un de chaque jeu de données type : séries temporelles cibles (TTS), séries temporelles associées (RTS) et métadonnées d'élément. Un jeu de données est un ensemble de fichiers contenant des données pertinentes pour une tâche de prévision. Un jeu de données doit être conforme au schéma défini dans Forecast. Pour plus de détails, reportez-vous à Importation d'ensembles de données.
- Prédicteurs d'entraînement - A prédicteur est un modèle formé par Forecast utilisé pour faire des prévisions basées sur des données de séries chronologiques. Pendant la formation, Forecast calcule les métriques de précision que vous utilisez pour évaluer le prédicteur et décider d'utiliser le prédicteur pour générer une prévision. Pour plus d'informations, reportez-vous à Prédicteurs d'entraînement.
- Génération de prévisions – Vous pouvez ensuite utiliser le modèle formé pour générer des prévisions pour un horizon temporel futur, connu sous le nom de horizon de prévision. Forecast fournit des prévisions à divers quantiles spécifiés. Par exemple, une prévision au quantile 0.90 estimera une valeur inférieure à la valeur observée 90 % du temps. Par défaut, Forecast utilise les valeurs suivantes pour les types de prévision prédicteur : 0.1 (P10), 0.5 (P50) et 0.9 (P90). Les prévisions à divers quantiles sont généralement utilisées pour fournir un intervalle de prévision (une limite supérieure et inférieure pour les prévisions) afin de tenir compte de l'incertitude des prévisions.
Vous pouvez implémenter ce workflow dans Forecast à partir du Console de gestion AWS, Interface de ligne de commande AWS (AWS CLI), via Appels d'API à l'aide de blocs-notes Python, ou via des solutions d'automatisation. Le console ainsi que CLI AWS Les méthodes sont les mieux adaptées pour une expérimentation rapide afin de vérifier la faisabilité de la prévision de séries chronologiques à l'aide de vos données. La méthode de bloc-notes Python est idéale pour les scientifiques des données déjà familiarisés avec les blocs-notes et le codage Jupyter, et offre un contrôle et un réglage maximum. Cependant, la méthode basée sur un ordinateur portable est difficile à opérationnaliser. Notre approche d'automatisation facilite l'expérimentation rapide, élimine les tâches répétitives et permet une transition plus facile entre divers environnements (développement, mise en scène, production).
Dans cet article, nous décrivons une approche d'automatisation de l'utilisation de Forecast qui vous permet d'utiliser vos propres données et fournit un flux de travail unique que vous pouvez utiliser de manière transparente tout au long du cycle de vie du développement de votre solution de prévision, depuis les premiers jours d'expérimentation jusqu'au déploiement. de la solution dans votre environnement de production.
Vue d'ensemble de la solution
Dans les sections suivantes, nous décrivons un flux de travail complet de bout en bout qui sert de modèle à suivre pour le déploiement automatisé de modèles de prévision de séries chronologiques à l'aide de Forecast. Ce flux de travail crée des points de données prévus à partir d'un ensemble de données d'entrée open source ; cependant, vous pouvez utiliser le même flux de travail pour vos propres données, tant que vous pouvez formater vos données selon les étapes décrites dans cet article. Une fois que vous avez chargé les données, nous vous guidons à travers les étapes pour créer des groupes d'ensembles de données de prévision, importer des données, former des modèles ML et produire des points de données prévus sur des horizons temporels futurs invisibles à partir de données brutes. Tout cela est possible sans avoir à écrire ou à compiler du code.
Le diagramme suivant illustre le workflow de prévision.
La solution est déployée à l'aide de deux modèles CloudFormation : le modèle de dépendances et le modèle de charge de travail. CloudFormation vous permet d'effectuer des déploiements d'infrastructure AWS de manière prévisible et répétée en utilisant des modèles décrivant les ressources à déployer. Un modèle déployé est appelé un empiler. Nous nous sommes occupés de définir pour vous l'infrastructure de la solution dans les deux modèles fournis. Le modèle de dépendances définit les ressources prérequises utilisées par le modèle de charge de travail, telles qu'un Service de stockage simple Amazon (Amazon S3) compartiment pour le stockage d'objets et Gestion des identités et des accès AWS Autorisations (IAM) pour les actions d'API AWS. Les ressources définies dans le modèle de dépendances peuvent être partagées par plusieurs modèles de charge de travail. Le modèle de charge de travail définit les ressources utilisées pour ingérer des données, former un prédicteur et générer une prévision.
Déployer le modèle de dépendances CloudFormation
Tout d'abord, déployons le modèle de dépendances pour créer nos ressources prérequises. Le modèle de dépendances déploie un compartiment S3 facultatif, AWS Lambda fonctions et rôles IAM. Amazon S3 est un service de stockage d'objets à faible coût, hautement disponible et résilient. Nous utilisons un compartiment S3 dans cette solution pour stocker les données sources et déclencher le workflow, ce qui génère une prévision. Lambda est un service de calcul sans serveur et piloté par les événements qui vous permet d'exécuter du code sans provisionner ni gérer de serveurs. Le modèle de dépendances inclut des fonctions permettant d'effectuer des actions telles que la création d'un groupe d'ensembles de données dans Forecast et la purge des objets dans un compartiment S3 avant de supprimer le compartiment. Les rôles IAM définissent les autorisations au sein d'AWS pour les utilisateurs et les services. Le modèle de dépendances déploie un rôle à utiliser par Lambda et un autre pour Step Functions, un service de gestion de flux de travail qui coordonnera les tâches d'ingestion et de traitement des données, ainsi que la formation et l'inférence des prédicteurs à l'aide de Forecast.
Effectuez les étapes suivantes pour déployer le modèle de dépendances :
- Sur la console, sélectionnez le Région prise en charge par Forecast pour le déploiement de la solution.
- Sur la console AWS CloudFormation, choisissez Combos dans le volet de navigation.
- Selectionnez Créer une pile et choisissez Avec de nouvelles ressources (standard).
- Pour Source du modèle, sélectionnez URL Amazon S3.
- Saisissez l'URL du modèle :
https://amazon-forecast-samples.s3.us-west-2.amazonaws.com/ml_ops/forecast-mlops-dependency.yaml
. - Selectionnez Suivant.
- Pour Nom de la pile, Entrer
forecast-mlops-dependency
. - Sous Paramètres, choisissez d'utiliser un compartiment S3 existant ou d'en créer un nouveau, puis indiquez le nom du compartiment.
- Selectionnez Suivant.
- Selectionnez Suivant pour accepter les options de pile par défaut.
- Cochez la case pour reconnaître que la pile crée des ressources IAM, puis choisissez Créer une pile pour déployer le modèle.
Vous devriez voir le modèle se déployer en tant que forecast-mlops-dependency
empiler. Lorsque le statut passe à CREATE_COMPLETE
, vous pouvez passer à l'étape suivante.
Déployer le modèle de charge de travail CloudFormation
Ensuite, déployons le modèle de charge de travail pour créer nos ressources prérequises. Le modèle de charge de travail déploie des machines d'état Step Functions pour la gestion du flux de travail, Magasin de paramètres AWS Systems Manager paramètres pour stocker les valeurs des paramètres d'AWS CloudFormation et informer le flux de travail, un Service de notification simple d'Amazon (Amazon SNS) pour les notifications de flux de travail et un rôle IAM pour les autorisations de service de flux de travail.
La solution crée cinq machines d'état :
- CreateDatasetGroupStateMachine – Crée un groupe d'ensembles de données de prévision dans lequel les données doivent être importées.
- CreateImportDatasetStateMachine – Importe les données source d'Amazon S3 dans un groupe d'ensembles de données pour la formation.
- CreateForecastStateMachine – Gère les tâches requises pour former un prédicteur et générer une prévision.
- AthenaConnectorStateMachine – Permet d'écrire des requêtes SQL avec le Amazone Athéna connecteur pour atterrir les données dans Amazon S3. Il s'agit d'un processus facultatif permettant d'obtenir des données historiques au format requis pour les prévisions à l'aide d'Athena au lieu de placer les fichiers manuellement dans Amazon S3.
- StepFunctionWorkflowStateMachineStepFunctionWorkflowStateMachine – Coordonne les appels vers les quatre autres machines d'état et gère le flux de travail global.
Parameter Store, une fonctionnalité de Systems Manager, fournit un stockage sécurisé et hiérarchique et une récupération par programme de la gestion des données de configuration et de la gestion des secrets. Parameter Store est utilisé pour stocker les paramètres définis dans la pile de charge de travail ainsi que d'autres paramètres utilisés par le flux de travail.
Effectuez les étapes suivantes pour déployer le modèle de charge de travail :
- Sur la console AWS CloudFormation, choisissez Combos dans le volet de navigation.
- Selectionnez Créer une pile et choisissez Avec de nouvelles ressources (standard).
- Pour Source du modèle, sélectionnez URL Amazon S3.
- Saisissez l'URL du modèle :
https://amazon-forecast-samples.s3.us-west-2.amazonaws.com/ml_ops/forecast-mlops-solution-guidance.yaml
. - Selectionnez Suivant.
- Pour Nom de la pile, entrez un nom.
- Acceptez les valeurs par défaut ou modifiez les paramètres.
Assurez-vous d'entrer le nom du compartiment S3 à partir de la pile des dépendances pour Compartiment S3 et une adresse e-mail valide pour SNSEndpoint même si vous acceptez les valeurs de paramètre par défaut.
Le tableau suivant décrit chaque paramètre.
Paramètre | Description | Plus d'informations |
DatasetGroupFrequencyRTS |
La fréquence de collecte des données pour l'ensemble de données RTS. | . |
DatasetGroupFrequencyTTS |
La fréquence de collecte des données pour l'ensemble de données TTS. | . |
DatasetGroupName |
Un nom court pour le groupe d'ensembles de données, une charge de travail autonome. | Créer un groupe d'ensembles de données |
DatasetIncludeItem |
Indiquez si vous souhaitez fournir des métadonnées d'élément pour ce cas d'utilisation. | . |
DatasetIncludeRTS |
Indiquez si vous souhaitez fournir une série chronologique associée pour ce cas d'utilisation. | . |
ForecastForecastTypes |
Lorsqu'une tâche CreateForecast s'exécute, cela déclare les quantiles pour lesquels produire des prédictions. Vous pouvez choisir jusqu'à cinq valeurs dans ce tableau. Modifiez cette valeur pour inclure des valeurs en fonction des besoins. | Créer une prévision |
PredictorAttributeConfigs |
Pour la variable cible dans TTS et chaque champ numérique dans les jeux de données RTS, un enregistrement doit être créé pour chaque intervalle de temps pour chaque élément. Cette configuration permet de déterminer comment les enregistrements manquants sont remplis : avec 0, NaN ou autre. Nous recommandons de remplir les lacunes du TTS avec NaN au lieu de 0. Avec 0, le modèle pourrait apprendre à tort à biaiser les prévisions vers 0. NaN est la façon dont les conseils sont fournis. Consultez votre architecte de solutions AWS pour toute question à ce sujet. | Créer un prédicteur automatique |
PredictorExplainPredictor |
Les valeurs valides sont TRUE ou FALSE. Ceux-ci déterminent si l'explicabilité est activée pour votre prédicteur. Cela peut vous aider à comprendre comment les valeurs du RTS et les métadonnées de l'élément influencent le modèle. | Explicabilité |
PredictorForecastDimensions |
Vous voudrez peut-être prévoir avec un grain plus fin que l'élément. Ici, vous pouvez spécifier des dimensions telles que l'emplacement, le centre de coûts ou quels que soient vos besoins. Cela doit correspondre aux dimensions de votre RTS et TTS. Notez que si vous n'avez pas de dimension, le paramètre correct est nul, seul et en minuscules. null est un mot réservé qui permet au système de savoir qu'il n'y a pas de paramètre pour la dimension. | Créer un prédicteur automatique |
PredictorForecastFrequency |
Définit l'échelle de temps à laquelle votre modèle et vos prévisions seront générés, par exemple quotidiennement, hebdomadairement ou mensuellement. Le menu déroulant vous aide à choisir les valeurs autorisées. Cela doit être en accord avec votre échelle de temps RTS si vous utilisez RTS. | Créer un prédicteur automatique |
PredictorForecastHorizon |
Le nombre de pas de temps que le modèle prédit. L'horizon de prévision est aussi appelé longueur de prédiction. | Créer un prédicteur automatique |
PredictorForecastOptimizationMetric |
Définit la métrique de précision utilisée pour optimiser le prédicteur. Le menu déroulant vous aidera à sélectionner les soldes de pertes quantiles pondérés pour les surestimations ou les sous-estimations. RMSE concerne les unités et WAPE/MAPE concerne les pourcentages d'erreurs. | Créer un prédicteur automatique |
PredictorForecastTypes |
Quand un CreateAutoPredictor les exécutions de tâche, cela déclare quels quantiles sont utilisés pour former les points de prédiction. Vous pouvez choisir jusqu'à cinq valeurs dans ce tableau, ce qui vous permet d'équilibrer les surestimations et les sous-estimations. Modifiez cette valeur pour inclure des valeurs en fonction des besoins. |
Créer un prédicteur automatique |
S3Bucket |
Nom du compartiment S3 dans lequel les données d'entrée et les données de sortie sont écrites pour cette charge de travail. | . |
SNSEndpoint |
Une adresse e-mail valide pour recevoir des notifications lorsque les tâches de prédicteur et de prévision sont terminées. | . |
SchemaITEM |
Cela définit l'ordre physique, les noms de colonne et les types de données pour votre ensemble de données de métadonnées d'élément. Il s'agit d'un fichier facultatif fourni dans l'exemple de solution. | Créer un ensemble de données |
SchemaRTS |
Cela définit l'ordre physique, les noms de colonne et les types de données pour votre ensemble de données RTS. Les dimensions doivent correspondre à votre TTS. Le grain temporel de ce fichier régit le grain temporel auquel les prédictions peuvent être faites. Il s'agit d'un fichier facultatif fourni dans l'exemple de solution. | Créer un ensemble de données |
SchemaTTS |
Cela définit l'ordre physique, les noms de colonne et les types de données pour votre jeu de données TTS, le seul jeu de données requis. Le fichier doit contenir au minimum une valeur cible, un horodatage et un élément. | Créer un ensemble de données |
TimestampFormatRTS |
Définit le format d'horodatage fourni dans le fichier RTS. | CreateDatasetImportJob |
TimestampFormatTTS |
Définit le format d'horodatage fourni dans le fichier TTS. | CreateDatasetImportJob |
- Selectionnez Suivant pour accepter les options de pile par défaut.
- Cochez la case pour reconnaître que la pile crée des ressources IAM, puis choisissez Créer une pile pour déployer le modèle.
Vous devriez voir le modèle se déployer sous le nom de pile que vous avez choisi précédemment. Lorsque le statut passe à CREATE_COMPLETE
, vous pouvez passer à l'étape de téléchargement des données.
Télécharger les données
Dans la section précédente, vous avez fourni un nom de pile et un compartiment S3. Cette section décrit comment déposer l'ensemble de données accessible au public Demande alimentaire dans ce seau. Si vous utilisez votre propre jeu de données, reportez-vous à Jeux de données pour préparer votre ensemble de données dans un format attendu par le déploiement. L'ensemble de données doit contenir au moins la série chronologique cible et, éventuellement, la série chronologique associée et les métadonnées de l'élément :
- TTS correspond aux données de série chronologique qui incluent le champ pour lequel vous souhaitez générer une prévision ; ce champ s'appelle le champ cible
- RTS est une série chronologique de données qui n'inclut pas le champ cible, mais inclut un champ connexe
- Le fichier de données d'élément n'est pas une série chronologique, mais inclut des informations de métadonnées sur les éléments des ensembles de données TTS ou RTS
Effectuez les étapes suivantes:
- Si vous utilisez l'exemple d'ensemble de données fourni, téléchargez l'ensemble de données Demande alimentaire sur votre ordinateur et décompressez le fichier, ce qui crée trois fichiers dans trois répertoires (
rts
,tts
,item
). - Sur la console Amazon S3, accédez au compartiment que vous avez créé précédemment.
- Selectionnez Créer un dossier.
- Utilisez la même chaîne que le nom de votre pile de charge de travail pour le nom du dossier.
- Selectionnez Téléchargement.
- Choisissez les trois dossiers de jeux de données, puis choisissez Téléchargement.
Lorsque le téléchargement est terminé, vous devriez voir quelque chose comme la capture d'écran suivante. Pour cet exemple, notre dossier est aiml42
.
Créer un groupe d'ensembles de données de prévision
Effectuez les étapes de cette section pour créer un groupe d'ensembles de données en tant qu'événement ponctuel pour chaque charge de travail. À l'avenir, vous devez prévoir d'exécuter les données d'importation, de créer un prédicteur et de créer des étapes de prévision, le cas échéant, en série, selon votre calendrier, qui peut être quotidien, hebdomadaire ou autre.
- Sur la console Step Functions, localisez la machine d'état contenant
Create-Dataset-Group
. - Sur la page de détails de la machine d'état, choisissez Lancer l'exécution.
- Selectionnez Lancer l'exécution encore une fois pour confirmer.
La machine d'état prend environ 1 minute pour s'exécuter. Une fois terminé, la valeur sous État d'exécution devrait changer de Fonctionnement à Réussi
Importer des données dans Forecast
Suivez les étapes de cette section pour importer l'ensemble de données que vous avez chargé dans votre compartiment S3 dans votre groupe d'ensembles de données :
- Sur la console Step Functions, localisez la machine d'état contenant
Import-Dataset
. - Sur la page de détails de la machine d'état, choisissez Démarrer l'exécution.
- Selectionnez Lancer l'exécution encore une fois pour confirmer.
La durée d'exécution de la machine d'état dépend de l'ensemble de données en cours de traitement.
- Pendant qu'il est en cours d'exécution, dans votre navigateur, ouvrez un autre onglet et accédez à la console Forecast.
- Sur la console des prévisions, choisissez Afficher les groupes d'ensembles de données et accédez au groupe d'ensembles de données avec le nom spécifié pour
DataGroupName
de votre pile de charge de travail. - Selectionnez Afficher les ensembles de données.
Vous devriez voir les importations de données en cours.
Lorsque la machine d'état pour Import-Dataset
est terminée, vous pouvez passer à l'étape suivante pour créer votre modèle de données de série chronologique.
Créer un prédicteur automatique (entraîner un modèle de série chronologique)
Cette section décrit comment former un prédicteur initial avec Forecast. Vous pouvez choisir de créer un nouveau prédicteur (votre premier prédicteur de référence) ou de recycler un prédicteur au cours de chaque cycle de production, qui peut être quotidien, hebdomadaire ou autre. Vous pouvez également choisir de ne pas créer de prédicteur à chaque cycle et de vous fier à la surveillance des prédicteurs pour vous guider quand en créer un. La figure suivante illustre le processus de création d'un prédicteur de prévision prêt pour la production.
Pour créer un prédicteur, procédez comme suit :
- Sur la console Step Functions, localisez la machine d'état contenant
Create-Predictor
. - Sur la page de détails de la machine d'état, choisissez Démarrer l'exécution.
- Selectionnez Lancer l'exécution encore une fois pour confirmer.
La durée d'exécution peut dépendre de l'ensemble de données en cours de traitement. Cela peut prendre jusqu'à une heure ou plus. - Pendant qu'il est en cours d'exécution, dans votre navigateur, ouvrez un autre onglet et accédez à la console Forecast.
- Sur la console des prévisions, choisissez Afficher les groupes d'ensembles de données et accédez au groupe d'ensembles de données avec le nom spécifié pour
DataGroupName
de votre pile de charge de travail. - Selectionnez Afficher les prédicteurs.
Vous devriez voir l'entraînement du prédicteur en cours (l'état de l'entraînement indique "Création en cours...").
Lorsque la machine d'état pour Create-Predictor
est terminée, vous pouvez évaluer ses performances.
Dans le cadre de la machine d'état, le système crée un prédicteur et exécute également un BacktestExport
tâche qui écrit des métriques de prédicteur au niveau de la série chronologique dans Amazon S3. Ce sont des fichiers situés dans deux dossiers S3 sous le backtest-export
dossier:
- précision-mesures-valeurs – Fournit des calculs de métriques de précision au niveau de l'élément afin que vous puissiez comprendre les performances d'une seule série chronologique. Cela vous permet d'étudier la propagation plutôt que de vous concentrer uniquement sur les mesures globales.
- valeurs-prévues – Fournit des prédictions au niveau des étapes pour chaque série chronologique dans la fenêtre de backtest. Cela vous permet de comparer la valeur cible réelle d'un ensemble de tests d'exclusion aux valeurs quantiles prévues. L'examen de cela aide à formuler des idées sur la façon de fournir des fonctionnalités de données supplémentaires dans RTS ou des métadonnées d'élément pour aider à mieux estimer les valeurs futures, réduisant davantage les pertes. Vous pouvez télécharger
backtest-export
fichiers d'Amazon S3 ou interrogez-les en place avec Athena.
Avec vos propres données, vous devez inspecter de près les résultats des prédicteurs et vous assurer que les métriques répondent aux résultats attendus en utilisant les données d'exportation du backtest. Lorsque vous êtes satisfait, vous pouvez commencer à générer des prédictions futures comme décrit dans la section suivante.
Générer une prévision (inférence sur les horizons temporels futurs)
Cette section décrit comment générer des points de données de prévision avec Forecast. À l'avenir, vous devez collecter de nouvelles données à partir du système source, importer les données dans Forecast, puis générer des points de données de prévision. En option, vous pouvez également insérer une nouvelle création de prédicteur après l'importation et avant la prévision. La figure suivante illustre le processus de création de prévisions de séries chronologiques de production à l'aide de Forecast.
Effectuez les étapes suivantes:
- Sur la console Step Functions, localisez la machine d'état contenant
Create-Forecast
. - Sur la page de détails de la machine d'état, choisissez Démarrer l'exécution.
- Selectionnez Lancer l'exécution encore une fois pour confirmer.
Cette machine d'état se termine très rapidement car le système n'est pas configuré pour générer une prévision. Il ne sait pas quel modèle de prédicteur vous avez approuvé pour l'inférence.
Configurons le système pour utiliser votre prédicteur formé. - Dans la console Forecast, localisez l'ARN de votre prédicteur.
- Copiez l'ARN à utiliser dans une étape ultérieure.
- Dans votre navigateur, ouvrez un autre onglet et accédez à la console Systems Manager.
- Sur la console Systems Manager, choisissez Magasin de paramètres dans le volet de navigation.
- Localisez le paramètre lié à votre pile (
/forecast/<StackName>/Forecast/PredictorArn
). - Entrez l'ARN que vous avez copié pour votre prédicteur.
C'est ainsi que vous associez un prédicteur formé à la fonction d'inférence de Forecast. - Localisez le paramètre
/forecast/<StackName>/Forecast/Generate
et modifier la valeur, en remplaçantFALSE
comprenantTRUE
.
Vous êtes maintenant prêt à exécuter une tâche de prévision pour ce groupe d'ensembles de données. - Sur la console Step Functions, exécutez le
Create-Forecast
machine d'état.
Cette fois, le travail s'exécute comme prévu. Dans le cadre de la machine d'état, le système crée une prévision et un ForecastExport
job, qui écrit des prédictions de séries temporelles sur Amazon S3. Ces fichiers se trouvent dans le forecast
dossier
À l'intérieur de l' forecast
dossier, vous trouverez des prédictions pour vos articles, situées dans de nombreux fichiers CSV ou Parquet, selon votre sélection. Les prédictions pour chaque pas de temps et les séries temporelles sélectionnées existent avec toutes les valeurs de quantiles choisies par enregistrement. Vous pouvez télécharger ces fichiers à partir d'Amazon S3, les interroger sur place avec Athena ou choisir une autre stratégie pour utiliser les données.
Cela résume l'ensemble du flux de travail. Vous pouvez maintenant visualiser votre sortie à l'aide de n'importe quel outil de visualisation de votre choix, tel que Amazon QuickSight. Alternativement, les data scientists peuvent utiliser des pandas pour générer leurs propres graphiques. Si vous choisissez d'utiliser QuickSight, vous pouvez connectez vos résultats de prévision à QuickSight pour effectuer des transformations de données, créer une ou plusieurs analyses de données, et créer des visualisations.
Ce processus fournit un modèle à suivre. Vous devrez adapter l'échantillon à votre schéma, définir l'horizon de prévision, la résolution temporelle, etc. en fonction de votre cas d'utilisation. Vous devrez également définir un calendrier récurrent dans lequel les données sont collectées à partir du système source, importer les données et produire des prévisions. Si vous le souhaitez, vous pouvez insérer une tâche de prédiction entre les étapes d'importation et de prévision.
Réentraîner le prédicteur
Nous avons parcouru le processus de formation d'un nouveau prédicteur, mais qu'en est-il du recyclage d'un prédicteur ? Le recyclage d'un prédicteur est un moyen de réduire le coût et le temps nécessaires à la formation d'un prédicteur sur les dernières données disponibles. Plutôt que de créer un nouveau prédicteur et de l'entraîner sur l'ensemble de données, nous pouvons recycler le prédicteur existant en fournissant uniquement les nouvelles données incrémentielles mises à disposition depuis la dernière formation du prédicteur. Voyons comment recycler un prédicteur à l'aide de la solution d'automatisation :
- Sur la console des prévisions, choisissez Afficher les groupes d'ensembles de données.
- Choisissez le groupe d'ensembles de données associé au prédicteur que vous souhaitez recycler.
- Selectionnez Afficher les prédicteurs, puis choisissez le prédicteur que vous souhaitez recycler.
- Sur le Paramètres , copiez l'ARN du prédicteur.
Nous devons mettre à jour un paramètre utilisé par le workflow pour identifier le prédicteur à recycler. - Sur la console Systems Manager, choisissez Magasin de paramètres dans le volet de navigation.
- Localisez le paramètre
/forecast/<STACKNAME>/Forecast/Predictor/ReferenceArn
. - Sur la page de détail des paramètres, choisissez Modifier.
- Pour Valeur, saisissez l'ARN du prédicteur.
Cela identifie le prédicteur correct pour le flux de travail à recycler. Ensuite, nous devons mettre à jour un paramètre utilisé par le workflow pour changer la stratégie de formation. - Localisez le paramètre
/forecast/<STACKNAME>/Forecast/Predictor/Strategy
. - Sur la page de détail des paramètres, choisissez Modifier.
- Pour Valeur, entrez
RETRAIN
.
Le flux de travail s'entraîne par défaut à un nouveau prédicteur ; cependant, nous pouvons modifier ce comportement pour réentraîner un prédicteur existant ou simplement réutiliser un prédicteur existant sans réentraînement en définissant cette valeur surNONE
. Vous voudrez peut-être renoncer à la formation si vos données sont relativement stables ou si vous utilisez surveillance automatisée des prédicteurs décider quand une reconversion est nécessaire. - Chargez les données de formation incrémentielles dans le compartiment S3.
- Sur la console Step Functions, localisez la machine d'état
<STACKNAME>-Create-Predictor
. - Sur la page de détails de la machine d'état, choisissez Lancer l'exécution pour commencer la reconversion.
Une fois le recyclage terminé, le flux de travail se terminera et vous recevrez une notification par e-mail SNS à l'adresse e-mail fournie dans les paramètres du modèle de charge de travail.
Nettoyer
Lorsque vous avez terminé avec cette solution, suivez les étapes de cette section pour supprimer les ressources associées.
Supprimer le compartiment S3
- Sur la console Amazon S3, choisissez Chapeaux cloche dans le volet de navigation.
- Sélectionnez le compartiment dans lequel les données ont été téléchargées et choisissez Vide pour supprimer toutes les données associées à la solution, y compris les données source.
- Entrer
permanently delete
pour supprimer définitivement le contenu du bucket. - Sur le Chapeaux cloche page, sélectionnez le compartiment et choisissez Supprimer.
- Entrez le nom du bucket pour confirmer la suppression et choisissez Supprimer le bucket.
Supprimer les ressources de prévision
- Sur la console des prévisions, choisissez Afficher les groupes d'ensembles de données.
- Sélectionnez le nom du groupe de jeux de données associé à la solution, puis choisissez Supprimer.
- Entrer
delete
pour supprimer le groupe d'ensembles de données et les prédicteurs associés, les tâches d'exportation de backtest de prédicteur, les prévisions et les tâches d'exportation de prévision. - Selectionnez Supprimer pour confirmer.
Supprimer les piles CloudFormation
- Sur la console AWS CloudFormation, choisissez Combos dans le volet de navigation.
- Sélectionnez la pile de charge de travail et choisissez Supprimer.
- Selectionnez Supprimer la pile pour confirmer la suppression de la pile et de toutes les ressources associées.
- Lorsque la suppression est terminée, sélectionnez la pile de dépendances et choisissez Supprimer.
- Selectionnez Supprimer pour confirmer.
Conclusion
Dans cet article, nous avons discuté de différentes façons de commencer à utiliser Forecast. Nous avons parcouru une solution de prévision automatisée basée sur AWS CloudFormation pour un déploiement de solution rapide et reproductible d'un pipeline de prévision, de l'ingestion de données à l'inférence, avec peu de connaissances en infrastructure requises. Enfin, nous avons vu comment nous pouvons utiliser Lambda pour automatiser le recyclage des modèles, réduisant ainsi les coûts et le temps de formation.
Il n'y a pas de meilleur moment que le présent pour commencer à faire des prévisions avec Forecast. Pour commencer à créer et à déployer un flux de travail automatisé, visitez Ressources Amazon Forecast. Bonne prévision !
À propos des auteurs
Aaron Fagan est un architecte principal de solutions spécialisées chez AWS basé à New York. Il se spécialise dans l'aide aux clients pour concevoir des solutions d'apprentissage automatique et de sécurité dans le cloud.
Raju Patil est Data Scientist dans AWS Professional Services. Il construit et déploie des solutions d'IA/ML pour aider les clients d'AWS à surmonter leurs défis commerciaux. Ses engagements AWS ont couvert un large éventail de cas d'utilisation de l'IA/ML tels que la vision par ordinateur, les prévisions de séries chronologiques et l'analyse prédictive, etc., dans de nombreux secteurs, notamment les services financiers, les télécommunications, les soins de santé, etc. Auparavant, il a dirigé des équipes de science des données dans le domaine des technologies publicitaires et a apporté d'importantes contributions à de nombreuses initiatives de recherche et développement en vision par ordinateur et en robotique. En dehors du travail, il aime la photographie, la randonnée, les voyages et les explorations culinaires.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoAiStream. Intelligence des données Web3. Connaissance Amplifiée. Accéder ici.
- Frapper l'avenir avec Adryenn Ashley. Accéder ici.
- Achetez et vendez des actions de sociétés PRE-IPO avec PREIPO®. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/automate-the-deployment-of-an-amazon-forecast-time-series-forecasting-model/
- :possède
- :est
- :ne pas
- :où
- $UP
- 1
- 10
- 100
- 11
- 20
- 20 ans
- 2022
- 7
- 8
- 9
- a
- A Propos
- Accepter
- accès
- Selon
- Compte
- précision
- reconnaître
- à travers
- actes
- adapter
- Supplémentaire
- renseignements supplémentaires
- propos
- Numérique
- Après
- encore
- AI / ML
- algorithme
- algorithmes
- Tous
- Permettre
- permet
- seul
- déjà
- aussi
- Amazon
- Prévisions Amazon
- montant
- an
- Analyses
- analytique
- ainsi que
- Une autre
- tous
- api
- une approche
- approprié
- ,
- SONT
- tableau
- AS
- aider
- Associé(e)
- associé
- At
- automatiser
- Automatisation
- automatiquement
- Automation
- disponibles
- AWS
- AWS CloudFormation
- Services professionnels AWS
- Backtest
- Balance
- soldes
- basé
- Baseline
- BE
- car
- before
- commencer
- va
- LES MEILLEURS
- Améliorée
- jusqu'à XNUMX fois
- biais
- Bound
- Box
- Apporter
- navigateur
- construire
- Développement
- construit
- la performance des entreprises
- mais
- by
- calcule
- appelé
- Appels
- CAN
- les soins
- maisons
- cas
- Canaux centraux
- globaux
- Change
- Modifications
- vérifier
- le choix
- Selectionnez
- choisir
- choisi
- étroitement
- le cloud
- Cloud Security
- code
- Codage
- collection
- Colonne
- COM
- Commun
- comparer
- complet
- complexe
- calculs
- calcul
- ordinateur
- Vision par ordinateur
- concepts
- concerné
- configuration
- Confirmer
- Console
- contiennent
- contenu
- contributions
- des bactéries
- coordonner
- correct
- Prix
- pourriez
- couvert
- engendrent
- créée
- crée des
- La création
- création
- Clients
- cycle
- Cyclique
- Tous les jours
- données
- gestion des données
- points de données
- science des données
- Data Scientist
- ensemble de données
- ensembles de données
- journée
- jours
- décider
- déclare
- Réglage par défaut
- par défaut
- défini
- Définit
- définir
- livré
- Selon
- dépend
- déployer
- déployé
- déployer
- déploiement
- déploiements
- déploie
- Dépôt
- décrire
- décrit
- voulu
- détail
- détails
- Déterminer
- mobiles
- Développement
- différent
- difficile
- Dimension
- dimensions
- répertoires
- discuté
- do
- Ne fait pas
- fait
- download
- pendant
- chacun
- Plus tôt
- plus facilement
- non plus
- élimine
- activé
- permet
- fin
- end-to-end
- assurer
- Entrer
- Tout
- Environment
- environnements
- Erreurs
- estimation
- etc
- évaluer
- Pourtant, la
- événement
- exemple
- exécution
- exister
- existant
- attendu
- attend
- d'experience
- Exporter
- facilite
- non
- familier
- Fonctionnalités:
- champ
- Figure
- Déposez votre dernière attestation
- Fichiers
- Dépôt
- rempli
- finalement
- la traduction de documents financiers
- services financiers
- Trouvez
- Prénom
- mettant l'accent
- suivre
- Abonnement
- Pour
- Prévision
- prévisions
- le format
- en avant
- Avant
- quatre
- La fréquence
- De
- d’étiquettes électroniques entièrement
- fonction
- fonctions
- plus
- avenir
- générer
- généré
- générateur
- obtenez
- Global
- Go
- aller
- gouverne
- graphique
- l'
- Réservation de groupe
- Groupes
- l'orientation
- guide
- heureux vous
- récolte
- Vous avez
- ayant
- he
- Santé
- Soins de santé
- vous aider
- aider
- aide
- ici
- très
- sa
- historique
- horizon
- Horizons
- heure
- Comment
- How To
- Cependant
- HTML
- http
- HTTPS
- et idées cadeaux
- identifie
- identifier
- Identite
- if
- illustre
- Mettre en oeuvre
- importer
- importations
- in
- comprendre
- inclut
- Y compris
- secteurs
- influencer
- informer
- d'information
- Infrastructure
- initiale
- les initiatives
- contribution
- plutôt ;
- développement
- enquêter
- impliqué
- IT
- articles
- SES
- lui-même
- Emploi
- Emplois
- jpg
- Savoir
- spécialisées
- connu
- Transport routier
- Nom de famille
- plus tard
- Nouveautés
- APPRENTISSAGE
- apprentissage
- au
- LED
- Données menées
- Allons-y
- vos produits
- comme
- Gamme
- peu
- situé
- emplacement
- Location
- perte
- low cost
- baisser
- click
- machine learning
- Les machines
- LES PLANTES
- Fabrication
- gérer
- gérés
- gestion
- manager
- gère
- les gérer
- manuellement
- de nombreuses
- maximales
- Mai..
- Découvrez
- Menu
- Métadonnées
- méthode
- méthodes
- métrique
- Métrique
- pourrait
- minimum
- minute
- manquant
- ML
- modèle
- numériques jumeaux (digital twin models)
- modifier
- Stack monitoring
- mensuel
- PLUS
- Bougez
- plusieurs
- must
- prénom
- noms
- NAVIGUER
- Navigation
- nécessaire
- Besoin
- Besoins
- Nouveauté
- New York
- next
- aucune
- cahier
- déclaration
- Notifications
- maintenant
- nombre
- nombreux
- objet
- objets
- obtenir
- of
- on
- ONE
- uniquement
- ouvert
- open source
- Optimiser
- Options
- or
- de commander
- Autre
- autrement
- nos
- ande
- les résultats
- décrit
- sortie
- au contrôle
- plus de
- global
- propre
- page
- pandas
- pain
- paramètre
- paramètres
- partie
- pour cent
- Effectuer
- performant
- définitivement
- autorisations
- photographie
- Physique
- pipeline
- Place
- placement
- plan
- Platon
- Intelligence des données Platon
- PlatonDonnées
- des notes bonus
- possible
- Post
- prédit
- prévoir
- prédiction
- Prédictions
- Analyses prédictives
- Predictor
- Prévoit
- Préparer
- représentent
- présenté
- précédent
- Directeur
- Avant
- processus
- Traité
- traitement
- produire
- Vidéo
- professionels
- programmatiques
- Progrès
- fournir
- à condition de
- fournit
- aportando
- publiquement
- Python
- requêtes
- fréquemment posées
- Rapide
- vite.
- gamme
- Nos tests de diagnostic produisent des résultats rapides et précis sans nécessiter d'équipement de laboratoire complexe et coûteux,
- plutôt
- raw
- solutions
- recevoir
- recommander
- record
- Articles
- récurrent
- réduire
- réduire
- visée
- se réfère
- Standard
- en relation
- relativement
- pertinent
- compter
- enlever
- répétable
- À PLUSIEURS REPRISES
- répétitif
- conditions
- un article
- Recherche et développement
- réservé
- résilient
- Résolution
- Resources
- résultant
- Résultats
- réutiliser
- examen
- robotique
- Rôle
- rôle
- Courir
- pour le running
- même
- Exemple d'ensemble de données
- satisfait
- Escaliers intérieurs
- calendrier
- Sciences
- Scientifique
- scientifiques
- de façon transparente
- Section
- les sections
- sécurisé
- sécurité
- sur le lien
- choisi
- sélection
- Série
- Sans serveur
- Serveurs
- sert
- service
- Services
- set
- mise
- commun
- Shorts
- devrait
- Spectacles
- significative
- étapes
- simplement
- depuis
- unique
- So
- sur mesure
- Solutions
- quelques
- quelque chose
- Identifier
- spécialiste
- spécialise
- spécifié
- propagation
- stable
- empiler
- mise en scène
- Standard
- Commencer
- j'ai commencé
- Commencez
- Région
- Statut
- étapes
- Étapes
- storage
- Boutique
- de Marketing
- Chaîne
- structure
- tel
- Appareils
- combustion propre
- Système
- table
- Prenez
- prend
- Target
- Tâche
- tâches
- équipes
- Technologie
- télécommunications
- modèle
- modèles
- tester
- que
- qui
- La
- La Source
- L'État
- leur
- Les
- puis
- Là.
- Ces
- des choses
- this
- trois
- Avec
- tout au long de
- fiable
- Des séries chronologiques
- horodatage
- à
- ensemble
- outil
- sujet
- vers
- Train
- qualifié
- Formation
- transformations
- transition
- Voyage
- déclencher
- oui
- deux
- type
- types
- typiquement
- Incertitude
- sous
- comprendre
- unités
- Mises à jour
- téléchargé
- URL
- utilisé
- cas d'utilisation
- d'utiliser
- utilisateurs
- en utilisant
- Plus-value
- Valeurs
- divers
- très
- via
- vision
- Visiter
- visualisation
- marcha
- souhaitez
- était
- Façon..
- façons
- we
- hebdomadaire
- WELL
- Quoi
- quand
- que
- qui
- large
- Large gamme
- sera
- comprenant
- dans les
- sans
- Word
- activités principales
- écrire
- code écrit
- années
- york
- Vous n'avez
- Votre
- zéphyrnet
- Zip