Qu'est-ce que BigQuery ML ?

BigQuery ML permet de créer et d'exécuter des modèles de machine learning à l'aide de requêtes GoogleSQL. BigQuery ML démocratise le machine learning en permettant aux utilisateurs de SQL de mettre à profit leurs propres compétences et outils SQL pour créer des modèles. BigQuery ML accélère le développement en éliminant le besoin de déplacer des données.

La fonctionnalité BigQuery ML est intégrée aux outils suivants :

  • Google Cloud Console
  • Outil de ligne de commande bq
  • API REST BigQuery
  • Un outil externe tel qu'un ordinateur ultraportable Jupyter ou une plate-forme de veille stratégique

Le machine learning sur des ensembles de données volumineux nécessite une programmation importante et une connaissance approfondie des structures ML. Ces exigences restreignent le développement de solutions à un très petit nombre de personnes au sein de chaque entreprise et excluent les analystes de données qui comprennent les données mais qui ont des connaissances limitées en matière de machine learning et qui ne sont pas des experts en programmation.

BigQuery ML permet aux analystes de données d'utiliser le machine learning avec leurs propres compétences et outils SQL. Ils peuvent utiliser BigQuery ML pour créer et évaluer des modèles de ML dans BigQuery. Les analystes n'ont pas besoin d'exporter de petites quantités de données vers des feuilles de calcul ou d'autres applications, ni d'attendre des ressources limitées de la part de l'équipe de data scientists.

Modèles compatibles

Un modèle dans BigQuery ML représente ce qu'un système de machine learning (ML) a appris à partir des données d'entraînement. BigQuery ML est compatible avec les types de modèles suivants :

Modèles entraînés en interne

Les modèles suivants sont intégrés à BigQuery ML :

  • Régression linéaire : permet d'effectuer des prévisions. Par exemple, ce modèle prévoit les ventes d'un article un jour donné. Les étiquettes ont une valeur réelle (elles ne peuvent pas avoir la valeur "+/-Infinity" ni "NaN").
  • Régression logistique : permet de classer au moins deux valeurs possibles (par exemple, si une entrée est une "valeur faible", une "valeur moyenne" ou une "valeur élevée"). Chaque étiquette peut contenir jusqu'à 50 valeurs uniques.
  • Clustering des k-moyennes : permet d'effectuer la segmentation des données. Par exemple, ce modèle identifie des segments de clientèle. L’algorithme k-moyennes étant une technique d'apprentissage non supervisée, l'entraînement ou l'évaluation du modèle ne nécessitent pas d'étiquettes ni de données fractionnées.
  • Factorisation matricielle : permet de créer des systèmes de recommandation de produits. Vous pouvez créer des recommandations de produits à l'aide de l'historique du comportement des clients, des transactions et des avis sur les produits, puis utiliser ces recommandations pour proposer des expériences client personnalisées.
  • Analyse des composants principaux (PCA) : processus consistant à calculer les composants principaux et à les utiliser pour effectuer un changement de base sur les données. Il est couramment utilisé pour réduire la dimensionnalité en ne projetant chaque point de données que sur les premiers composants principaux afin d'obtenir des données de dimension inférieure tout en conservant autant que possible les variations de données.
  • Série temporelle : permet d'effectuer des prévisions de séries temporelles. Cette fonctionnalité vous permet de créer des millions de modèles de série temporelle et de les utiliser pour effectuer des prévisions. Le modèle gère automatiquement les anomalies, la saisonnalité et les jours fériés.

Modèles entraînés en externe

Les modèles suivants sont externes à BigQuery ML et entraînés dans Vertex AI :

  • Réseau de neurones profond (DNN, Deep Neural Network) : permet de créer des réseaux de neurones profonds basés sur TensorFlow pour les modèles de classification et de régression.
  • Large et profond : utile pour les problèmes génériques de régression et de classification à grande échelle avec des entrées éparses (caractéristiques catégorielles avec un grand nombre de valeurs de caractéristiques possibles), telles que les systèmes de recommandation, de recherche et de classement.
  • Autoencodeur : permet de créer des modèles basés sur TensorFlow avec des représentations de données creuses. Les modèles peuvent être utilisés dans BigQuery ML pour des tâches telles que la détection d'anomalies non supervisée et la réduction de la dimensionnalité non linéaire.
  • Arbre de décision à boosting : permet de créer des modèles de classification et de régression basés sur XGBoost.
  • Forêt d'arbres décisionnels : sert à créer plusieurs arbres de décision de la méthode d'apprentissage pour la classification, la régression et d'autres tâches au moment de l'entraînement.
  • Vertex AI AutoML Tables : service de ML supervisé qui utilise des données tabulaires pour créer et déployer des modèles de ML sur des données structurées rapidement et à grande échelle.

