Instruction CREATE MODEL
pour TensorFlow
Pour importer un modèle TensorFlow existant dans BigQuery à partir de Cloud Storage, utilisez l'instruction BigQuery ML CREATE MODEL
avec le type de modèle TensorFlow.
Syntaxe de CREATE MODEL
{CREATE MODEL | CREATE MODEL IF NOT EXISTS | CREATE OR REPLACE MODEL} model_name [OPTIONS(MODEL_TYPE = 'TENSORFLOW', MODEL_PATH = string_value)];
CREATE MODEL
Crée un modèle BigQuery ML dans l'ensemble de données spécifié. Pour les modèles TensorFlow, BigQuery ML importe le modèle TensorFlow existant et le convertit en modèle BigQuery ML. Si le nom du modèle existe, CREATE MODEL
renvoie une erreur.
CREATE MODEL IF NOT EXISTS
Crée un modèle importé uniquement si celui-ci n'existe pas déjà dans l'ensemble de données spécifié.
CREATE OR REPLACE MODEL
Crée un modèle importé et remplace tout modèle existant du même nom dans l'ensemble de données spécifié.
model_name
model_name
correspond au nom du modèle BigQuery ML que vous créez ou remplacez. Le nom du modèle doit être unique pour chaque ensemble de données. Aucun autre modèle, ni table ne peut porter le même nom. Le nom du modèle doit respecter les mêmes règles de dénomination que celles des tables BigQuery. Un nom de modèle peut contenir les éléments suivants :
- Jusqu'à 1 024 caractères
- Des lettres majuscules ou minuscules, des chiffres et des traits de soulignement
model_name
n'est pas sensible à la casse.
Si aucun projet par défaut n'est configuré, ajoutez l'ID du projet au début du nom du modèle au format suivant, en intégrant les accents graves :
`[PROJECT_ID].[DATASET].[MODEL]`
Exemple :
`myproject.mydataset.mymodel`
CREATE MODEL
accepte les options suivantes :
MODEL_TYPE
Syntaxe
MODEL_TYPE = 'TENSORFLOW'
Description
Spécifie le type de modèle. Cette option est obligatoire.
MODEL_PATH
Syntaxe
MODEL_PATH = string_value
Description
Spécifie l'URI Cloud Storage du modèle TensorFlow à importer. Cette option est requise pour les modèles TensorFlow.
string_value
correspond à l'URI d'un bucket Cloud Storage contenant le modèle à importer.
BigQuery ML importe le modèle à partir de Cloud Storage à l'aide des identifiants de l'utilisateur qui a envoyé l'instruction CREATE MODEL
.
Exemple
MODEL_PATH = 'gs://bucket/path/to/saved_model/*'
Entrées compatibles
L'instruction CREATE MODEL
accepte les types de données suivants pour l'étiquette d'entrée et les colonnes de répartition des données.
Types de données compatibles pour les entrées et sorties du modèle TensorFlow
BigQuery ML convertit certaines entrées et sorties du modèle TensorFlow en types BigQuery ML. Certains types d'entrées et sorties du modèle TensorFlow ne sont pas compatibles. Voici les types de données compatibles pour les entrées et sorties du modèle TensorFlow importé :
Types TensorFlow | Compatibilité | BigQuery ML type |
---|---|---|
tf.int8, tf.int16, tf.int32, tf.int64, tf.uint8, tf.uint16, tf.uint32, tf.uint64 |
Compatible | INT64 |
tf.float16, tf.float32, tf.float64, tf.bfloat16 |
Compatible | FLOAT64 |
tf.complex64, tf.complex128 |
Non compatible | Non disponible |
tf.qint8, tf.quint8, tf.qint16, tf.quint16, tf.qint32 |
Non compatible | Non disponible |
tf.bool |
Compatible | BOOL |
tf.string |
Compatible | STRING |
tf.resource |
Non compatible | Non disponible |
tf.variant |
Non compatible | Non disponible |
Limites
Les instructions CREATE MODEL
pour les modèles TensorFlow doivent respecter les règles suivantes :
- Le modèle TensorFlow doit exister avant de pouvoir être importé dans BigQuery ML.
- Les modèles doivent être stockés dans Cloud Storage.
- Les modèles sont figés au moment de la création du modèle.
- Les modèles TensorFlow doivent être au format SavedModel.
- Actuellement, les fonctions suivantes ne sont pas compatibles avec les modèles TensorFlow :
ML.CONFUSION
,ML.EVALUATE
,ML.FEATURE
,ML.ROC_CURVE
,ML.TRAINING_INFO
etML.WEIGHTS
. - La taille des modèles est limitée à 250 Mo.
- Les modèles entraînés à l'aide d'une version de GraphDef antérieure à la version 20 ne sont pas compatibles.
- Les modèles entraînés à l'aide d'une version non publiée de TensorFlow ne sont pas compatibles.
- Seules les opérations TensorFlow principales sont compatibles ; les modèles qui utilisent des opérations tf.contrib ou personnalisées ne sont pas acceptés.
Exemples d'instructions CREATE MODEL
L'exemple suivant crée des modèles nommés mymodel
dans mydataset
dans votre projet par défaut.
Importer un modèle TensorFlow
L'exemple ci-dessous importe un modèle TensorFlow dans BigQuery ML en tant que modèle BigQuery ML. Pour cet exemple, nous supposons qu'il existe un modèle TensorFlow situé à l'emplacement gs://bucket/path/to/saved_model/*
.
CREATE MODEL project_id:mydataset.mymodel
OPTIONS(MODEL_TYPE='TENSORFLOW',
MODEL_PATH="gs://bucket/path/to/saved_model/*")