Présentation des algorithmes intégrés

Cette page fournit une présentation de l'entraînement à l'aide d'algorithmes intégrés. Grâce aux algorithmes intégrés sur AI Platform Training, vous pouvez exécuter des tâches d'entraînement sur vos données, sans avoir à écrire le code d'une application d'entraînement. Vous pouvez envoyer vos données d'entraînement, sélectionner un algorithme, puis laisser AI Platform Training effectuer les tâches de prétraitement et d'entraînement. Une fois ces étapes effectuées, vous pouvez facilement déployer votre modèle et obtenir des prédictions sur AI Platform Training.

Fonctionnement de l'entraînement à l'aide d'algorithmes intégrés

AI Platform Training exécute la tâche d'entraînement sur les ressources de calcul présentes dans le cloud. Voici le processus global :

  1. Comparez les algorithmes intégrés disponibles pour déterminer s'ils correspondent à votre ensemble de données et à votre cas d'utilisation spécifiques.
  2. Mettez en forme vos données d'entrée pour l'entraînement à l'aide de l'algorithme intégré. Vous devez envoyer vos données sous forme de fichier CSV avec la ligne d'en-tête supprimée et la colonne cible définie comme première colonne. Le cas échéant, respectez toutes les exigences supplémentaires de mise en forme spécifiques à l'algorithme intégré que vous utilisez.
  3. Créez un bucket Cloud Storage où AI Platform Training peut stocker vos résultats d'entraînement, si vous n'en possédez pas déjà un.
  4. Sélectionnez des options pour personnaliser votre tâche d'entraînement. Effectuez d'abord des sélections pour configurer la tâche d'entraînement globale, puis effectuez d'autres sélections pour configurer l'algorithme de manière spécifique. Vous pouvez éventuellement effectuer des sélections supplémentaires pour configurer les réglages d'hyperparamètres de votre tâche.
    • Pour la tâche d'entraînement globale, sélectionnez un nom de tâche, l'algorithme intégré à utiliser, la ou les machines à utiliser, la région dans laquelle la tâche doit être exécutée, ainsi que l'emplacement du bucket Cloud Storage où vous souhaitez qu'AI Platform Training stocke vos résultats d'entraînement.
    • Pour les sélections propres à l'algorithme, vous pouvez activer AI Platform Training pour effectuer un prétraitement automatique sur votre ensemble de données. Vous pouvez également spécifier des arguments tels que le taux d'apprentissage, les pas d'entraînement et la taille du lot.
    • Pour les réglages d'hyperparamètres, vous pouvez sélectionner une métrique correspondant à l'objectif, telle que l'optimisation de la précision des prédictions de votre modèle ou la réduction de la perte d'entraînement. De plus, vous pouvez régler des hyperparamètres spécifiques et définir des plages pour leurs valeurs.
  5. Envoyez la tâche d'entraînement et consultez les journaux pour surveiller sa progression et son état.
  6. Lorsque votre tâche d'entraînement est terminée, vous pouvez déployer votre modèle entraîné sur AI Platform Training pour configurer un serveur de prédiction et obtenir des prédictions sur de nouvelles données.

Limites

Veuillez noter les limitations suivantes relatives à l'entraînement à l'aide d'algorithmes intégrés :

  • L'entraînement distribué n'est pas compatible. Pour exécuter une tâche d'entraînement distribuée sur AI Platform Training, vous devez créer une application d'entraînement.
  • Les tâches d'entraînement envoyées via Google Cloud Console utilisent uniquement les anciens types de machines. Vous pouvez utiliser des types de machines Compute Engine avec des tâches d'entraînement envoyées via gcloud ou la bibliothèque cliente des API Google pour Python. Pour en savoir plus, consultez la section concernant les types de machines pour l'entraînement.
  • Les GPU sont compatibles avec certains algorithmes. Consultez la comparaison détaillée de tous les algorithmes intégrés pour plus d'informations.
  • Les machines multi-GPU ne permettent pas d'accroître la vitesse de l'entraînement à l'aide d'algorithmes intégrés. Si vous utilisez plusieurs GPU, sélectionnez des machines avec un seul GPU.
  • Les TPU ne sont pas compatibles avec l'entraînement à l'aide d'algorithmes intégrés tabulaires. Vous devez créer une application d'entraînement. Découvrez comment exécuter une tâche d'entraînement avec des TPU.

Toute autre limitation pour des algorithmes intégrés spécifiques est indiquée dans les guides relatifs à chaque algorithme.

Réglages d'hyperparamètres

Les réglages d'hyperparamètres sont compatibles avec l'entraînement à l'aide d'algorithmes intégrés. Spécifiez d'abord une métrique correspondant à l'objectif et indiquez si elle doit être minimisée ou maximisée. Vous pouvez optimiser la précision de votre modèle pour la classification ou minimiser votre perte d'entraînement. Répertoriez ensuite les hyperparamètres que vous souhaitez ajuster, ainsi qu'une valeur cible pour chaque hyperparamètre.

Lorsque vous envoyez votre tâche d'entraînement avec des réglages d'hyperparamètres, AI Platform Training exécute plusieurs essais, puis suit et ajuste les hyperparamètres après chaque essai. Une fois la tâche de réglage d'hyperparamètres terminée, AI Platform Training rapporte les valeurs correspondant à la configuration la plus efficace de vos hyperparamètres, et fournit un résumé de chaque essai.

