Ajouter des libellés à des images à l'aide de l'API AutoML Vision Edge

Ce guide de démarrage rapide vous présente les processus suivants :

  • Utiliser AutoML Vision Object Detection pour créer un ensemble de données, entraîner un modèle AutoML Vision Edge personnalisé et effectuer une prédiction
  • Exporter et utiliser votre modèle AutoML Vision Edge

Dans ce guide de démarrage rapide, vous utiliserez l'interface utilisateur (UI) pour interagir avec l'API AutoML Vision et exporter votre modèle AutoML Vision Edge.

Avant de commencer

Avant de pouvoir utiliser AutoML Vision Object Detection, vous devez créer un projet Google Cloud (qui n'est jamais utilisé avec un autre produit AutoML) et activer AutoML Vision Object Detection pour ce projet.

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Activer les API Cloud AutoML and Storage.

    Activer les API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  7. Activer les API Cloud AutoML and Storage.

    Activer les API

Conditions requises pour participer au programme bêta

  1. Vous devez utiliser us-central1 comme région spécifiée pour cette version bêta.

Préparer un ensemble de données

Dans ce guide de démarrage rapide, vous allez utiliser un ensemble de données créé à partir de Open Images Dataset V4. Cet ensemble de données accessible au public intitulé "Salads" se trouve à l'adresse gs://cloud-ml-data/img/openimage/csv/salads_ml_use.csv.

Le format du fichier CSV est le suivant :

TRAINING,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Salad,0.0,0.0954,,,0.977,0.957,,
VALIDATION,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Seafood,0.0154,0.1538,,,1.0,0.802,,
TEST,gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg,Tomato,0.0,0.655,,,0.231,0.839,,
exemple d'image d'ensemble de données
3916261642_0a504acd60_o.jpg

Chaque ligne correspond à un objet localisé dans une image plus grande, chaque objet étant spécifiquement désigné comme données de test, d'entraînement ou de validation. Les trois lignes incluses ici indiquent trois objets distincts situés dans la même image, disponible à l'adresse gs://cloud-ml-data/img/openimage/3/2520/3916261642_0a504acd60_o.jpg. Chaque ligne a une étiquette différente : Salad, Seafood, Tomato. D'autres lignes ont les étiquettes Baked goods ou Cheese.

Des cadres de délimitation sont spécifiés pour chaque image à l'aide du sommet supérieur gauche et du sommet inférieur droit :

  • (0,0) correspond au sommet le plus en haut à gauche.
  • (1,1) correspond au sommet le plus en bas à droite.

Pour la première ligne du haut, les coordonnées (x, y) du sommet supérieur gauche de l'objet étiqueté Salad sont (0.0,0.0954) et celles du sommet inférieur droit de l'objet sont (0.977,0.957).

Pour en savoir plus sur la mise en forme de votre fichier CSV et la configuration minimale requise pour créer un ensemble de données valide, consultez la page Préparer les données d'entraînement.


Créer votre ensemble de données

  1. Accédez à l'interface de détection d'objets AutoML Vision, puis sélectionnez votre projet dans la liste déroulante de la barre de titre.

    La première fois que vous ouvrez l'UI de détection d'objets AutoML Vision, vous devez activer l'API AutoML si elle n'est pas déjà activée.

  2. Lorsque vous y êtes invité, sélectionnez Premiers pas dans la fenêtre pop-up.

    Sélection de l'option "Get started" (Premiers pas)

  3. Vous êtes redirigé vers la page qui répertorie les ensembles de données. Pour créer un ensemble de données, sélectionnez Nouvel ensemble de données.

    Sélection de l'option de création d'un ensemble de données

    Saisissez un nom unique pour l'ensemble de données.

    Sélection d'un nom pour le nouvel ensemble de données

  4. Dans la fenêtre qui s'affiche, saisissez l'emplacement des données d'entraînement à importer.

    Dans la zone de texte Sélectionner un fichier CSV sur Cloud Storage, saisissez le chemin de l'exemple de fichier CSV. Le préfixe gs:// est ajouté automatiquement.

    cloud-ml-data/img/openimage/csv/salads_ml_use.csv

    Vous pouvez également sélectionner Parcourir et accéder au fichier CSV dans l'un de vos buckets Google Cloud Storage.

    Ce guide de démarrage rapide utilise des exemples de données stockés dans un bucket Google Cloud Storage public. Les données d'entraînement sont des exemples d'images JPG annotés avec le cadre de délimitation et le libellé des objets que le modèle doit apprendre à identifier. Pour importer les données d'entraînement dans l'ensemble de données, utilisez un fichier CSV pointant vers les fichiers image (JPEG, PNG, GIF, BMP ou ICO). Pour en savoir plus sur le format et les spécifications d'image, consultez la page Préparer les données d'entraînement.

    image Créer un fichier CSV à importer dans un ensemble de données
  5. Sélectionnez Importer.

    La colonne État de l'ensemble de données affiche Running:importing images pendant l'importation des images. Ce processus ne prend que quelques minutes.

Une fois les données d'entraînement importées, la colonne État indique Success:Creating dataset. L'interface utilisateur affiche le paramètre ID généré pour l'ensemble de données (et utilisé pour les appels de l'API AutoML), ainsi que le nombre d'éléments importés.

