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.objectAutoMLConfig
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
Nome | Description |
---|---|
task
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
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
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
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
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:
Para obter mais informações sobre classificação, confira as métricas para cenários de classificação. |
compute_target
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
Obrigatório
|
<xref:SparkContext>
O contexto do Spark. Aplicável somente quando usado dentro do ambiente Azure Databricks/Spark. |
X
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
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
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_valid
Obrigatório
|
Os recursos de validação a serem usados ao ajustar pipelines durante um experimento. Se especificado, |
y_valid
Obrigatório
|
Rótulos de validação para uso ao ajustar pipelines durante um experimento. Ambos |
sample_weight_valid
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 |
cv_splits_indices
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_size
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 Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
n_cross_validations
Obrigatório
|
Quantas validações cruzadas devem ser executadas quando os dados de validação do usuário não são especificados. Especifique Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
y_min
Obrigatório
|
Valor mínimo de y para um experimento de regressão. A combinação de |
y_max
Obrigatório
|
Valor máximo de y para um experimento de regressão. A combinação de |
num_classes
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
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:
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
Obrigatório
|
O número máximo de threads a serem usados para uma determinada iteração de treinamento. Valores aceitáveis:
|
max_concurrent_iterations
Obrigatório
|
representa o número máximo de iterações que seriam executadas em paralelo. O valor padrão é 1.
|
iteration_timeout_minutes
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
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
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
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
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
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:
|
blocked_models
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
Uma lista de algoritmos a serem ignorados para um experimento. Se |
blacklist_models
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
Parâmetro preterido, use blocked_models em vez disso. |
exclude_nan_labels
Obrigatório
|
Se deve excluir as linhas com valores NaN no rótulo. O padrão é True. |
verbosity
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
Obrigatório
|
Parâmetro preterido para habilitar/desabilitar algoritmos Tensorflow. O padrão é False. |
model_explainability
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
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
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 |
whitelist_models
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
Parâmetro preterido, use blocked_models. |
enable_onnx_compatible_models
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
Obrigatório
|
Um objeto ForecastingParameters para reter todos os parâmetros específicos de previsão. |
time_column_name
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
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
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
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
Obrigatório
|
Sinalizador para gerar atraso para os recursos numéricos. Essa configuração está sendo preterida. Use forecasting_parameters. |
target_rolling_window_size
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
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
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
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
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.
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
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
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
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
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
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
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
|
validation_data
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
|
test_data
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
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 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 |
label_column_name
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 |
weight_column_name
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 |
cv_split_column_names
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 Use Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
enable_local_managed
Obrigatório
|
Parâmetro desabilitado. As execuções gerenciadas locais não podem ser habilitadas no momento. |
enable_dnn
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
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
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
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
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
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:
Para obter mais informações sobre classificação, confira as métricas para cenários de classificação. |
compute_target
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
Obrigatório
|
<xref:SparkContext>
O contexto do Spark. Aplicável somente quando usado dentro do ambiente Azure Databricks/Spark. |
X
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
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
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_valid
Obrigatório
|
Os recursos de validação a serem usados ao ajustar pipelines durante um experimento. Se especificado, |
y_valid
Obrigatório
|
Rótulos de validação para uso ao ajustar pipelines durante um experimento. Ambos |
sample_weight_valid
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 |
cv_splits_indices
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_size
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 Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
n_cross_validations
Obrigatório
|
Quantas validações cruzadas devem ser executadas quando os dados de validação do usuário não são especificados. Especifique Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
y_min
Obrigatório
|
Valor mínimo de y para um experimento de regressão. A combinação de |
y_max
Obrigatório
|
Valor máximo de y para um experimento de regressão. A combinação de |
num_classes
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
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:
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
Obrigatório
|
O número máximo de threads a serem usados para uma determinada iteração de treinamento. Valores aceitáveis:
|
max_concurrent_iterations
Obrigatório
|
representa o número máximo de iterações que seriam executadas em paralelo. O valor padrão é 1.
|
iteration_timeout_minutes
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
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
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
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
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 >> |
enable_early_stopping
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:
|
blocked_models
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
Uma lista de algoritmos a serem ignorados para um experimento. Se |
blacklist_models
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
Parâmetro preterido, use blocked_models em vez disso. |
exclude_nan_labels
Obrigatório
|
Se deve excluir as linhas com valores NaN no rótulo. O padrão é True. |
verbosity
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
Obrigatório
|
Se os algoritmos TensorFlow devem ser habilitados/desabilitados. O padrão é False. |
model_explainability
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
Obrigatório
|
list(str) ou
list(Classification) <xref:for classification task> ou
list(Regression) <xref:for regression task> ou
list(Forecasting) <xref:for forecasting task>
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 |
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 |
whitelist_models
Obrigatório
|
Parâmetro preterido, use blocked_models. |
enable_onnx_compatible_models
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
Obrigatório
|
Um objeto para conter todos os parâmetros específicos de previsão. |
time_column_name
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
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
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
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
Obrigatório
|
Sinalizador para gerar atraso para os recursos numéricos. Essa configuração está sendo preterida. Use forecasting_parameters. |
target_rolling_window_size
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
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
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
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
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.
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
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
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
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
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
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
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
|
validation_data
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
|
test_data
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
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 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 |
label_column_name
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 |
weight_column_name
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 |
cv_split_column_names
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 Use Para obter mais informações, consulte Configurar divisões de dados e validação cruzada no machine learning automatizado. |
enable_local_managed
Obrigatório
|
Parâmetro desabilitado. As execuções gerenciadas locais não podem ser habilitadas no momento. |
enable_dnn
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:
Configurar experimentos de ML automatizado no Python. Neste artigo, há informações sobre os diferentes algoritmos e as métricas primárias usadas para cada tipo de tarefa.
Treinar automaticamente um modelo de previsão de série temporal. Neste artigo, há informações sobre quais parâmetros de construtor e
**kwargs
são usados na previsão.
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
Nome | Description |
---|---|
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
Tipo | Description |
---|---|
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 |