Créer un modèle de prévision AutoML avec Vertex AI

Créer un modèle de prévision AutoML avec Vertex AI

À propos de cet atelier de programmation

subjectDernière mise à jour : juin 25, 2021
account_circleRédigé par Karl Weinmeister

1. Présentation

Au cours de cet atelier, vous allez :

  • Créer un ensemble de données géré
  • Importer des données depuis un bucket Google Cloud Storage
  • Mettre à jour les métadonnées de colonne pour une utilisation appropriée avec AutoML
  • Entraîner un modèle à l'aide d'options telles qu'un budget et un objectif d'optimisation
  • Effectuer des prédictions par lot en ligne

2. Examiner les données

Cet atelier utilise les données de l'ensemble de données sur les ventes de boissons alcoolisées dans l'Iowa issues des ensembles de données publics BigQuery. Cet ensemble de données se compose des achats de boissons alcoolisées en gros dans l'État américain de l'Iowa depuis 2012.

Pour consulter les données brutes d'origine, sélectionnez Afficher l'ensemble de données. Pour accéder à la table, accédez au projet bigquery-public-datasets dans la barre de navigation de gauche, puis à l'ensemble de données iowa_liquor_sales et enfin à la table sales. Vous pouvez sélectionner Aperçu pour afficher une sélection de lignes de l'ensemble de données.

f07c88368e7445c6.png

Pour cet atelier, nous avons déjà effectué un prétraitement de base des données afin de regrouper les achats par jour. Nous utiliserons un extrait CSV de la table BigQuery. Voici les colonnes du fichier CSV :

  • ds : date
  • y : somme de tous les achats effectués ce jour-là, en dollars
  • holiday : booléen indiquant si la date est un jour férié aux États-Unis
  • id : identifiant de série temporelle (pour prendre en charge plusieurs séries temporelles, par exemple par magasin ou par produit). Dans ce cas, nous allons simplement prévoir le nombre total d'achats dans une série temporelle. L'ID est donc défini sur 0 pour chaque ligne.

3. Importer des données

Étape 1 : Accédez aux ensembles de données Vertex AI

Accédez à Ensembles de données dans le menu Vertex AI de la barre de navigation de gauche de la console Cloud.

d8f26bfce50bfdb5.png

Étape 2 : Créez un ensemble de données

Créez un ensemble de données en sélectionnant Données tabulaires, puis le type de problème Prévision. Choisissez le nom "iowa_daily" ou un autre nom de votre choix.

4efeaebfd7845b9c.png

Étape 3 : Importer les données

L'étape suivante consiste à importer des données dans l'ensemble de données. Sélectionnez l'option "Sélectionner un fichier CSV depuis Cloud Storage". Accédez ensuite au fichier CSV dans le bucket AutoML Demo Alpha et collez automl-demo-240614-lcm/iowa_liquor/iowa_daily.csv.

4. Entraîner le modèle

Étape 1 : Configurez les caractéristiques du modèle

Après quelques minutes, AutoML vous informera que l'importation est terminée. À ce stade, vous pouvez configurer les caractéristiques du modèle.

  • Sélectionnez la colonne d'identifiant de série temporelle à définir sur id. Nous n'avons qu'une seule série temporelle dans notre ensemble de données, il s'agit donc d'une formalité.
  • Sélectionnez la colonne "Heure" à définir sur ds.

Sélectionnez ensuite Générer des statistiques. Une fois le processus terminé, les statistiques % de valeurs manquantes et Valeurs distinctes s'affichent. Ce processus peut prendre quelques minutes. Vous pouvez donc passer à l'étape suivante si vous le souhaitez.

Étape 2 : Entraîner le modèle

Sélectionnez Entraîner le modèle pour commencer le processus d'entraînement. Assurez-vous qu'AutoML est sélectionné, puis cliquez sur Continuer.

5028ec6f242dfa6a.png

Étape 3 : Définir le modèle

  • Définissez la colonne cible sur y. Il s'agit de la valeur que nous prédisons.
  • Si vous ne l'avez pas déjà fait, définissez la colonne Identifiant de la série sur id et la colonne Horodatage sur ds.
  • Définissez la précision des données sur Jours et l'horizon de prévision sur 7. Ce champ spécifie le nombre de périodes que le modèle peut prédire à l'avenir.
  • Définissez la période de contexte sur 7 jours. Le modèle utilisera les données des 30 jours précédents pour faire une prédiction. Il existe des compromis entre les fenêtres plus courtes et plus longues. En général, il est recommandé de sélectionner une valeur comprise entre 1 et 10 fois l'horizon de prévision.
  • Cochez la case Exporter l'ensemble de données de test vers BigQuery. Vous pouvez le laisser vide. Un ensemble de données et une table seront automatiquement créés dans votre projet (ou vous pouvez spécifier l'emplacement de votre choix).
  • Sélectionnez Continuer.

