AutoMLConfig Classe

Representa a configuração para enviar um experimento de ML automatizado no Azure Machine Learning.

Esse objeto de configuração contém e persiste os parâmetros para configurar a execução do experimento, bem como os dados de treinamento a serem usados no tempo de execução. Para obter as diretrizes sobre como selecionar as configurações, consulte https://aka.ms/AutoMLConfig.

Crie um AutoMLConfig.

Herança
builtins.object
AutoMLConfig

Construtor

AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)

Parâmetros

task
str ou Tasks
Obrigatório

O tipo de tarefa a ser executado. Os valores podem ser 'classificação', 'regressão' ou 'previsão', dependendo do tipo de problema de ML automatizado a ser resolvido.

path
str
Obrigatório

O caminho completo para a pasta do projeto do Azure Machine Learning. Se não for especificado, o padrão será usar o diretório atual ou ".".

iterations
int
Obrigatório

O número total de combinações diferentes de algoritmo e parâmetro a serem testadas durante um experimento do ML automatizado. Se não for especificado, o padrão será 1000 iterações.

primary_metric
str ou Metric
Obrigatório

A métrica que o Machine Learning Automatizado otimizará para a seleção de modelo. O Machine Learning Automatizado coleta mais métricas do que pode otimizar. Você pode usar get_primary_metrics para obter uma lista de métricas válidas para a tarefa especificada. Para obter mais informações sobre como as métricas são calculadas, consulte https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Se não for especificada, a precisão será usada para as tarefas de classificação, a raiz quadrática média normalizada será usada para tarefas de previsão e regressão, a precisão será usada para classificação de imagem e classificação de rótulo múltiplo de imagem, e a precisão média será usada para detecção de objeto de imagem.

positive_label
Any
Obrigatório

O rótulo de classe positiva que o Machine Learning Automatizado usará para calcular métricas binárias. As métricas binárias são calculadas em duas condições para as tarefas de classificação:

  1. A coluna de rótulo consiste em duas classes indicando a tarefa de classificação binária. O AutoML usará a classe positiva especificada quando positive_label for passado; caso contrário, o AutoML selecionará uma classe positiva de acordo com o valor codificado de rótulo.
  2. A tarefa de classificação de várias classes com positive_label especificado

Para obter mais informações sobre classificação, confira as métricas para cenários de classificação.

compute_target
AbstractComputeTarget
Obrigatório

O destino de computação do Azure Machine Learning para executar o experimento do Machine Learning Automatizado. Confira https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote para obter mais informações sobre destinos de computação.

spark_context
<xref:SparkContext>
Obrigatório

O contexto do Spark. Aplicável somente quando usado dentro do ambiente Azure Databricks/Spark.

X
DataFrame ou ndarray ou Dataset ou TabularDataset
Obrigatório

Os recursos de treinamento a serem usados ao ajustar pipelines durante um experimento. Essa configuração está sendo preterida. Em vez disso, use training_data e label_column_name.

y
DataFrame ou ndarray ou Dataset ou TabularDataset
Obrigatório

Rótulos de treinamento para uso ao ajustar pipelines durante um experimento. Esse é o valor que seu modelo vai prever. Essa configuração está sendo preterida. Em vez disso, use training_data e label_column_name.

sample_weight
DataFrame ou ndarray ou TabularDataset
Obrigatório

O peso a ser fornecido a cada amostra de treinamento durante a execução de pipelines de ajuste; cada linha deve corresponder a uma linha em X e dados y.

Especifique esse parâmetro ao especificar X. Essa configuração está sendo preterida. Em vez disso, use training_data e weight_column_name.

X_valid
DataFrame ou ndarray ou Dataset ou TabularDataset
Obrigatório

Os recursos de validação a serem usados ao ajustar pipelines durante um experimento.

Se especificado, y_valid ou sample_weight_valid também deve ser especificado. Essa configuração está sendo preterida. Em vez disso, use validation_data e label_column_name.

y_valid
DataFrame ou ndarray ou Dataset ou TabularDataset
Obrigatório

Rótulos de validação para uso ao ajustar pipelines durante um experimento.

Ambos X_valid e y_valid devem ser especificados juntos. Essa configuração está sendo preterida. Em vez disso, use validation_data e label_column_name.

sample_weight_valid
DataFrame ou ndarray ou TabularDataset
Obrigatório

O peso a ser fornecido a cada amostra de validação durante a execução de pipelines de pontuação; cada linha deve corresponder a uma linha em X e dados y.

Especifique esse parâmetro ao especificar X_valid. Essa configuração está sendo preterida. Em vez disso, use validation_data e weight_column_name.

cv_splits_indices
List[List[ndarray]]
Obrigatório

Indica onde dividir os dados de treinamento para validação cruzada. Cada linha é uma dobra cruzada separada e, dentro de cada dobra cruzada, fornece 2 matrizes numpy, a primeira com os índices para amostras a serem usadas para dados de treinamento e a segunda com os índices a serem usados para dados de validação. ou seja, [[t1, v1], [t2, v2], ...] onde t1 são os índices de treinamento para a primeira dobra cruzada e v1 são os índices de validação para a primeira dobra cruzada.

Para especificar dados existentes como dados de validação, use validation_data. Para permitir que o AutoML extraia dados de validação fora dos dados de treinamento, especifique n_cross_validations ou validation_size. Use cv_split_column_names se você tiver colunas de validação cruzada no training_data.

validation_size
float
Obrigatório

Qual fração dos dados deve ser mantida para validação quando os dados de validação do usuário não são especificados. Isso deve estar entre 0,0 e 1,0 não inclusivo.

Especifique validation_data para fornecer dados de validação; caso contrário, defina n_cross_validations ou validation_size para extrair os dados de validação dos dados de treinamento especificados. Para a dobra de validação cruzada personalizada, use cv_split_column_names.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

n_cross_validations
int
Obrigatório

Quantas validações cruzadas devem ser executadas quando os dados de validação do usuário não são especificados.

Especifique validation_data para fornecer dados de validação; caso contrário, defina n_cross_validations ou validation_size para extrair os dados de validação dos dados de treinamento especificados. Para a dobra de validação cruzada personalizada, use cv_split_column_names.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

y_min
float
Obrigatório

Valor mínimo de y para um experimento de regressão. A combinação de y_min e y_max é usada para normalizar as métricas do conjunto de testes com base no intervalo de dados de entrada. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

y_max
float
Obrigatório

Valor máximo de y para um experimento de regressão. A combinação de y_min e y_max é usada para normalizar as métricas do conjunto de testes com base no intervalo de dados de entrada. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

num_classes
int
Obrigatório

O número de classes nos dados do rótulo para um experimento de classificação. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

