CREATE SNOWFLAKE.ML.CLASSIFICATION

Cria um novo modelo de classificação ou substitui um modelo existente no esquema atual ou especificado.

Consulte também:

DROP SNOWFLAKE.ML.CLASSIFICATION

Sintaxe

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

Parâmetros

Obrigatório

input_data

Uma referência aos dados de treinamento. O uso de uma referência permite que o processo de treinamento, executado com privilégios limitados, use seus privilégios da função ativa para acessar os dados. Você pode usar uma referência a uma tabela ou exibição se seus dados já estiverem nessa forma ou pode usar uma referência de consulta para fornecer a consulta a ser executada para obter os dados.

INPUT_DATA deve conter todos os dados de treinamento a serem consumidos pelo modelo de classificação. Quaisquer colunas que não sejam nomeadas nos argumentos TARGET_COLNAME são consideradas variáveis de treinamento (recursos). A ordem das colunas nos dados de entrada não é importante.

As colunas de recursos devem ser STRING, NUMERIC ou BOOLEAN. As colunas STRING e BOOLEAN são tratadas como recursos categóricos, enquanto as colunas NUMERIC são consideradas recursos contínuos. Para tratar uma coluna numérica como categórica, converta-a em STRING.

target_colname

Nome da coluna que contém o rótulo (valor de destino) para cada linha nos dados de treinamento. A coluna de destino pode ser BOOLEAN, NUMERIC ou STRING.

Opcional

config_object

Um OBJECT cujos pares chave-valor especificam opções de treinamento adicionais.

Chave

Tipo

Padrão

Descrição

evaluate

BOOLEAN

TRUE

Se as métricas de avaliação devem ser geradas. Se TRUE, o modelo adicional será treinado para avaliação usando os parâmetros em evaluation_config.

on_error

STRING

“ABORT”

Cadeia de caracteres constante que especifica o método de tratamento de erros para a tarefa de treinamento do modelo. Os valores suportados são:

  • 'ABORT': anule toda a operação de treinamento se alguma linha resultar em erro.

  • 'SKIP': ignora linhas que resultam em erro. O erro é mostrado em vez dos resultados.

evaluation_config

OBJECT

NULL

Um objeto de configuração opcional para especificar como as métricas de avaliação fora da amostra devem ser geradas. Atualmente, existe apenas uma dessas opções.

  • test_fraction (FLOAT): a fração do conjunto de dados que deve ser usada como dados de teste (avaliação).

Se a configuração de avaliação não for especificada, o comportamento padrão será tentar incluir um mínimo de 500 instâncias da classe minoritária no conjunto de avaliação e limitar a fração total de teste de 20% do conjunto de dados. Esta abordagem mantém o equilíbrio na avaliação e formação de modelos, especialmente para classes minoritárias.

Requisitos de controle de acesso

A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:

Privilégio/Função

Objeto

Notas

CREATE SNOWFLAKE.ML.CLASSIFICATION

Esquema

A função usada para criar um orçamento deve receber esse privilégio no esquema no qual o orçamento é criado.

OWNERSHIP

Esquema

Uma função deve ser concedida ou herdar o privilégio OWNERSHIP no objeto para criar um objeto temporário com o mesmo nome do objeto que já existe no esquema.

model_name !mladmin

Instância SNOWFLAKE.ML.CLASSIFICATION

Essa função, com escopo definido para o próprio modelo, é inicialmente concedida ao proprietário, que pode concedê-la a outros para permitir que chamem todos os métodos do modelo. Consulte Funções de modelo e privilégios de uso.

model_name !mlconsumer

Instância SNOWFLAKE.ML.CLASSIFICATION

Essa função, com escopo definido para o próprio modelo, é inicialmente concedida ao proprietário, que pode concedê-la a outros para permitir que eles chamem os métodos de previsão do modelo (como PREDICT). Consulte Funções de modelo e privilégios de uso.

O privilégio USAGE no banco de dados e no esquema pai é necessário para executar operações em qualquer objeto de um esquema.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Exemplo

Consulte Exemplos.