image Répertorier les ensembles de données

Si vous rencontrez des problèmes lors de l'importation des images, l'état Warning: Importing images s'affiche. Sélectionnez le nom de l'ensemble de données, puis Détails pour afficher les erreurs liées à l'importation d'une image spécifique.

Image illustrant une erreur d'importation

Entraîner le modèle

  1. Une fois l'ensemble de données créé et traité, sélectionnez l'onglet Train (Entraînement) pour commencer l'entraînement du modèle.

    Sélection de l'onglet Train (Entraîner)

  2. Sélectionnez Démarrer l'entraînement pour continuer.

    option "Entraîner un nouveau modèle"

    Les options d'entraînement s'ouvrent dans une fenêtre latérale.

  3. Dans la section Define your model (Définir votre modèle), modifiez le nom du modèle et sélectionnez Edge comme type de modèle. Après avoir choisi d'entraîner un modèle Edge, sélectionnez Continue (Continuer).

    image de la case d'option "Entraîner un modèle Edge"

  4. Dans la section suivante, Optimize model for (Optimiser le modèle pour), sélectionnez l'option Best trade-off (Meilleur compromis) par défaut. Après avoir sélectionné les critères d'optimisation, sélectionnez Continue (Continuer).

    image de la case d'option "Meilleur compromis"

  5. Dans la section suivante, Set a node hour budget (Définir un budget pour une heure de nœud), utilisez le budget d'heures de nœud recommandé (24).

    section "Définir le budget du nœud"

  6. Sélectionnez Démarrer l'entraînement pour commencer l'entraînement de modèle.

    L'entraînement du modèle commence et prend environ une heure. Il peut s'arrêter avant l'heure de nœud que vous avez sélectionnée. Le service vous enverra un e-mail à la fin de l'entraînement ou si des erreurs se sont produites.

Une fois l'entraînement terminé, vous pouvez consulter les métriques d'évaluation, de même que tester et utiliser le modèle.

Cliquez sur l'onglet Evaluate (Évaluer) pour en savoir plus sur les scores F1, Précision et Rappel.

Sélectionnez un libellé sous Filtrer les libellés pour obtenir des informations sur les vrais positifs, les faux négatifs et les faux positifs.

Effectuer une prédiction

Une fois l'entraînement terminé, votre modèle doit être déployé manuellement pour pouvoir effectuer des prédictions en ligne avec le modèle.

Sélectionnez l'onglet Test et utilisation pour déployer votre modèle et annuler son déploiement. La page Test & Use (Tester et utiliser) contient également des instructions sur l'envoi d'une image à votre modèle pour une prédiction. Des exemples sont également à votre disposition dans la section Annoter des images.

Exporter et utiliser le modèle Edge

La dernière étape de l'utilisation d'un modèle AutoML Vision Edge consiste à exporter (optimiser et télécharger) et à utiliser ce modèle.

Vous pouvez exporter et utiliser vos modèles pour la prédiction sur les appareils Edge de plusieurs façons.

Dans ce guide de démarrage rapide, vous allez utiliser Tensorflow Lite (TF Lite) à titre d'exemple. Les modèles TF Lite sont faciles à employer et conçus pour de nombreux cas d'utilisation.

  1. Sous Utiliser votre modèle, sélectionnez l'option TF Lite.

    Exporter un modèle TF Lite

  2. Dans la fenêtre latérale qui s'affiche, indiquez un emplacement Google Cloud Storage pour votre modèle exporté.

    Après avoir défini un emplacement de stockage, sélectionnez Export (Exporter) pour exporter un package TF Lite dans votre bucket de stockage Cloud Storage. Le processus d'exportation prend généralement plusieurs minutes.

    Choix d'un emplacement de stockage pour l'image de modèle exportée

  3. Une fois l'exportation terminée, cliquez sur le lien Ouvrir dans Google Cloud Storage pour accéder au dossier de destination Google Cloud Storage dans la console Google Cloud Platform.

Dans l'emplacement de destination Google Cloud Storage, vous trouverez un dossier nommé avec l'horodatage et le format du modèle. Celui-ci contient les fichiers suivants :

  • Un fichier tflite (model.tflite)
  • Un fichier de dictionnaire (dict.txt)
  • Un fichier de métadonnées (tflite_metadata.json)

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

Étape suivante

Ces fichiers vous permettent de suivre des tutoriels sur les appareils Android, les appareils iOS ou Raspberry Pi 3.

Autres options pour utiliser le modèle :

  • Vous pouvez également exporter le modèle sous la forme d'un modèle SavedModel TensorFlow et l'utiliser avec un conteneur Docker dans l'onglet Conteneur. Consultez le tutoriel sur les conteneurs pour savoir comment procéder à l'exportation vers un conteneur.
  • L'onglet Appareils Edge permet d'exporter le modèle pour l'exécuter sur Edge TPU. Pour utiliser le modèle, consultez la documentation officielle Edge TPU.