featurization
str ou FeaturizationConfig
Obrigatório

'auto' / 'off' / FeaturizationConfig Indicador para verificar se a etapa de definição de recursos deve ser feita automaticamente ou não, ou se a definição de recursos deve ser usada. Observação: se os dados de entrada forem esparsos, a definição de recursos não poderá ser ativada.

O tipo de coluna é detectado automaticamente. Com base no tipo de coluna detectada, o pré-processamento e a definição de recursos são feitos do seguinte modo:

  • Categórico: codificação de destino, uma codificação ativa, remover categorias de cardinalidade alta, imputar valores ausentes.

  • Numérico: imputar valores ausentes, distância do cluster, peso de evidência.

  • DateTime: vários recursos, como dia, segundos, minutos, horas etc.

  • Texto: conjunto de palavras, incorporação do Word previamente treinado, codificação de destino de texto.

Mais detalhes podem ser encontrados no artigo Configurar experimentos do ML automatizado no Python.

Para personalizar a etapa de definição de recursos, forneça um objeto FeaturizationConfig. No momento, a definição de recursos personalizada dá suporte ao bloqueio de um conjunto de transformadores, à atualização da finalidade da coluna, à edição de parâmetros do transformador e à remoção de colunas. Para obter mais informações, consulte Personalizar a engenharia de recursos.

Observação: os recursos de série temporal são tratados separadamente quando o tipo de tarefa é definido como previsão independente desse parâmetro.

max_cores_per_iteration
int
Obrigatório

O número máximo de threads a serem usados para uma determinada iteração de treinamento. Valores aceitáveis:

  • Maior que 1 e menor ou igual ao número máximo de núcleos no destino de computação.

  • Igual a -1, o que significa usar todos os núcleos possíveis por iteração e por execução filho.

  • Igual a 1, o padrão.

max_concurrent_iterations
int
Obrigatório

representa o número máximo de iterações que seriam executadas em paralelo. O valor padrão é 1.

  • Os clusters AmlCompute dão suporte a uma interação em execução por nó. Para várias execuções pai do experimento de AutoML em paralelo em um único cluster AmlCompute, a soma dos valores de max_concurrent_iterations para todos os experimentos deve ser menor ou igual ao número máximo de nós. Caso contrário, as execuções serão enfileiradas até que os nós estejam disponíveis.

  • O DSVM dá suporte a várias iterações por nó. max_concurrent_iterations deve ser menor ou igual ao número de núcleos no DSVM. Para várias execuções do experimento em paralelo em um único DSVM, a soma dos valores de max_concurrent_iterations para todos os experimentos deve ser menor ou igual ao número máximo de nós.

  • Databricks – max_concurrent_iterations deve ser menor ou igual ao número de nós de trabalho no Databricks.

max_concurrent_iterations não se aplica a execuções locais. Anteriormente, esse parâmetro foi nomeado como concurrent_iterations.

iteration_timeout_minutes
int
Obrigatório

Tempo máximo em minutos em que cada iteração pode ser executada antes de ser terminada. Se não for especificado, será usado um valor de 1 mês ou 43200 minutos.

mem_in_mb
int
Obrigatório

Uso máximo de memória em que cada iteração pode ser executada antes de ser terminada. Se não for especificado, será usado um valor de 1 PB ou 1073741824 MB.

enforce_time_on_windows
bool
Obrigatório

Se deve impor um limite de tempo no treinamento do modelo em cada iteração no Windows. O padrão é True. Se estiver executando de um arquivo de script Python (.py), consulte a documentação para permitir limites de recursos no Windows.

experiment_timeout_hours
float
Obrigatório

Quantidade máxima de tempo em horas que todas as iterações combinadas podem levar antes que o experimento seja encerrado. Pode ser um valor decimal, como 0,25 representando 15 minutos. Se não for especificado, o tempo limite do experimento padrão será de 6 dias. Para especificar um tempo limite menor ou igual a 1 hora, verifique se o tamanho do conjunto de dados não é maior que 10.000.000 (linhas vezes coluna) ou se há erros.

experiment_exit_score
float
Obrigatório

Pontuação de destino para o experimento. O experimento termina depois que essa pontuação é atingida. Se não for especificado (nenhum critério), o experimento será executado até que nenhum outro progresso seja feito na métrica primária. Para obter mais informações sobre os critérios de saída, consulte este artigo.

enable_early_stopping
bool
Obrigatório

Se deve permitir o encerramento antecipado caso a pontuação não esteja melhorando em curto prazo. O padrão é True.

Lógica de parada antecipada:

  • Nenhuma parada antecipada para as primeiras 20 iterações (marcos).

  • A janela de parada antecipada começa na parte 21 da iteração e procura iterações early_stopping_n_iters

    (definido atualmente como 10). Isso significa que a primeira iteração em que a interrupção pode ocorrer é na parte 31.

  • O AutoML ainda agenda 2 iterações ensemble APÓS a interrupção antecipada, o que pode resultar em

    pontuações mais altas.

  • A interrupção antecipada será disparada se o valor absoluto da melhor pontuação calculada for o mesmo para as últimas

    iterações early_stopping_n_iters, ou seja, se não houver nenhuma melhoria na pontuação das iterações early_stopping_n_iters.

blocked_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Uma lista de algoritmos a serem ignorados para um experimento. Se enable_tf for False, os modelos TensorFlow serão incluídos no blocked_models.

blacklist_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Parâmetro preterido, use blocked_models em vez disso.

exclude_nan_labels
bool
Obrigatório

Se deve excluir as linhas com valores NaN no rótulo. O padrão é True.

verbosity
int
Obrigatório

O nível de detalhamento para gravar no arquivo de log. O padrão é INFO ou 20. Os valores aceitáveis são definidos na biblioteca de registros em log do Python.

enable_tf
bool
Obrigatório

Parâmetro preterido para habilitar/desabilitar algoritmos Tensorflow. O padrão é False.

model_explainability
bool
Obrigatório

Se deve habilitar a explicação do melhor modelo do AutoML no final de todas as iterações de treinamento do AutoML. O padrão é True. Para obter mais informações, consulte Interpretabilidade: explicações de modelo no machine learning automatizado.

allowed_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Uma lista de nomes de modelos para pesquisar um experimento. Se não for especificado, todos os modelos compatíveis para a tarefa serão usados menos os especificados no blocked_models ou modelos TensorFlow preteridos. Os modelos compatíveis com cada tipo de tarefa são descritos na classe SupportedModels.

whitelist_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Parâmetro preterido, use blocked_models.

enable_onnx_compatible_models
bool
Obrigatório