En savoir plus sur le réglage des hyperparamètres sur AI Platform Training

Présentation des algorithmes

Les algorithmes intégrés vous aident à entraîner des modèles pour divers cas d'utilisation généralement résolus par la classification et la régression. Les algorithmes intégrés suivants sont disponibles pour l'entraînement sur AI Platform Training :

  • Algorithme de l'apprenant linéaire
  • Large et profond
  • TabNet
  • XGBoost
  • Classification d'images
  • Détection d'objets

Algorithme de l'apprenant linéaire

L'algorithme intégré de l'apprenant linéaire est utilisé pour la régression logistique, la classification binaire et la classification multiclasse. AI Platform Training utilise une mise en œuvre basée sur TensorFlow Estimator.

Un modèle d'apprenant linéaire attribue une pondération à chaque caractéristique d'entrée et additionne les pondérations pour prédire une valeur numérique cible. Pour la régression logistique, cette valeur est convertie en une valeur comprise entre 0 et 1. Ce type de modèle simple est facile à interpréter, car vous pouvez comparer les pondérations des caractéristiques pour déterminer quelles caractéristiques d'entrée ont un impact significatif sur vos prédictions.

En savoir plus sur le fonctionnement des modèles linéaires à grande échelle.

Large et profond

L'algorithme intégré large et profond est utilisé pour les problèmes de classification et de régression à grande échelle, tels que les systèmes de recommandation, les problèmes de recherche et de classement. AI Platform Training utilise une mise en œuvre basée sur TensorFlow Estimator.

Ce type de modèle combine un modèle linéaire qui apprend et "mémorise" une large gamme de règles avec un réseau neuronal profond qui "généralise" les règles et les applique correctement à des caractéristiques similaires dans de nouvelles données.

En savoir plus sur l'apprentissage à l'aide des modèles larges et profonds

TabNet

L'algorithme intégré TabNet est utilisé pour les problèmes de classification et de régression sur des données tabulaires. AI Platform Training utilise une mise en œuvre basée sur TensorFlow.

L'algorithme intégré TabNet fournit également des attributions de caractéristiques permettant d'interpréter le comportement du modèle et d'expliquer ses prédictions.

Apprenez-en plus sur TabNet en tant que nouvel algorithme intégré.

XGBoost

XGBoost (eXtreme Gradient Boosting) est un framework qui met en œuvre un algorithme d'optimisation de gradient. XGBoost permet un apprentissage supervisé efficace pour les tâches de classification, de régression et de classement. L'entraînement XGBoost est basé sur des ensembles d'arbres de décision, qui combinent les résultats de plusieurs modèles de classification et de régression.

En savoir plus sur le fonctionnement de XGBoost

Classification d'images

L'algorithme intégré de détection d'images utilise les modèles de classification d'images TensorFlow. Vous pouvez entraîner un modèle de classification d'images basé sur une implémentation TensorFlow d'EfficientNet ou de ResNet.

Détection d'objets

L'algorithme intégré de détection d'objets utilise l'API TensorFlow Object Detection pour créer un modèle capable d'identifier plusieurs objets dans une seule image.

Comparaison des algorithmes intégrés

Le tableau suivant fournit une comparaison rapide des algorithmes intégrés :

Nom de l'algorithme Modèle ML utilisé Type de problème Exemples de cas d'utilisation Accélérateurs compatibles pour l'entraînement
Algorithme de l'apprenant linéaire TensorFlow Estimator
LinearClassifier et LinearRegressor
Classification, régression Prévision des ventes GPU
Large et profond TensorFlow Estimator
DNNLinearCombinedClassifier, DNNLinearCombinedEstimator et DNNLinearCombinedRegressor
Classification, régression, classement Systèmes de recommandation, recherche GPU
TabNet TensorFlow Estimator Classification, régression Prévision du taux de clics publicitaires (CTR), détection des fraudes GPU
XGBoost XGBoost Classification, régression Prévision du taux de clics publicitaires (CTR) GPU (compatible uniquement avec la version distribuée de l'algorithme)
Classification d'images Modèles de classification d'images TensorFlow Classification Classification d'images GPU, TPU
Détection d'objets API TensorFlow Object Detection Détection d'objets Détection d'objets dans des scènes d'images complexes GPU, TPU

Conteneurs d'algorithmes

Lorsque vous envoyez la tâche d'entraînement à AI Platform Training, vous sélectionnez l'algorithme en spécifiant l'URI dans le conteneur Docker correspondant hébergé dans Container Registry. Les algorithmes intégrés sont disponibles via les conteneurs suivants :

Algorithme URI de Container Registry
Algorithme de l'apprenant linéaire gcr.io/cloud-ml-algos/linear_learner_cpu:latest
gcr.io/cloud-ml-algos/linear_learner_gpu:latest
Large et profond gcr.io/cloud-ml-algos/wide_deep_learner_cpu:latest
gcr.io/cloud-ml-algos/wide_deep_learner_gpu:latest
TabNet gcr.io/cloud-ml-algos/tab_net:latest
XGBoost gcr.io/cloud-ml-algos/boosted_trees:latest
gcr.io/cloud-ml-algos/xgboost_dist:latest
Classification d'images gcr.io/cloud-ml-algos/image_classification:latest
Détection d'objets gcr.io/cloud-ml-algos/image_object_detection:latest

Étape suivante