8d2f34779ba49bb1.png

Étape 4 : Définissez les options d'entraînement

Dans cette étape, vous pouvez spécifier plus en détail comment vous souhaitez entraîner le modèle.

  • Définissez la colonne holiday sur Available (Disponible) au moment de la prédiction, car nous savons à l'avance si une date donnée est un jour férié.
  • Définissez l'objectif d'optimisation sur MAE. L'erreur absolue moyenne (MAE) est plus résistante aux valeurs aberrantes que l'erreur quadratique moyenne. Étant donné que nous travaillons avec des données d'achat quotidiennes qui peuvent présenter de fortes fluctuations, la MAE est une métrique appropriée.
  • Sélectionnez Continuer.

9557c92be32a1987.png

Étape 5 : Lancez l'entraînement

Définissez le budget de votre choix. Dans ce cas, 1 nœud-heure suffit pour entraîner le modèle. Commencez ensuite le processus d'entraînement.

Étape 6 : Évaluer le modèle

Le processus d'entraînement peut prendre une à deux heures (y compris le temps de configuration supplémentaire). Vous recevrez un e-mail une fois l'entraînement terminé. Lorsque le modèle est prêt, vous pouvez afficher sa précision.

5. Prédiction

Étape 1 : Examiner les prédictions sur les données de test

Accédez à la console BigQuery pour afficher les prédictions sur les données de test. Dans votre projet, un ensemble de données est automatiquement créé avec le schéma de dénomination suivant : export_evaluated_data_items + <nom du modèle> + <code temporel>. Dans cet ensemble de données, vous trouverez la table evaluated_data_items pour examiner les prédictions.

Ce tableau comporte deux nouvelles colonnes :

  • predicted_on_[date column]: date à laquelle la prédiction a été effectuée. Par exemple, si predicted_on_ds est le 4/11 et que ds est le 8/11, nous prévoyons 4 jours à l'avance.
  • predicted_[target column].tables.value : valeur prédite

9800c7c67d93db03.png

Étape 2 : Effectuez des prédictions par lot

Enfin, vous devez utiliser votre modèle pour faire des prédictions.

Le fichier d'entrée contient des valeurs vides pour les dates à prédire, ainsi que des données historiques :

ds

jour férié

id

y

15/05/20

0

0

1751315.43

16/05/20

0

0

0

17/05/2020

0

0

0

18/05/20

0

0

1612066.43

19/05/2020

0

0

1773885.17

20/05/2020

0

0

1487270.92

21/05/20

0

0

1024051.76

22/05/20

0

0

1471736.31

23/05/2020

0

0

<empty>

24/05/20

0

0

<empty>

25/05/2020

1

0

<empty>

26/05/20

0

0

<empty>

27/05/20

0

0

<empty>

28/05/2020

0

0

<empty>

29/05/20

0

0

<empty>

Vous pouvez créer une prédiction par lot à partir de l'élément Prédictions par lot dans la barre de navigation de gauche d'AI Platform (Unifiée).

Un exemple de fichier d'entrée est créé pour vous dans un bucket de stockage : automl-demo-240614-lcm/iowa_liquor/iowa_daily_automl_predict.csv

Vous pouvez fournir l'emplacement de ce fichier source. Vous pouvez ensuite choisir d'exporter vos prédictions vers un emplacement Cloud Storage au format CSV ou vers BigQuery. Pour cet atelier, sélectionnez BigQuery, puis choisissez l'ID de votre projet Google Cloud.

22e808dd5cbd4224.png

Le processus de prédiction par lot prendra plusieurs minutes. Une fois la tâche terminée, vous pouvez cliquer dessus pour afficher les détails, y compris l'emplacement d'exportation. Dans BigQuery, vous devrez accéder au projet, à l'ensemble de données ou à la table dans la barre de navigation de gauche pour accéder aux prédictions.

La tâche créera deux tables différentes dans BigQuery. L'un contiendra les lignes comportant des erreurs et l'autre les prédictions. Voici un exemple de résultat du tableau "Prédictions" :

9ead59dcc9ad1521.png

Étape 3 : Conclusion

Félicitations, vous avez créé et entraîné un modèle de prévision avec AutoML. Dans cet atelier, nous avons abordé l'importation de données, la création de modèles et la prédiction.

Vous êtes prêt à créer votre propre modèle de prévision.