Se deve habilitar ou desabilitar a imposição de modelos compatíveis com ONNX. O padrão é False. Para obter mais informações sobre o ONNX (Open Neural Network Exchange) e o Azure Machine Learning, consulte este artigo.

forecasting_parameters
ForecastingParameters
Obrigatório

Um objeto ForecastingParameters para reter todos os parâmetros específicos de previsão.

time_column_name
str
Obrigatório

O nome da coluna de hora. Esse parâmetro é necessário na previsão para especificar a coluna datetime nos dados de entrada usados para criar a série temporal e inferir sua frequência. Essa configuração está sendo preterida. Use forecasting_parameters.

max_horizon
int
Obrigatório

O horizonte de previsão máximo desejado em unidades de frequência de série temporal. O valor padrão é 1.

As unidades são baseadas no intervalo de tempo de seus dados de treinamento (por exemplo, mensal, semanal) que a previsão deve estimar. Quando o tipo de tarefa é previsão, esse parâmetro é necessário. Para obter mais informações sobre como definir parâmetros de previsão, consulte Treinar automaticamente um modelo de previsão de série temporal. Essa configuração está sendo preterida. Use forecasting_parameters.

grain_column_names
str ou list(str)
Obrigatório

Os nomes das colunas usadas para agrupar uma série temporal. Ele pode ser usado para criar várias séries. Se a agregação não for definida, o conjunto de dados será considerado uma série temporal. Esse parâmetro é usado com a previsão de tipo de tarefa. Essa configuração está sendo preterida. Use forecasting_parameters.

target_lags
int ou list(int)
Obrigatório

O número de períodos anteriores com atraso na coluna de destino. O padrão é 1. Essa configuração está sendo preterida. Use forecasting_parameters.

Durante a previsão, esse parâmetro representa o número de linhas para atrasar os valores de destino de acordo com a frequência dos dados. Isso é representado como uma lista ou um único inteiro. O retardo deve ser usado quando a relação entre as variáveis independentes e a variável dependente não corresponde ou se correlaciona por padrão. Por exemplo, a previsão da demanda de um produto em um dado mês pode depender do preço de mercadorias específicas 3 meses antes disso. Neste exemplo, você pode querer retardar o destino (demanda) negativamente por 3 meses para que o modelo seja treinado na relação correta. Para obter mais informações, consulte Treinar automaticamente um modelo de previsão de série temporal.

feature_lags
str
Obrigatório

Sinalizador para gerar atraso para os recursos numéricos. Essa configuração está sendo preterida. Use forecasting_parameters.

target_rolling_window_size
int
Obrigatório

O número de períodos anteriores usados para criar uma média de janela móvel da coluna de destino. Essa configuração está sendo preterida. Use forecasting_parameters.

Durante a previsão, esse parâmetro representa n períodos históricos a serem usados para gerar valores previstos, <= o tamanho do conjunto de treinamento. Se omitido, n será o tamanho total do conjunto de treinamento. Especifique esse parâmetro quando desejar considerar apenas certa quantidade de histórico no treinamento do modelo.

country_or_region
str
Obrigatório

País/região usada para gerar recursos de feriados. Devem ser um código de país/região de duas letras ISO 3166, por exemplo, 'US' ou 'GB'. Essa configuração está sendo preterida. Use forecasting_parameters.

use_stl
str
Obrigatório

Configure a Decomposição de STL da coluna de destino da série temporal. use_stl pode usar três valores: None (padrão) – sem decomposição de stl, 'season' – gerar apenas o componente de estação e season_trend – gerar componentes de temporada e tendência. Essa configuração está sendo preterida. Use forecasting_parameters.

seasonality
int ou str
Obrigatório

Defina a sazonalidade de série temporal. Se a sazonalidade for definida como 'auto', ela será inferida. Essa configuração está sendo preterida. Use forecasting_parameters.

short_series_handling_configuration
str
Obrigatório

O parâmetro que define como o AutoML deve lidar com uma série temporal curta.

Valores possíveis: 'auto' (padrão), 'pad', 'drop' e None.

  • auto as séries curtas serão preenchidas se não houver séries longas; caso contrário, as séries curtas serão removidas.
  • pad todas as séries curtas serão preenchidas.
  • drop todas as séries curtas serão removidas.
  • None as séries curtas não serão modificadas. Se definida como 'pad', a tabela será preenchida com zeros e valores vazios para os regressores e valores aleatórios para o destino com a média igual à mediana do valor de destino para uma determinada ID de série temporal. Se a mediana for maior ou igual a zero, o valor de preenchimento mínimo será recortado por zero: Entrada:

Data

numeric_value

cadeia de caracteres

destino

01/01/2020

23

green

55

Saída supondo que o número mínimo de valores seja quatro:

Data

numeric_value

cadeia de caracteres

destino

2019-12-29

0

NA

55.1

2019-12-30

0

NA

55.6

2019-12-31

0

NA

54.5

01/01/2020

23

green

55

Observação: há dois parâmetros short_series_handling_configuration e short_series_handling herdado. Quando ambos os parâmetros são definidos, os sincronizamos conforme mostrado na tabela abaixo (short_series_handling_configuration e short_series_handling para brevidade são marcados como handling_configuration e handling, respectivamente).

Manipulação

handling_configuration

tratamento resultante

handling_configuration resultante

True

auto

True

auto

True

Almofada

True

auto

True

drop

True

auto

True

Nenhum

Falso

Nenhum

Falso

auto

Falso

Nenhum

Falso

Almofada

Falso

Nenhum

Falso

drop

Falso

Nenhum

Falso

Nenhum

Falso

Nenhum

freq
str ou None
Obrigatório

Frequência de previsão.

Durante a previsão, esse parâmetro representa o período com o qual a previsão é desejada, por exemplo, diária, semanal, anual etc. A frequência da previsão é a frequência do conjuntos de dados por padrão. Como opção, você pode defini-lo como maior (mas não menor) que a frequência do conjunto de dados. Vamos agregar os dados e gerar os resultados na frequência de previsão. Por exemplo, para dados diários, você pode definir a frequência como diária, semanal ou mensal, mas não por hora. A frequência precisa ser um alias de deslocamento do pandas. Consulte a documentação do pandas para obter mais informações: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str ou None
Obrigatório

A função a ser usada para agregar a coluna de destino da série temporal de acordo com a frequência especificada pelo usuário. Se target_aggregation_function estiver definido, mas o parâmetro freq não estiver definido, o erro será gerado. As possíveis funções de agregação de destino são: "sum", "max", "min" e "mean".

Freq

target_aggregation_function

Mecanismo de correção de regularidade de dados

Nenhum (padrão)

Nenhum (padrão)

A agregação não é aplicada. Se a frequência válida não puder ser determinada, o erro será gerado.

