CREATE SNOWFLAKE.ML.CLASSIFICATION

Crée un nouveau modèle de classification ou remplace un modèle existant dans le schéma actuel ou spécifié.

Voir aussi :

DROP SNOWFLAKE.ML.CLASSIFICATION

Syntaxe

CREATE [ OR REPLACE ] SNOWFLAKE.ML.CLASSIFICATION [ IF NOT EXISTS ] <model_name> (
    INPUT_DATA => <input_data>,
    TARGET_COLNAME => '<target_colname>',
    [CONFIG_OBJECT => <config_object>],
)
[ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
[ COMMENT = '<string_literal>' ]
Copy

Paramètres

Requis

input_data

Une référence aux données d’entraînement. L’utilisation d’une référence permet au processus d’entraînement, qui s’exécute avec des privilèges limités, d’utiliser les privilèges de votre rôle actif pour accéder aux données. Vous pouvez utiliser une référence à une table ou à une vue si vos données sont déjà sous cette forme, ou vous pouvez utiliser une référence de requête pour fournir la requête à exécuter pour obtenir les données.

INPUT_DATA doit contenir l’ensemble des données d’entraînement qui seront utilisées par le modèle de classification. Toutes les colonnes qui ne sont pas nommées dans les arguments TARGET_COLNAME sont considérées comme des variables d’entraînement (fonctionnalités). L’ordre des colonnes dans les données d’entrée n’a pas d’importance.

Les colonnes de fonctionnalités doivent être STRING, NUMERIC ou BOOLEAN. Les colonnes STRING et BOOLEAN sont traitées comme des fonctionnalités catégorielles, tandis que les colonnes NUMERIC sont considérées comme des fonctionnalités continues. Pour traiter une colonne numérique comme une colonne catégorielle, il faut lui attribuer la valeur STRING.

target_colname

Nom de la colonne contenant l’étiquette (valeur cible) pour chaque ligne des données d’entraînement. La colonne cible peut être BOOLEAN, NUMERIC ou STRING.

Facultatif

config_object

Un OBJECT dont les paires clé-valeur spécifient des options d’entraînement supplémentaires.

Clé

Type

Par défaut

Description

evaluate

BOOLEAN

TRUE

Si des mesures d’évaluation doivent être générées. Si TRUE, un modèle supplémentaire est entraîné pour l’évaluation en utilisant les paramètres de evaluation_config.

on_error

STRING

“ABORT”

Chaîne constante qui spécifie la méthode de traitement des erreurs pour la tâche d’entraînement des modèles. Valeurs prises en charge :

  • 'ABORT' : abandonner l’ensemble de l’opération d’entraînement si une ligne donne lieu à une erreur.

  • 'SKIP' : ignorer les lignes qui entraînent une erreur. L’erreur est affichée à la place des résultats.

evaluation_config

OBJECT

NULL

Un objet de configuration facultatif pour spécifier comment les mesures d’évaluation hors échantillon doivent être générées. Actuellement, il n’existe qu’une seule option de ce type.

  • test_fraction (FLOAT) : la fraction de l’ensemble de données qui doit être utilisée comme données de test (d’évaluation).

Si la configuration de l’évaluation n’est pas spécifiée, le comportement par défaut est d’essayer d’inclure un minimum de 500 instances de la classe minoritaire dans l’ensemble d’évaluation et de limiter la fraction totale de test à 20 % de l’ensemble de données. Cette approche permet de maintenir un équilibre dans l’évaluation des modèles et l’entraînement, en particulier pour les classes minoritaires.

Exigences en matière de contrôle d’accès

Un rôle utilisé pour exécuter cette commande SQL doit avoir les privilèges suivants définis au minimum ainsi :

Privilège / Rôle

Objet

Remarques

CREATE SNOWFLAKE.ML.CLASSIFICATION

Schéma

Le rôle utilisé pour créer un budget doit se voir accorder ce privilège sur le schéma dans lequel le budget est créé.

OWNERSHIP

Schéma

Un rôle doit se voir accorder le privilège OWNERSHIP ou en hériter sur l’objet pour créer un objet temporaire portant le même nom que l’objet qui existe déjà dans le schéma.

model_name !mladmin

Instance SNOWFLAKE.ML.CLASSIFICATION

Ce rôle, limité au modèle lui-même, est initialement accordé au propriétaire, qui peut l’accorder à d’autres personnes pour leur permettre d’appeler toutes les méthodes du modèle. Voir Rôles et privilèges d’utilisation du modèle.

model_name !mlconsumer

Instance SNOWFLAKE.ML.CLASSIFICATION

Ce rôle, limité au modèle lui-même, est initialement accordé au propriétaire, qui peut l’accorder à d’autres personnes pour leur permettre d’appeler les méthodes de prédiction du modèle (telles que PREDICT). Voir Rôles et privilèges d’utilisation du modèle.

Notez que l’exploitation d’un objet dans un schéma requiert également le privilège USAGE sur la base de données et le schéma parents.

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.

Exemple

Voir des exemples.