Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CREATE MODEL
Rubriques
Prérequis
Avant d'utiliser l'CREATEMODELinstruction, remplissez les conditions requises dansConfiguration du cluster pour l'utilisation d'Amazon Redshift ML. Vous trouverez ci-dessous un résumé général des étapes requises.
Créez un cluster Amazon Redshift à l'aide de la console de AWS gestion ou de l'interface de ligne de AWS commande ()AWS CLI.
Attachez la politique AWS Identity and Access Management (IAM) lors de la création du cluster.
Pour autoriser Amazon Redshift et SageMaker assumer le rôle d'interagir avec d'autres services, ajoutez la politique de confiance appropriée au IAM rôle.
Pour plus de détails sur le IAM rôle, la politique de confiance et les autres conditions préalables, consultezConfiguration du cluster pour l'utilisation d'Amazon Redshift ML.
Vous trouverez ci-dessous différents cas d'utilisation de la CREATE MODEL déclaration.
Privilèges requis
Les privilèges suivants sont requis pour CREATE MODEL :
Superuser
Utilisateurs ayant le CREATE MODEL privilège
Rôles GRANT CREATE MODEL privilégiés
Contrôle des coûts
Amazon Redshift ML utilise les ressources existantes du cluster pour créer des modèles de prédiction, de sorte que vous n’avez pas à payer de frais supplémentaires. Cependant, des coûts supplémentaires peuvent s’appliquer si vous devez redimensionner votre cluster ou si vous souhaitez entraîner vos modèles. Amazon Redshift ML utilise Amazon SageMaker pour entraîner des modèles, ce qui entraîne un coût supplémentaire. Il existe des moyens de contrôler les coûts supplémentaires, par exemple en limitant la durée maximale de l’entraînement ou en limitant le nombre d’exemples d’entraînement utilisés pour entraîner votre modèle. Pour obtenir plus d’informations, consultez Costs for using Amazon Redshift ML (Coûts d’utilisation d’Amazon Redshift ML).
Complet CREATE MODEL
Les options de base de la CREATE MODEL syntaxe complète sont résumées ci-dessous.
CREATEMODELSyntaxe complète
Voici la syntaxe complète de l'CREATEMODELinstruction.
Important
Lorsque vous créez un modèle à l'aide de l'CREATEMODELinstruction, suivez l'ordre des mots-clés dans la syntaxe ci-dessous.
CREATE MODEL model_name FROM { table_name | ( select_statement ) | 'job_name' } [ TARGET column_name ] FUNCTION function_name [ ( data_type [, ...] ) ] [ RETURNS data_type ] -- supported only for BYOM [ SAGEMAKER 'endpoint_name'[:'model_name']] -- supported only for BYOM remote inference IAM_ROLE { default | 'arn:aws:iam::<account-id>:role/<role-name>' } [ AUTO ON / OFF ] -- default is AUTO ON [ MODEL_TYPE { XGBOOST | MLP | LINEAR_LEARNER | KMEANS | FORECAST } ] -- not required for non AUTO OFF case, default is the list of all supported types -- required for AUTO OFF [ PROBLEM_TYPE ( REGRESSION | BINARY_CLASSIFICATION | MULTICLASS_CLASSIFICATION ) ] -- not supported when AUTO OFF [ OBJECTIVE ( 'MSE' | 'Accuracy' | 'F1' | 'F1_Macro' | 'AUC' | 'reg:squarederror' | 'reg:squaredlogerror'| 'reg:logistic'| 'reg:pseudohubererror' | 'reg:tweedie' | 'binary:logistic' | 'binary:hinge', 'multi:softmax' | 'RMSE' | 'WAPE' | 'MAPE' | 'MASE' | 'AverageWeightedQuantileLoss' ) ] -- for AUTO ON: first 5 are valid -- for AUTO OFF: 6-13 are valid -- for FORECAST: 14-18 are valid [ PREPROCESSORS 'string' ] -- required for AUTO OFF, when it has to be 'none' -- optional for AUTO ON [ HYPERPARAMETERS { DEFAULT | DEFAULT EXCEPT ( Key 'value' (,...) ) } ] -- support XGBoost hyperparameters, except OBJECTIVE -- required and only allowed for AUTO OFF -- default NUM_ROUND is 100 -- NUM_CLASS is required if objective is multi:softmax (only possible for AUTO OFF) [ SETTINGS ( S3_BUCKET 'amzn-s3-demo-bucket', | -- required TAGS 'string', | -- optional KMS_KEY_ID 'kms_string', | -- optional S3_GARBAGE_COLLECT on / off, | -- optional, defualt is on. MAX_CELLS integer, | -- optional, default is 1,000,000 MAX_RUNTIME integer (, ...) | -- optional, default is 5400 (1.5 hours) HORIZON integer, | -- required if creating a forecast model FREQUENCY integer, | -- required if creating a forecast model PERCENTILES string, | -- optional if creating a forecast model MAX_BATCH_ROWS integer -- optional for BYOM remote inference ) ]
Paramètres
- model_name
-
Nom du modèle. Le nom du modèle d’un schéma doit être unique.
- FROM{nom_table | (select_query) | « nom_tâche »}
-
Le table_name ou la requête qui spécifie les données d’entraînement. Il peut s'agir d'une table existante dans le système ou d'une SELECT requête compatible avec Amazon Redshift entre parenthèses, c'est-à-dire (). Le résultat de la requête doit contenir au moins deux colonnes.
- TARGETnom_colonne
-
Nom de la colonne qui devient la cible de la prédiction. La colonne doit exister dans la FROM clause.
- FUNCTIONnom_fonction (type de données [,...])
-
Nom de la fonction à créer et types de données des arguments d’entrée. Vous pouvez fournir le nom d'un schéma dans votre base de données au lieu d'un nom de fonction.
- RETURNStype_données
-
Type de données à renvoyer par la fonction du modèle. Le type de
SUPER
données renvoyé ne s'applique qu'BYOMà l'inférence à distance. - SAGEMAKER'nom_endpoint_de' [:' nom_modèle']
-
Le nom du point de SageMaker terminaison Amazon. Si le nom du point de terminaison pointe vers un point de terminaison multimodèle, ajoutez le nom du modèle à utiliser. Le point de terminaison doit être hébergé au même Région AWS endroit que le cluster Amazon Redshift.
- IAM<account-id><role-name>_ ROLE {par défaut | 'arn:aws:iam : :role/ '}
-
Utilisez le mot clé par défaut pour qu'Amazon Redshift utilise le IAM rôle défini par défaut et associé au cluster lors de l'exécution de la CREATE MODEL commande. Vous pouvez également spécifier un ARN IAM rôle pour utiliser ce rôle.
- [AUTOACTIVÉ/OFF]
-
Active ou désactive la découverte CREATE MODEL automatique de la sélection du préprocesseur, de l'algorithme et des hyperparamètres. Lorsque vous créez un modèle de prévision, vous devez utiliser un AutoPredictor, où Amazon Forecast applique les combinaisons optimales d'algorithmes à chaque série chronologique de votre ensemble de données.
- MODEL_TYPE { XGBOOST | MLP | LINEAR_LEARNER | KMEANS | FORECAST }
-
(Facultatif) Spécifie le type de modèle. Vous pouvez spécifier si vous souhaitez entraîner un modèle d'un type de modèle spécifiqueXGBoost, tel que le perceptron multicouche (MLP) ou le Linear LearnerKMEANS, qui sont tous des algorithmes pris en charge par Amazon SageMaker Autopilot. Si vous ne spécifiez pas le paramètre, tous les types de modèles pris en charge sont recherchés pendant l’entraînement pour trouver le meilleur modèle. Vous pouvez également créer un modèle de prévision dans Redshift ML pour créer des prévisions chronologiques précises.
- PROBLEM_TYPE ( REGRESSION | BINARY_CLASSIFICATION | MULTICLASS_CLASSIFICATION )
-
(Facultatif) Spécifie le type de problème. Si vous connaissez le type de problème, vous pouvez limiter la recherche Amazon Redshift au meilleur modèle de ce type en particulier. Si vous ne spécifiez pas ce paramètre, un type de problème est détecté pendant l’entraînement, en fonction de vos données.
- OBJECTIVE('' | MSE 'Précision' | 'F1' | 'F1Macro' | 'reg:squarederror' | AUC 'reg:squaredlogerror' | 'reg:logistic' | 'reg:pseudohubererror' | 'reg:tweedie' | 'binary:logistic' | 'binary:hinge' | 'multi:softmax' | '(' | '' | '') RMSE WAPE MAPE MASE AverageWeightedQuantileLoss
-
(Facultatif) Spécifie le nom de la métrique d’objectif utilisée pour mesurer la qualité prédictive d’un système de machine learning. Cette métrique est optimisée pendant l’entraînement afin de fournir la meilleure estimation des valeurs des paramètres du modèle à partir des données. Si vous ne spécifiez pas de métrique de manière explicite, le comportement par défaut est d'utiliser automatiquement MSE : pour la régression, F1 : pour la classification binaire, Exactitude : pour la classification multiclasse. Pour plus d'informations sur les objectifs, consultez A utoMLJob Objective dans le Amazon SageMaker API Reference et les paramètres des tâches d'apprentissage
dans la XGBOOST documentation. Les valeursRMSE,WAPE, MAPEMASE, et ne s' AverageWeightedQuantileLoss appliquent qu'aux modèles Forecast. Pour plus d'informations, consultez l'CreateAutoPredictorAPIopération. - PREPROCESSORS« chaîne »
-
(Facultatif) Spécifie certaines combinaisons de préprocesseurs à certains ensembles de colonnes. Le format est une liste de columnSets colonnes et les transformations appropriées à appliquer à chaque ensemble de colonnes. Amazon Redshift applique tous les transformateurs d'une liste de transformateurs spécifique à toutes les colonnes de la liste correspondante. ColumnSet Par exemple, pour appliquer OneHotEncoder avec Imputer aux colonnes t1 et t2, utilisez l'exemple de commande suivant.
CREATE MODEL customer_churn FROM customer_data TARGET 'Churn' FUNCTION predict_churn IAM_ROLE { default | 'arn:aws:iam::<account-id>:role/<role-name>' } PROBLEM_TYPE BINARY_CLASSIFICATION OBJECTIVE 'F1' PREPROCESSORS '[ ... {"ColumnSet": [ "t1", "t2" ], "Transformers": [ "OneHotEncoder", "Imputer" ] }, {"ColumnSet": [ "t3" ], "Transformers": [ "OneHotEncoder" ] }, {"ColumnSet": [ "temp" ], "Transformers": [ "Imputer", "NumericPassthrough" ] } ]' SETTINGS ( S3_BUCKET 'amzn-s3-demo-bucket' )
- HYPERPARAMETERS{DEFAULT| DEFAULT EXCEPT (clé 'valeur' (,..))}
-
Spécifie si les XGBoost paramètres par défaut sont utilisés ou remplacés par des valeurs spécifiées par l'utilisateur. Les valeurs doivent être entre guillemets simples. Vous trouverez ci-dessous des exemples de paramètres pour XGBoost et leurs valeurs par défaut.
Nom du paramètre Valeur de paramètre Valeur par défaut Remarques num_class
Entier Requis pour la classification multiclasse.
N/A num_round
Entier 100
N/A tree_method
Chaîne Auto N/A max_depth
Entier 6 [0 , 10] min_child_weight Float 1 MinValue: 0, MaxValue 120 subsample Float 1 MinValue: 0,5, MaxValue : 1 gamma Float 0 MinValue: 0, MaxValue 5 alpha Float 0 MinValue: 0, MaxValue 100 eta Float 0.3 MinValue: 0,1, MaxValue 0,5 colsample_byleve Float 1 MinValue: 0,1, MaxValue 1 colsample_bynode Float 1 MinValue: 0,1, MaxValue 1 colsample_bytree Float 1 MinValue: 0,5, MaxValue : 1 lambda Float 1 MinValue: 0, MaxValue 100 max_delta_step Entier 0 [0, 10] - SETTINGS(S3_ BUCKET 'amzn-s3-demo-bucket', | 'stringTAGS', | KMS _ KEY _ID 'kms_string', | S3_ _ activé/désactivé, | _ entier, | GARBAGE MAX _ COLLECT CELLS entier, | forecast_frequency, | tableau MAX de chaînesRUNTIME) HORIZON FREQUENCY PERCENTILES
-
La BUCKET clause S3_ spécifie l'emplacement Amazon S3 utilisé pour stocker les résultats intermédiaires.
(Facultatif) Le TAGS paramètre est une liste séparée par des virgules de paires clé-valeur que vous pouvez utiliser pour étiqueter les ressources créées dans Amazon ; et SageMaker Amazon Forecast. Les balises permettent d’organiser les ressources et d’imputer les coûts. Les valeurs de la paire étant facultatives, vous pouvez créer des balises en utilisant le format
key=value
ou en créant simplement une clé. Pour en savoir plus sur les balises dans Amazon Redshift, consultez Présentation du balisage.(Facultatif) KMS _ KEY _ID indique si Amazon Redshift utilise le chiffrement côté serveur avec AWS KMS une clé pour protéger les données au repos. Les données en transit sont protégées par le protocole Secure Sockets Layer (SSL).
(Facultatif) S3_ GARBAGE _ COLLECT {ON |OFF} indique si Amazon Redshift collecte les déchets sur les ensembles de données obtenus et utilisés pour entraîner les modèles et les modèles. Si cette valeur est définie surOFF, les ensembles de données résultants utilisés pour entraîner les modèles restent dans Amazon S3 et peuvent être utilisés à d'autres fins. Si la valeur est définie sur ON, Amazon Redshift supprime les artefacts dans Amazon S3 une fois l’entraînement terminé. La valeur par défaut est ON.
(Facultatif) MAX _ CELLS indique le nombre de cellules dans les données d'entraînement. Cette valeur est le produit du nombre d’enregistrements (dans la requête d’entraînement ou dans la table) multiplié par le nombre de colonnes. La valeur par défaut est 1 000 000.
(Facultatif) MAX _ RUNTIME indique la durée maximale de l'entraînement. Les tâches d’entraînement se terminent souvent plus tôt en fonction de la taille du jeu de données. Ce nombre spécifie la durée maximale de l’entraînement. La valeur par défaut est 5 400 (90 minutes).
HORIZONindique le nombre maximum de prédictions que le modèle de prévision peut renvoyer. Une fois le modèle entraîné, vous ne pouvez pas modifier cet entier. Ce paramètre est obligatoire pour l’entraînement d’un modèle de prévision.
FREQUENCYindique dans quelle mesure vous souhaitez que les prévisions soient granulaires en unités de temps. Les options disponibles sont
Y | M | W | D | H | 30min | 15min | 10min | 5min | 1min
. Ce paramètre est obligatoire pour l’entraînement d’un modèle de prévision.(Facultatif) PERCENTILES est une chaîne délimitée par des virgules qui spécifie les types de prévisions utilisés pour entraîner un prédicteur. Les types de prévisions peuvent être des quantiles compris entre 0,01 et 0,99, par incréments de 0,01 ou plus. Vous pouvez également spécifier la prévision moyenne à l’aide de la moyenne. Vous pouvez spécifier un maximum de cinq types de prévisions.
- MAX_ BATCH _ ROWS entier
-
(Facultatif) Le nombre maximum de lignes qu'Amazon Redshift envoie dans une seule demande par lot pour un seul SageMaker appel. Il n'est pris en charge que pour BYOM l'inférence à distance. La valeur minimale pour ce paramètre est 1. La valeur maximale est
INT_MAX
de 2 147 483 647. Ce paramètre est obligatoire uniquement lorsque les types de données en entrée et en sortie le sont SUPER. La valeur par défaut estINT_MAX
2 147 483 647.