Algum valor

Nenhum (padrão)

A agregação não é aplicada. Se o número de pontos de dados em conformidade com a grade de frequência fornecida for menor, 90%desses pontos serão removidos, caso contrário, o erro será gerado.

Nenhum (padrão)

Função de agregação

O erro sobre os parâmetros de frequência ausentes é gerado.

Algum valor

Função de agregação

Agregar à frequência usando a função providedaggregation.

enable_voting_ensemble
bool
Obrigatório

Se deve habilitar/desabilitar a iteração VotingEnsemble. O padrão é True. Para obter mais informações sobre ensembles, consulte Configuração de Ensemble.

enable_stack_ensemble
bool
Obrigatório

Se deve habilitar/desabilitar a iteração StackEnsemble. A opção padrão é Nenhum. Se o sinalizador enable_onnx_compatible_models estiver sendo definido, a iteração StackEnsemble será desabilitada. Da mesma forma, para tarefas da série temporal, a iteração StackEnsemble será desabilitada por padrão, para evitar riscos de sobreajuste devido a um pequeno conjunto de treinamento usado para ajustar o aprendiz meta. Para obter mais informações sobre ensembles, consulte Configuração de Ensemble.

debug_log
str
Obrigatório

O arquivo de log no qual gravar informações de depuração. Se não for especificado, 'automl.log' será usado.

training_data
DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os dados de treinamento a serem usados no experimento. Devem conter recursos de treinamento e uma coluna de rótulo (opcionalmente, uma coluna de pesos de amostra). Se training_data for especificado, o parâmetro label_column_name também deverá ser especificado.

training_data foi introduzido na versão 1.0.81.

validation_data
DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os dados de validação a serem usados no experimento. Devem conter recursos de treinamento e uma coluna de rótulo (opcionalmente, uma coluna de pesos de amostra). Se validation_data for especificado, os parâmetros training_data e label_column_name deverão ser especificados.

validation_data foi introduzido na versão 1.0.81. Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

test_data
Dataset ou TabularDataset
Obrigatório

O recurso Teste de Modelo que usa conjuntos de dados de teste ou divisões de dados de teste é um recurso no estado Versão Prévia e pode mudar a qualquer momento. Os dados de teste a serem usados para uma execução de teste que serão iniciados automaticamente após a conclusão do treinamento do modelo. A execução de teste terá previsões usando o melhor modelo e calculará métricas considerando essas previsões.

Se esse parâmetro ou o parâmetro test_size não for especificado, nenhuma execução de teste será feita automaticamente após a conclusão do treinamento do modelo. Os dados de teste devem conter os recursos e a coluna de rótulo. Se test_data for especificado, o parâmetro label_column_name deverá ser especificado.

test_size
float
Obrigatório

O recurso Teste de Modelo que usa conjuntos de dados de teste ou divisões de dados de teste é um recurso no estado Versão Prévia e pode mudar a qualquer momento. Qual fração dos dados de treinamento deve ser mantida para dados de teste em uma execução de teste que será iniciada automaticamente após a conclusão do treinamento do modelo. A execução de teste terá previsões usando o melhor modelo e calculará métricas considerando essas previsões.

Isso deve estar entre 0,0 e 1,0 não inclusivo. Se test_size for especificado ao mesmo tempo que validation_size, os dados de teste serão divididos de training_data antes da divisão dos dados de validação. Por exemplo, se validation_size=0.1, test_size=0.1 e os dados de treinamento originais tiverem 1000 linhas, os dados de teste terão 100 linhas, os dados de validação terão 90 linhas e os dados de treinamento terão 810 linhas.

Para tarefas de regressão, usa-se a amostragem aleatória. Para tarefas de classificação, a amostragem estratificada é usada. No momento, a previsão não é compatível com a especificação de um conjunto de dados de teste usando uma divisão de treinamento/teste.

Se esse parâmetro ou o parâmetro test_data não for especificado, nenhuma execução de teste será feita automaticamente após a conclusão do treinamento do modelo.

label_column_name
Union[str, int]
Obrigatório

O nome da coluna de rótulo. Se os dados de entrada são de um pandas.DataFrame que não tem nomes de coluna, os índices de coluna podem ser usados, expressos como inteiros.

Esse parâmetro é aplicável aos parâmetros training_data, validation_data e test_data. label_column_name foi introduzido na versão 1.0.81.

weight_column_name
Union[str, int]
Obrigatório

O nome da coluna de peso de amostra. O ML Automatizado oferece suporte a uma coluna ponderada como uma entrada, fazendo com que as linhas nos dados sejam ponderadas para cima ou para baixo. Se os dados de entrada são de um pandas.DataFrame que não tem nomes de coluna, os índices de coluna podem ser usados, expressos como inteiros.

Esse parâmetro é aplicável aos parâmetros training_data e validation_data. weight_column_names foi introduzido na versão 1.0.81.

cv_split_column_names
list(str)
Obrigatório

Lista de nomes das colunas que contêm divisão de validação cruzada personalizada. Cada uma das colunas de divisão CV representa uma divisão CV, em que cada linha é marcada como 1 para treinamento ou 0 para validação.

Esse parâmetro é aplicável ao parâmetro training_data para fins de validação cruzada personalizada. cv_split_column_names foi introduzido na versão 1.6.0

Use cv_split_column_names ou cv_splits_indices.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

enable_local_managed
bool
Obrigatório

Parâmetro desabilitado. As execuções gerenciadas locais não podem ser habilitadas no momento.

enable_dnn
bool
Obrigatório

Se deve incluir modelos baseados em DNN durante a seleção do modelo. O padrão em init é None. No entanto, o padrão é True para tarefas do DNN NLP e False para todas as outras tarefas do AutoML.

task
str ou Tasks
Obrigatório

O tipo de tarefa a ser executado. Os valores podem ser 'classificação', 'regressão' ou 'previsão', dependendo do tipo de problema de ML automatizado a ser resolvido.

path
str
Obrigatório

O caminho completo para a pasta do projeto do Azure Machine Learning. Se não for especificado, o padrão será usar o diretório atual ou ".".

iterations
int
Obrigatório

O número total de combinações diferentes de algoritmo e parâmetro a serem testadas durante um experimento do ML automatizado. Se não for especificado, o padrão será 1000 iterações.

primary_metric
str ou Metric
Obrigatório

A métrica que o Machine Learning Automatizado otimizará para a seleção de modelo. O Machine Learning Automatizado coleta mais métricas do que pode otimizar. Você pode usar get_primary_metrics para obter uma lista de métricas válidas para a tarefa especificada. Para obter mais informações sobre como as métricas são calculadas, consulte https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Se não for especificada, a precisão será usada para as tarefas de classificação, a raiz quadrática média normalizada será usada para tarefas de previsão e regressão, a precisão será usada para classificação de imagem e classificação de rótulo múltiplo de imagem, e a precisão média será usada para detecção de objeto de imagem.