Modèles distants

Vous pouvez créer des modèles distants dans BigQuery avec un point de terminaison Vertex AI ou une option remote_service_type.

Modèles importés

BigQuery ML vous permet d'importer des modèles personnalisés entraînés en dehors de BigQuery, puis d'effectuer des prédictions dans BigQuery. Les modèles suivants peuvent être importés dans BigQuery à partir de Cloud Storage :

  • ONNX (Open Neural Network Exchange) : format standard ouvert permettant de représenter des modèles de ML. ONNX permet de rendre des modèles entraînés avec des frameworks de ML populaires tels que PyTorch et scikit-learn disponibles dans BigQuery ML.
  • TensorFlow : bibliothèque logicielle Open Source gratuite pour le ML et l'intelligence artificielle. TensorFlow peut être utilisé dans un large éventail de tâches, mais il est plus particulièrement destiné à l'entraînement et à l'inférence de réseaux de neurones profonds. Vous pouvez charger des modèles TensorFlow préalablement entraînés dans BigQuery en tant que modèles BigQuery ML, puis effectuer des prédictions dans BigQuery ML.
  • TensorFlow Lite : version légère de TensorFlow permettant un déploiement sur des appareils mobiles, des microcontrôleurs et d'autres appareils de périphérie. TensorFlow optimise les modèles TensorFlow existants pour réduire la taille des modèles et accélérer l'inférence.
  • XGBoost : bibliothèque d'optimisation de gradient distribuée optimisée pour être hautement efficace, flexible et portable. Elle met en œuvre des algorithmes de ML sous le framework Gradient Boosting.

Dans BigQuery ML, vous pouvez utiliser un modèle avec des données provenant de plusieurs ensembles de données BigQuery pour les opérations d'entraînement et de prédiction.

Guide de sélection des modèles

Diagramme pour vous aider à choisir un modèle de ML pour votre tâcheTélécharger un aide-mémoire

Avantages de BigQuery ML

BigQuery ML présente les avantages suivants par rapport aux autres méthodes d'utilisation du ML avec un entrepôt de données cloud :

  • BigQuery ML démocratise l'utilisation du ML en permettant aux analystes de données, les principaux utilisateurs des entrepôts de données, de créer et d'exécuter des modèles à l'aide de leurs propres outils et feuilles de calcul de veille stratégique. Les analyses prédictives peuvent guider la prise de décisions commerciales dans l'ensemble de l'entreprise.
  • Il n'est pas nécessaire de programmer une solution de ML à l'aide de Python ou Java. Les modèles sont entraînés et accessibles dans BigQuery à l'aide de SQL, un langage connu des analystes de données.

  • BigQuery ML accélère l'innovation et le développement des modèles en évitant d'exporter des données depuis l'entrepôt de données. Au lieu de cela, BigQuery ML amène le ML aux données. BigQuery ML présente les avantages suivants par rapport à l'exportation et au reformatage des données :

    • Réduit la complexité, car moins d'outils sont nécessaires.
    • Accroît la vitesse de production, car le déplacement et le formatage de grandes quantités de données pour les frameworks ML basés sur Python ne sont pas nécessaires pour l'entraînement de modèles dans BigQuery.

    Pour en savoir plus, regardez la vidéo Comment accélérer le développement du machine learning avec BigQuery ML.

BigQuery ML et Vertex AI

BigQuery ML s'intègre à Vertex AI, la plate-forme IA/ML de bout en bout de Google Cloud. Lorsque vous enregistrez vos modèles BigQuery ML dans le registre de modèles Vertex AI, vous pouvez les déployer sur des points de terminaison pour la prédiction en ligne.

Pour en savoir plus, regardez la vidéo Comment simplifier les modèles d'IA avec Vertex AI et BigQuery ML.

Régions où le service est disponible

BigQuery ML est compatible avec les mêmes régions que BigQuery. Pour en savoir plus, consultez la page Emplacements BigQuery ML.

Tarifs

Les modèles BigQuery ML sont stockés dans des ensembles de données BigQuery tels que des tables et des vues. Pour en savoir plus sur la tarification de BigQuery ML, consultez la page Tarifs de BigQuery ML.

Pour en savoir plus sur la tarification du stockage BigQuery, consultez la section Tarifs de stockage. Pour en savoir plus sur la tarification des requêtes BigQuery ML, consultez la section Tarifs des requêtes.

Quotas

Outre les limites spécifiques à BigQuery ML, les requêtes qui utilisent les fonctions BigQuery ML et les instructions CREATE MODEL sont soumises aux quotas et aux limites des tâches de requête BigQuery.

Limites

Étapes suivantes