positive_label
Any
Obrigatório

O rótulo de classe positiva que o Machine Learning Automatizado usará para calcular métricas binárias. As métricas binárias são calculadas em duas condições para as tarefas de classificação:

  1. A coluna de rótulo consiste em duas classes indicando a tarefa de classificação binária. O AutoML usará a classe positiva especificada quando positive_label for passado; caso contrário, o AutoML selecionará uma classe positiva de acordo com o valor codificado de rótulo.
  2. A tarefa de classificação de várias classes com positive_label especificado

Para obter mais informações sobre classificação, confira as métricas para cenários de classificação.

compute_target
AbstractComputeTarget
Obrigatório

O destino de computação do Azure Machine Learning para executar o experimento do Machine Learning Automatizado. Confira https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote para obter mais informações sobre destinos de computação.

spark_context
<xref:SparkContext>
Obrigatório

O contexto do Spark. Aplicável somente quando usado dentro do ambiente Azure Databricks/Spark.

X
DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os recursos de treinamento a serem usados ao ajustar pipelines durante um experimento. Essa configuração está sendo preterida. Em vez disso, use training_data e label_column_name.

y
DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Rótulos de treinamento para uso ao ajustar pipelines durante um experimento. Esse é o valor que seu modelo vai prever. Essa configuração está sendo preterida. Em vez disso, use training_data e label_column_name.

sample_weight
DataFrame ou ndarray ou TabularDataset
Obrigatório

O peso a ser fornecido a cada amostra de treinamento durante a execução de pipelines de ajuste; cada linha deve corresponder a uma linha em X e dados y.

Especifique esse parâmetro ao especificar X. Essa configuração está sendo preterida. Em vez disso, use training_data e weight_column_name.

X_valid
DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os recursos de validação a serem usados ao ajustar pipelines durante um experimento.

Se especificado, y_valid ou sample_weight_valid também deve ser especificado. Essa configuração está sendo preterida. Em vez disso, use validation_data e label_column_name.

y_valid
DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Rótulos de validação para uso ao ajustar pipelines durante um experimento.

Ambos X_valid e y_valid devem ser especificados juntos. Essa configuração está sendo preterida. Em vez disso, use validation_data e label_column_name.

sample_weight_valid
DataFrame ou ndarray ou TabularDataset
Obrigatório

O peso a ser fornecido a cada amostra de validação durante a execução de pipelines de pontuação; cada linha deve corresponder a uma linha em X e dados y.

Especifique esse parâmetro ao especificar X_valid. Essa configuração está sendo preterida. Em vez disso, use validation_data e weight_column_name.

cv_splits_indices
List[List[ndarray]]
Obrigatório

Indica onde dividir os dados de treinamento para validação cruzada. Cada linha é uma dobra cruzada separada e, dentro de cada dobra cruzada, fornece 2 matrizes numpy, a primeira com os índices para amostras a serem usadas para dados de treinamento e a segunda com os índices a serem usados para dados de validação. ou seja, [[t1, v1], [t2, v2], ...] onde t1 são os índices de treinamento para a primeira dobra cruzada e v1 são os índices de validação para a primeira dobra cruzada. Essa opção tem suporte quando os dados são passados como conjunto de dados de recursos e coluna Rótulo separados.

Para especificar dados existentes como dados de validação, use validation_data. Para permitir que o AutoML extraia dados de validação fora dos dados de treinamento, especifique n_cross_validations ou validation_size. Use cv_split_column_names se você tiver colunas de validação cruzada no training_data.

validation_size
float
Obrigatório

Qual fração dos dados deve ser mantida para validação quando os dados de validação do usuário não são especificados. Isso deve estar entre 0,0 e 1,0 não inclusivo.

Especifique validation_data para fornecer dados de validação; caso contrário, defina n_cross_validations ou validation_size para extrair os dados de validação dos dados de treinamento especificados. Para a dobra de validação cruzada personalizada, use cv_split_column_names.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

n_cross_validations
int ou str
Obrigatório

Quantas validações cruzadas devem ser executadas quando os dados de validação do usuário não são especificados.

Especifique validation_data para fornecer dados de validação; caso contrário, defina n_cross_validations ou validation_size para extrair os dados de validação dos dados de treinamento especificados. Para a dobra de validação cruzada personalizada, use cv_split_column_names.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

y_min
float
Obrigatório

Valor mínimo de y para um experimento de regressão. A combinação de y_min e y_max é usada para normalizar as métricas do conjunto de testes com base no intervalo de dados de entrada. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

y_max
float
Obrigatório

Valor máximo de y para um experimento de regressão. A combinação de y_min e y_max é usada para normalizar as métricas do conjunto de testes com base no intervalo de dados de entrada. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

num_classes
int
Obrigatório

O número de classes nos dados do rótulo para um experimento de classificação. Essa configuração está sendo preterida. Em vez disso, esse valor será calculado a partir dos dados.

featurization
str ou FeaturizationConfig
Obrigatório

'auto' / 'off' / FeaturizationConfig Indicador para verificar se a etapa de definição de recursos deve ser feita automaticamente ou não, ou se a definição de recursos deve ser usada. Observação: se os dados de entrada forem esparsos, a definição de recursos não poderá ser ativada.

O tipo de coluna é detectado automaticamente. Com base no tipo de coluna detectada, o pré-processamento e a definição de recursos são feitos do seguinte modo:

  • Categórico: codificação de destino, uma codificação ativa, remover categorias de cardinalidade alta, imputar valores ausentes.

  • Numérico: imputar valores ausentes, distância do cluster, peso de evidência.

  • DateTime: vários recursos, como dia, segundos, minutos, horas etc.

  • Texto: conjunto de palavras, incorporação do Word previamente treinado, codificação de destino de texto.

Mais detalhes podem ser encontrados no artigo Configurar experimentos do ML automatizado no Python.

Para personalizar a etapa de definição de recursos, forneça um objeto FeaturizationConfig. No momento, a definição de recursos personalizada dá suporte ao bloqueio de um conjunto de transformadores, à atualização da finalidade da coluna, à edição de parâmetros do transformador e à remoção de colunas. Para obter mais informações, consulte Personalizar a engenharia de recursos.

Observação: os recursos de série temporal são tratados separadamente quando o tipo de tarefa é definido como previsão independente desse parâmetro.

max_cores_per_iteration
int
Obrigatório

O número máximo de threads a serem usados para uma determinada iteração de treinamento. Valores aceitáveis:

  • Maior que 1 e menor ou igual ao número máximo de núcleos no destino de computação.

  • Igual a -1, o que significa usar todos os núcleos possíveis por iteração e por execução filho.

  • Igual a 1, o valor padrão.

max_concurrent_iterations
int
Obrigatório

representa o número máximo de iterações que seriam executadas em paralelo. O valor padrão é 1.

  • Os clusters AmlCompute dão suporte a uma interação em execução por nó. Para vários experimentos executados em paralelo em um único cluster AmlCompute, a soma dos valores de max_concurrent_iterations todos os experimentos deve ser menor ou igual ao número máximo de nós.

  • O DSVM dá suporte a várias iterações por nó. max_concurrent_iterations deve ser menor ou igual ao número de núcleos no DSVM. Para várias execuções do experimento em paralelo em um único DSVM, a soma dos valores de max_concurrent_iterations para todos os experimentos deve ser menor ou igual ao número máximo de nós.

  • Databricks – max_concurrent_iterations deve ser menor ou igual ao número de nós de trabalho no Databricks.

max_concurrent_iterations não se aplica a execuções locais. Anteriormente, esse parâmetro foi nomeado como concurrent_iterations.

iteration_timeout_minutes
int
Obrigatório

Tempo máximo em minutos em que cada iteração pode ser executada antes de ser terminada. Se não for especificado, será usado um valor de 1 mês ou 43200 minutos.

mem_in_mb
int
Obrigatório

Uso máximo de memória em que cada iteração pode ser executada antes de ser terminada. Se não for especificado, será usado um valor de 1 PB ou 1073741824 MB.

enforce_time_on_windows
bool
Obrigatório

Se deve impor um limite de tempo no treinamento do modelo em cada iteração no Windows. O padrão é True. Se estiver executando de um arquivo de script Python (.py), consulte a documentação para permitir limites de recursos no Windows.

experiment_timeout_hours
float
Obrigatório

Quantidade máxima de tempo em horas que todas as iterações combinadas podem levar antes que o experimento seja encerrado. Pode ser um valor decimal, como 0,25 representando 15 minutos. Se não for especificado, o tempo limite do experimento padrão será de 6 dias. Para especificar um tempo limite menor ou igual a 1 hora, verifique se o tamanho do conjunto de dados não é maior que 10.000.000 (linhas vezes coluna) ou se há erros.

experiment_exit_score
float
Obrigatório

Pontuação de destino para o experimento. O experimento termina depois que essa pontuação é atingida. Se não for especificado (nenhum critério), o experimento será executado até que nenhum outro progresso seja feito na métrica primária. Para obter mais informações sobre critérios de saída, consulte este >>article https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria'_.<<

enable_early_stopping
bool
Obrigatório

Se deve permitir o encerramento antecipado caso a pontuação não esteja melhorando em curto prazo. O padrão é True.

Lógica de parada antecipada:

  • Nenhuma parada antecipada para as primeiras 20 iterações (marcos).

  • A janela de parada antecipada começa na 21ª iteração e procura iterações early_stopping_n_iters (atualmente definida como 10). Isso significa que a primeira iteração em que a interrupção pode ocorrer é na parte 31.

  • O AutoML ainda agenda duas iterações de conjunto após a parada antecipada, o que pode resultar em pontuações mais altas.

  • A interrupção antecipada será disparada se o valor absoluto da melhor pontuação calculada for o mesmo para iterações de early_stopping_n_iters anteriores, ou seja, se não houver melhoria na pontuação para iterações early_stopping_n_iters.

blocked_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Uma lista de algoritmos a serem ignorados para um experimento. Se enable_tf for False, os modelos TensorFlow serão incluídos no blocked_models.

blacklist_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Parâmetro preterido, use blocked_models em vez disso.

exclude_nan_labels
bool
Obrigatório

Se deve excluir as linhas com valores NaN no rótulo. O padrão é True.

verbosity
int
Obrigatório

O nível de detalhamento para gravar no arquivo de log. O padrão é INFO ou 20. Os valores aceitáveis são definidos na biblioteca de registros em log do Python.

enable_tf
bool
Obrigatório

Se os algoritmos TensorFlow devem ser habilitados/desabilitados. O padrão é False.

model_explainability
bool
Obrigatório

Se deve habilitar a explicação do melhor modelo do AutoML no final de todas as iterações de treinamento do AutoML. O padrão é True. Para obter mais informações, consulte Interpretabilidade: explicações de modelo no machine learning automatizado.

allowed_models
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>
Obrigatório

Uma lista de nomes de modelos para pesquisar um experimento. Se não for especificado, todos os modelos compatíveis para a tarefa serão usados menos os especificados no blocked_models ou modelos TensorFlow preteridos. Os modelos compatíveis com cada tipo de tarefa são descritos na classe SupportedModels.

allowed_models
Obrigatório

Uma lista de nomes de modelos para pesquisar um experimento. Se não for especificado, todos os modelos compatíveis para a tarefa serão usados menos os especificados no blocked_models ou modelos TensorFlow preteridos. Os modelos compatíveis com cada tipo de tarefa são descritos na classe SupportedModels.

whitelist_models
Obrigatório

Parâmetro preterido, use blocked_models.

enable_onnx_compatible_models
bool
Obrigatório

Se deve habilitar ou desabilitar a imposição de modelos compatíveis com ONNX. O padrão é False. Para obter mais informações sobre o ONNX (Open Neural Network Exchange) e o Azure Machine Learning, consulte este artigo.

forecasting_parameters
ForecastingParameters
Obrigatório

Um objeto para conter todos os parâmetros específicos de previsão.

time_column_name
str
Obrigatório

O nome da coluna de hora. Esse parâmetro é necessário na previsão para especificar a coluna datetime nos dados de entrada usados para criar a série temporal e inferir sua frequência. Essa configuração está sendo preterida. Use forecasting_parameters.

max_horizon
int
Obrigatório

O horizonte de previsão máximo desejado em unidades de frequência de série temporal. O valor padrão é 1. Essa configuração está sendo preterida. Use forecasting_parameters.

As unidades são baseadas no intervalo de tempo de seus dados de treinamento (por exemplo, mensal, semanal) que a previsão deve estimar. Quando o tipo de tarefa é previsão, esse parâmetro é necessário. Para obter mais informações sobre como definir parâmetros de previsão, confira Treinar automaticamente um modelo de previsão de série temporal.

grain_column_names
str ou list(str)
Obrigatório

Os nomes das colunas usadas para agrupar uma série temporal. Ele pode ser usado para criar várias séries. Se a agregação não for definida, o conjunto de dados será considerado uma série temporal. Esse parâmetro é usado com a previsão de tipo de tarefa. Essa configuração está sendo preterida. Use forecasting_parameters.

target_lags
int ou list(int)
Obrigatório

O número de períodos anteriores com atraso na coluna de destino. O padrão é 1. Essa configuração está sendo preterida. Use forecasting_parameters.

Durante a previsão, esse parâmetro representa o número de linhas para atrasar os valores de destino de acordo com a frequência dos dados. Isso é representado como uma lista ou um único inteiro. O retardo deve ser usado quando a relação entre as variáveis independentes e a variável dependente não corresponde ou se correlaciona por padrão. Por exemplo, a previsão da demanda de um produto em um dado mês pode depender do preço de mercadorias específicas 3 meses antes disso. Neste exemplo, você pode querer retardar o destino (demanda) negativamente por 3 meses para que o modelo seja treinado na relação correta. Para obter mais informações, consulte Treinar automaticamente um modelo de previsão de série temporal.

feature_lags
str
Obrigatório

Sinalizador para gerar atraso para os recursos numéricos. Essa configuração está sendo preterida. Use forecasting_parameters.

target_rolling_window_size
int
Obrigatório

O número de períodos anteriores usados para criar uma média de janela móvel da coluna de destino. Essa configuração está sendo preterida. Use forecasting_parameters.

Durante a previsão, esse parâmetro representa n períodos históricos a serem usados para gerar valores previstos, <= o tamanho do conjunto de treinamento. Se omitido, n será o tamanho total do conjunto de treinamento. Especifique esse parâmetro quando desejar considerar apenas certa quantidade de histórico no treinamento do modelo.

country_or_region
str
Obrigatório

País/região usada para gerar recursos de feriados. Devem ser um código de país/região de duas letras ISO 3166, por exemplo, 'US' ou 'GB'. Essa configuração está sendo preterida. Use forecasting_parameters.

use_stl
str
Obrigatório

Configure a Decomposição de STL da coluna de destino da série temporal. use_stl pode usar três valores: None (padrão) – sem decomposição de stl, 'season' – gerar apenas o componente de estação e season_trend – gerar componentes de temporada e tendência. Essa configuração está sendo preterida. Use forecasting_parameters.

seasonality
int
Obrigatório

Defina a sazonalidade de série temporal. Se a sazonalidade for definida como -1, ela será inferida. Se use_stl não estiver definido, esse parâmetro não será usado. Essa configuração está sendo preterida. Use forecasting_parameters.

short_series_handling_configuration
str
Obrigatório

O parâmetro que define como o AutoML deve lidar com uma série temporal curta.

Valores possíveis: 'auto' (padrão), 'pad', 'drop' e None.

  • auto as séries curtas serão preenchidas se não houver séries longas; caso contrário, as séries curtas serão removidas.
  • pad todas as séries curtas serão preenchidas.
  • drop todas as séries curtas serão removidas.
  • None as séries curtas não serão modificadas. Se definida como 'pad', a tabela será preenchida com zeros e valores vazios para os regressores e valores aleatórios para o destino com a média igual à mediana do valor de destino para uma determinada ID de série temporal. Se a mediana for maior ou igual a zero, o valor de preenchimento mínimo será recortado por zero: Entrada:

Data

numeric_value

cadeia de caracteres

destino

01/01/2020

23

green

55

A saída supondo que o número mínimo de valores seja quatro: +————+—————+———-+—–+ | Data | numeric_value | cadeia de caracteres | target | +============+===============+==========+========+ | 29/12/2019 | 0 | NA | 55.1 | +————+—————+———-+——–+ | 2019-12-30 | 0 | NA | 55.6 | +————+—————+———-+——–+ | 2019-12-31 | 0 | NA | 54.5 | +————+—————+———-+——–+ | 01/01/2020 | 23 | verde | 55 | +————+—————+———-+——–+

Observação: há dois parâmetros short_series_handling_configuration e short_series_handling herdado. Quando ambos os parâmetros são definidos, os sincronizamos conforme mostrado na tabela abaixo (short_series_handling_configuration e short_series_handling para brevidade são marcados como handling_configuration e handling, respectivamente).

Manipulação

handling_configuration

tratamento resultante

handling_configuration resultante

True

auto

True

auto

True

Almofada

True

auto

True

drop

True

auto

True

Nenhum

Falso

Nenhum

Falso

auto

Falso

Nenhum

Falso

Almofada

Falso

Nenhum

Falso

drop

Falso

Nenhum

Falso

Nenhum

Falso

Nenhum

freq
str ou None
Obrigatório

Frequência de previsão.

Durante a previsão, esse parâmetro representa o período com o qual a previsão é desejada, por exemplo, diária, semanal, anual etc. A frequência da previsão é a frequência do conjuntos de dados por padrão. Como opção, você pode defini-lo como maior (mas não menor) que a frequência do conjunto de dados. Vamos agregar os dados e gerar os resultados na frequência de previsão. Por exemplo, para dados diários, você pode definir a frequência como diária, semanal ou mensal, mas não por hora. A frequência precisa ser um alias de deslocamento do pandas. Consulte a documentação do pandas para obter mais informações: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
str ou None
Obrigatório

A função a ser usada para agregar a coluna de destino da série temporal de acordo com a frequência especificada pelo usuário. Se target_aggregation_function estiver definido, mas o parâmetro freq não estiver definido, o erro será gerado. As possíveis funções de agregação de destino são: "sum", "max", "min" e "mean".

Freq

target_aggregation_function

Mecanismo de correção de regularidade de dados

Nenhum (padrão)

Nenhum (padrão)

A agregação não é aplicada. Se a frequência válida não puder ser determinada, o erro será gerado.

Algum valor

Nenhum (padrão)

A agregação não é aplicada. Se o número de pontos de dados em conformidade com a grade de frequência fornecida for menor, 90%desses pontos serão removidos, caso contrário, o erro será gerado.

Nenhum (padrão)

Função de agregação

O erro sobre os parâmetros de frequência ausentes é gerado.

Algum valor

Função de agregação

Agregar à frequência usando a função providedaggregation.

enable_voting_ensemble
bool
Obrigatório

Se deve habilitar/desabilitar a iteração VotingEnsemble. O padrão é True. Para obter mais informações sobre ensembles, consulte Configuração de Ensemble.

enable_stack_ensemble
bool
Obrigatório

Se deve habilitar/desabilitar a iteração StackEnsemble. A opção padrão é Nenhum. Se o sinalizador enable_onnx_compatible_models estiver sendo definido, a iteração StackEnsemble será desabilitada. Da mesma forma, para tarefas da série temporal, a iteração StackEnsemble será desabilitada por padrão, para evitar riscos de sobreajuste devido a um pequeno conjunto de treinamento usado para ajustar o aprendiz meta. Para obter mais informações sobre ensembles, consulte Configuração de Ensemble.

debug_log
str
Obrigatório

O arquivo de log no qual gravar informações de depuração. Se não for especificado, 'automl.log' será usado.

training_data
DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os dados de treinamento a serem usados no experimento. Devem conter recursos de treinamento e uma coluna de rótulo (opcionalmente, uma coluna de pesos de amostra). Se training_data for especificado, o parâmetro label_column_name também deverá ser especificado.

training_data foi introduzido na versão 1.0.81.

validation_data
DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Obrigatório

Os dados de validação a serem usados no experimento. Devem conter recursos de treinamento e uma coluna de rótulo (opcionalmente, uma coluna de pesos de amostra). Se validation_data for especificado, os parâmetros training_data e label_column_name deverão ser especificados.

validation_data foi introduzido na versão 1.0.81. Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

test_data
Dataset ou TabularDataset
Obrigatório

O recurso Teste de Modelo que usa conjuntos de dados de teste ou divisões de dados de teste é um recurso no estado Versão Prévia e pode mudar a qualquer momento. Os dados de teste a serem usados para uma execução de teste que serão iniciados automaticamente após a conclusão do treinamento do modelo. A execução de teste terá previsões usando o melhor modelo e calculará métricas considerando essas previsões.

Se esse parâmetro ou o parâmetro test_size não for especificado, nenhuma execução de teste será feita automaticamente após a conclusão do treinamento do modelo. Os dados de teste devem conter os recursos e a coluna de rótulo. Se test_data for especificado, o parâmetro label_column_name deverá ser especificado.

test_size
float
Obrigatório

O recurso Teste de Modelo que usa conjuntos de dados de teste ou divisões de dados de teste é um recurso no estado Versão Prévia e pode mudar a qualquer momento. Qual fração dos dados de treinamento deve ser mantida para dados de teste em uma execução de teste que será iniciada automaticamente após a conclusão do treinamento do modelo. A execução de teste terá previsões usando o melhor modelo e calculará métricas considerando essas previsões.

Isso deve estar entre 0,0 e 1,0 não inclusivo. Se test_size for especificado ao mesmo tempo que validation_size, os dados de teste serão divididos de training_data antes da divisão dos dados de validação. Por exemplo, se validation_size=0.1, test_size=0.1 e os dados de treinamento originais tiverem 1000 linhas, os dados de teste terão 100 linhas, os dados de validação terão 90 linhas e os dados de treinamento terão 810 linhas.

Para tarefas de regressão, usa-se a amostragem aleatória. Para tarefas de classificação, a amostragem estratificada é usada. No momento, a previsão não é compatível com a especificação de um conjunto de dados de teste usando uma divisão de treinamento/teste.

Se esse parâmetro ou o parâmetro test_data não for especificado, nenhuma execução de teste será feita automaticamente após a conclusão do treinamento do modelo.

label_column_name
Union[str, int]
Obrigatório

O nome da coluna de rótulo. Se os dados de entrada são de um pandas.DataFrame que não tem nomes de coluna, os índices de coluna podem ser usados, expressos como inteiros.

Esse parâmetro é aplicável aos parâmetros training_data, validation_data e test_data. label_column_name foi introduzido na versão 1.0.81.

weight_column_name
Union[str, int]
Obrigatório

O nome da coluna de peso de amostra. O ML Automatizado oferece suporte a uma coluna ponderada como uma entrada, fazendo com que as linhas nos dados sejam ponderadas para cima ou para baixo. Se os dados de entrada são de um pandas.DataFrame que não tem nomes de coluna, os índices de coluna podem ser usados, expressos como inteiros.

Esse parâmetro é aplicável aos parâmetros training_data e validation_data. weight_column_names foi introduzido na versão 1.0.81.

cv_split_column_names
list(str)
Obrigatório

Lista de nomes das colunas que contêm divisão de validação cruzada personalizada. Cada uma das colunas de divisão CV representa uma divisão CV, em que cada linha é marcada como 1 para treinamento ou 0 para validação.

Esse parâmetro é aplicável ao parâmetro training_data para fins de validação cruzada personalizada. cv_split_column_names foi introduzido na versão 1.6.0

Use cv_split_column_names ou cv_splits_indices.

Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

enable_local_managed
bool
Obrigatório

Parâmetro desabilitado. As execuções gerenciadas locais não podem ser habilitadas no momento.

enable_dnn
bool
Obrigatório

Se deve incluir modelos baseados em DNN durante a seleção do modelo. O padrão em init é None. No entanto, o padrão é True para tarefas do DNN NLP e False para todas as outras tarefas do AutoML.

Comentários

O código a seguir mostra um exemplo básico da criação de um objeto AutoMLConfig e do envio de um experimento para regressão:


   automl_settings = {
       "n_cross_validations": 3,
       "primary_metric": 'r2_score',
       "enable_early_stopping": True,
       "experiment_timeout_hours": 1.0,
       "max_concurrent_iterations": 4,
       "max_cores_per_iteration": -1,
       "verbosity": logging.INFO,
   }

   automl_config = AutoMLConfig(task = 'regression',
                               compute_target = compute_target,
                               training_data = train_data,
                               label_column_name = label,
                               **automl_settings
                               )

   ws = Workspace.from_config()
   experiment = Experiment(ws, "your-experiment-name")
   run = experiment.submit(automl_config, show_output=True)

Uma amostra completa está disponível em Regressão

Exemplos de uso de AutoMLConfig para previsão estão nestes notebooks:

Exemplos de uso de AutoMLConfig para todos os tipos de tarefa podem ser encontrados nesses notebooks de ML automatizado.

Para saber mais sobre o ML automatizado, confira os artigos:

Para obter mais informações sobre diferentes opções para configurar as divisões de dados de treinamento/validação e a validação cruzada para o machine learning automatizado, o AutoML, os experimentos, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado.

Métodos

as_serializable_dict

Converta o objeto em dicionário.

get_supported_dataset_languages

Obter idiomas compatíveis e seus códigos de idioma correspondentes no padrão ISO 639-3.

as_serializable_dict

Converta o objeto em dicionário.

as_serializable_dict() -> Dict[str, Any]

get_supported_dataset_languages

Obter idiomas compatíveis e seus códigos de idioma correspondentes no padrão ISO 639-3.

get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]

Parâmetros

cls
Obrigatório

Objeto de classe de AutoMLConfig.

use_gpu
Obrigatório

booliano que indica se a computação gpu está sendo usada ou não.

Retornos

dicionário de formato {: }. O código de idioma segue o padrão ISO 639-3; consulte https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes