AutoMLConfig Classe
Representa a configuração para submeter uma experimentação de ML automatizada no Azure Machine Learning.
Este objeto de configuração contém e mantém os parâmetros para configurar a execução da experimentação, bem como os dados de preparação a serem utilizados no tempo de execução. Para obter orientações sobre como selecionar as suas definiçõ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
O tipo de tarefa a executar. Os valores podem ser "classificação", "regressão" ou "previsão", consoante o tipo de problema de ML automatizado a resolver.
- path
- str
O caminho completo para a pasta do projeto do Azure Machine Learning. Se não for especificado, a predefinição é utilizar o diretório atual ou "".
- iterations
- int
O número total de diferentes combinações de algoritmos e parâmetros a testar durante uma experimentação de ML automatizada. Se não for especificado, a predefinição é 1000 iterações.
A métrica que o Machine Learning Automatizado irá otimizar para a seleção de modelos. O Machine Learning Automatizado recolhe mais métricas do que as que pode otimizar. Pode utilizar 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 especificado, a precisão é utilizada para tarefas de classificação, a média de raiz normalizada quadrada é utilizada para tarefas de previsão e regressão, a precisão é utilizada para classificação de imagens e classificação de várias etiquetas de imagem e a precisão média é utilizada para a deteção de objetos de imagem.
- positive_label
- Any
A etiqueta de classe positiva que o Machine Learning Automatizado utilizará para calcular métricas binárias com. As métricas binárias são calculadas em duas condições para tarefas de classificação:
- A coluna label consiste em duas classes que indicam que a tarefa de classificação binária AutoML utilizará uma classe positiva especificada quando positive_label for transmitida, caso contrário, o AutoML escolherá uma classe positiva com base no valor codificado por etiquetas.
- tarefa de classificação de várias classes com positive_label especificada
Para obter mais informações sobre classificação, veja as métricas para cenários de classificação.
- compute_target
- AbstractComputeTarget
O destino de computação do Azure Machine Learning para executar a experimentação do Machine Learning Automatizado. Veja 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>
O contexto do Spark. Aplicável apenas quando utilizado no ambiente do Azure Databricks/Spark.
- X
- DataFrame ou ndarray ou Dataset ou TabularDataset
As funcionalidades de preparação a utilizar ao ajustar pipelines durante uma experimentação. Esta definição está a ser preterida. Em alternativa, utilize training_data e label_column_name.
- y
- DataFrame ou ndarray ou Dataset ou TabularDataset
As etiquetas de preparação a utilizar ao ajustar pipelines durante uma experimentação. Este é o valor que o modelo irá prever. Esta definição está a ser preterida. Em alternativa, utilize training_data e label_column_name.
- sample_weight
- DataFrame ou ndarray ou TabularDataset
O peso a atribuir a cada exemplo de preparação ao executar pipelines de ajuste, cada linha deve corresponder a uma linha em dados X e y.
Especifique este parâmetro ao especificar X
.
Esta definição está a ser preterida. Em alternativa, utilize training_data e weight_column_name.
- X_valid
- DataFrame ou ndarray ou Dataset ou TabularDataset
Funcionalidades de validação a utilizar ao ajustar pipelines durante uma experimentação.
Se especificado, y_valid
ou sample_weight_valid
também tem de ser especificado.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e label_column_name.
- y_valid
- DataFrame ou ndarray ou Dataset ou TabularDataset
Etiquetas de validação a utilizar ao ajustar pipelines durante uma experimentação.
Ambos X_valid
e y_valid
têm de ser especificados em conjunto.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e label_column_name.
- sample_weight_valid
- DataFrame ou ndarray ou TabularDataset
O peso a atribuir a cada exemplo de validação ao executar pipelines de classificação, cada linha deve corresponder a uma linha em dados X e y.
Especifique este parâmetro ao especificar X_valid
.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e weight_column_name.
Índices onde dividir dados de preparação para validação cruzada. Cada linha é uma dobra cruzada separada e dentro de cada dobra cruzada, fornece duas matrizes numpy, a primeira com os índices para exemplos a utilizar para dados de preparação e a segunda com os índices a utilizar para dados de validação. ou seja, [[t1, v1], [t2, v2], ...] em que t1 são os índices de preparação 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, utilize validation_data
. Para permitir que o AutoML extraia dados de validação dos dados de preparação, especifique n_cross_validations
ou validation_size
.
Utilize cv_split_column_names
se tiver colunas de validação cruzada no training_data
.
- validation_size
- float
Que fração dos dados a reter para validação quando os dados de validação do utilizador não são especificados. Isto deve ser 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
extraia dados de validação dos dados de preparação especificados.
Para a pasta de validação cruzada personalizada, utilize cv_split_column_names
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- n_cross_validations
- int
Quantas validações cruzadas deve executar quando os dados de validação do utilizador não são especificados.
Especifique validation_data
para fornecer dados de validação, caso contrário, defina n_cross_validations
ou validation_size
extraia dados de validação dos dados de preparação especificados.
Para a pasta de validação cruzada personalizada, utilize cv_split_column_names
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- y_min
- float
Valor mínimo de y para uma experimentação de regressão. A combinação de e y_max
é utilizada para normalizar as métricas do conjunto de testes com base no intervalo de y_min
dados de entrada. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- y_max
- float
Valor máximo de y para uma experimentação de regressão. A combinação de e y_max
é utilizada para normalizar as métricas do conjunto de testes com base no intervalo de y_min
dados de entrada. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- num_classes
- int
O número de classes nos dados de etiqueta para uma experimentação de classificação. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- featurization
- str ou FeaturizationConfig
Indicador "auto"/"off" /FeaturizationConfig para saber se o passo de caracterização deve ou não ser feito automaticamente ou se deve ser utilizada a caracterização personalizada. Nota: se os dados de entrada forem dispersos, a caracterização não pode ser ativada.
O tipo de coluna é detetado automaticamente. Com base no tipo de coluna detetado, a pré-processamento/caracterização é efetuada da seguinte forma:
Categórico: codificação de destino, codificação frequente, categorias de cardinalidade elevadas, impute valores em falta.
Numérico: impute valores em falta, distância do cluster, peso da evidência.
DateTime: várias funcionalidades, como dia, segundos, minutos, horas, etc.
Texto: Saco de palavras, incorporação de Word pré-preparada, codificação de destino de texto.
Pode encontrar mais detalhes no artigo Configurar experimentações de ML automatizadas no Python.
Para personalizar o passo de caracterização, forneça um objeto FeaturizationConfig. Atualmente, a caracterização personalizada suporta o bloqueio de um conjunto de transformadores, a atualização da finalidade da coluna, a edição de parâmetros do transformador e a remoção de colunas. Para obter mais informações, veja Personalizar engenharia de funcionalidades.
Nota: as funcionalidades da Timeseries são processadas separadamente quando o tipo de tarefa está definido como previsão independente deste parâmetro.
- max_cores_per_iteration
- int
O número máximo de threads a utilizar para uma determinada iteração de preparação. 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 utilizar todos os núcleos possíveis por iteração por execução subordinada.
Igual a 1, a predefinição.
- max_concurrent_iterations
- int
Representa o número máximo de iterações que seriam executadas em paralelo. O valor predefinido é 1.
Os clusters AmlCompute suportam uma interação em execução por nó. Para múltiplas execuções principais de experimentação autoML executadas em paralelo num único cluster AmlCompute, a soma dos
max_concurrent_iterations
valores de todas as experimentações deve ser menor ou igual ao número máximo de nós. Caso contrário, as execuções serão colocadas em fila até que os nós estejam disponíveis.A DSVM suporta várias iterações por nó.
max_concurrent_iterations
deve ser menor ou igual ao número de núcleos na DSVM. Para várias experimentações executadas em paralelo numa única DSVM, a soma dosmax_concurrent_iterations
valores para todas as experimentações 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, este parâmetro era denominado concurrent_iterations
.
- iteration_timeout_minutes
- int
Tempo máximo em minutos para o qual cada iteração pode ser executada antes de terminar. Se não for especificado, é utilizado um valor de 1 mês ou 43200 minutos.
- mem_in_mb
- int
Utilização máxima da memória para a qual cada iteração pode ser executada antes de terminar. Se não for especificado, é utilizado um valor de 1 PB ou 1073741824 MB.
- enforce_time_on_windows
- bool
Se pretende impor um limite de tempo à preparação de modelos em cada iteração no Windows. A predefinição é Verdadeiro. Se estiver a ser executado a partir de um ficheiro de script python (.py), veja a documentação para permitir limites de recursos no Windows.
- experiment_timeout_hours
- float
Quantidade máxima de tempo em horas que todas as iterações combinadas podem demorar até que a experimentação termine. Pode ser um valor decimal como 0,25 que representa 15 minutos. Se não for especificado, o tempo limite da experimentação predefinido é de 6 dias. Para especificar um tempo limite inferior ou igual a 1 hora, certifique-se de que o tamanho do conjunto de dados não é superior a 10 000 000 (linhas vezes coluna) ou resultados de erros.
- experiment_exit_score
- float
Classificação de destino para experimentação. A experimentação termina depois de esta classificação ser atingida. Se não for especificada (sem critérios), a experimentação é executada até que não sejam feitos mais progressos na métrica primária. Para obter mais informações sobre critérios de saída, veja este artigo.
- enable_early_stopping
- bool
Se pretende ativar a cessação antecipada se a classificação não estiver a melhorar a curto prazo. A predefinição é Verdadeiro.
Lógica de paragem precoce:
Nenhuma paragem antecipada para as primeiras 20 iterações (marcos).
A janela de paragem antecipada começa na 21.ª iteração e procura iterações early_stopping_n_iters
(atualmente definido como 10). Isto significa que a primeira iteração onde a paragem pode ocorrer é a 31ª.
O AutoML ainda agenda 2 iterações de conjunto após a paragem antecipada, o que pode resultar em
classificações mais altas.
A paragem antecipada é acionada se o valor absoluto da melhor classificação calculada for o mesmo para o passado
early_stopping_n_iters iterações, ou seja, se não houver melhorias na classificaçã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>
Uma lista de algoritmos a ignorar para uma experimentação. Se enable_tf
for Falso, os modelos tensorFlow estã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>
Em vez disso, o parâmetro preterido utiliza blocked_models.
- exclude_nan_labels
- bool
Se pretende excluir linhas com valores naN na etiqueta. A predefinição é Verdadeiro.
- verbosity
- int
O nível de verbosidade para escrever no ficheiro de registo. A predefinição é INFO ou 20. Os valores aceitáveis são definidos na biblioteca de registos do Python.
- enable_tf
- bool
Parâmetro preterido para ativar/desativar algoritmos do Tensorflow. A predefinição é Falso.
- model_explainability
- bool
Se pretende ativar a explicação do melhor modelo autoML no final de todas as iterações de preparação autoML. A predefinição é Verdadeiro. Para obter mais informações, veja Interpretability: model explanations in automated machine learning (Interpretabilidade: explicações de modelos na aprendizagem automática automatizada).
- 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>
Uma lista de nomes de modelos para procurar uma experimentação. Se não for especificado, todos os modelos suportados para a tarefa são utilizados menos os modelos do TensorFlow especificados ou blocked_models
preteridos.
Os modelos suportados para cada tipo de tarefa são descritos na SupportedModels classe.
- 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>
Em vez disso, o parâmetro preterido utiliza allowed_models.
- enable_onnx_compatible_models
- bool
Quer ativar ou desativar a imposição dos modelos compatíveis com ONNX. A predefinição é Falso. Para obter mais informações sobre o Open Neural Network Exchange (ONNX) e o Azure Machine Learning, veja este artigo.
- forecasting_parameters
- ForecastingParameters
Um objeto ForecastingParameters para conter todos os parâmetros específicos de previsão.
- time_column_name
- str
O nome da coluna time. Este parâmetro é necessário ao prever para especificar a coluna datetime nos dados de entrada utilizados para criar a série temporal e inferir a respetiva frequência. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- max_horizon
- int
O horizonte de previsão máximo pretendido em unidades de frequência de série temporal. O valor predefinido é 1.
As unidades baseiam-se no intervalo de tempo dos seus dados de preparação, por exemplo, mensalmente, semanalmente que o meteorologista deve prever. Quando o tipo de tarefa está a ser previsto, este parâmetro é necessário. Para obter mais informações sobre como definir parâmetros de previsão, veja Preparar automaticamente um modelo de previsão de série temporal. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Os nomes das colunas utilizadas para agrupar uma série de horas. Pode ser utilizado para criar várias séries. Se o grão não estiver definido, assume-se que o conjunto de dados é uma série temporal. Este parâmetro é utilizado com a previsão do tipo de tarefa. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
O número de períodos passados a desfasar da coluna de destino. A predefinição é 1. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Ao prever, este parâmetro representa o número de linhas para atrasar os valores de destino com base na frequência dos dados. Isto é representado como uma lista ou um único número inteiro. O atraso deve ser utilizado quando a relação entre as variáveis independentes e a variável dependente não corresponder ou correlacionar por predefinição. Por exemplo, ao tentar prever a procura de um produto, a procura em qualquer mês pode depender do preço de mercadorias específicas 3 meses antes. Neste exemplo, poderá querer atrasar negativamente o destino (procura) em 3 meses para que o modelo esteja a preparar a relação correta. Para obter mais informações, veja Preparar automaticamente um modelo de previsão de série temporal.
- feature_lags
- str
Sinalizar para gerar atrasos para as funcionalidades numéricas. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- target_rolling_window_size
- int
O número de períodos anteriores utilizados para criar uma média de janela rolante da coluna de destino. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Ao prever, este parâmetro representa n períodos históricos a utilizar para gerar valores previstos, <= tamanho do conjunto de preparação. Se omitido, n é o tamanho completo do conjunto de preparação. Especifique este parâmetro quando quiser considerar apenas uma determinada quantidade de histórico ao preparar o modelo.
- country_or_region
- str
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser CÓDIGO ISO 3166 código de país/região de duas letras, por exemplo" E.U.A. ou "GB". Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- use_stl
- str
Configure a Decomposição de STL da coluna de destino da série temporal. use_stl pode levar três valores: Nenhum (predefinição) - sem decomposição stl, 'season' - apenas gerar componente de temporada e season_trend - gerar componentes de estação e tendência. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Definir sazonalidade da série temporal. Se a sazonalidade estiver definida como "automática", será inferida. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- short_series_handling_configuration
- str
O parâmetro que define como se o AutoML deve processar séries de tempo curtos.
Valores possíveis: "auto" (predefinição), "pad", "drop" e None.
- As séries curtas automáticas serão acolchoadas se não existirem séries longas, caso contrário, as séries curtas serão removidas.
- todas as séries curtas serão acolchoadas.
- largar todas as séries curtas será removida".
- Nenhuma das séries curtas será modificada. Se estiver definida como 'pad', a tabela será acolchoada com os 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 um determinado ID de série temporal. Se a mediana for mais ou igual a zero, o valor mínimo acolchoado será cortado por zero: Entrada:
Data
numeric_value
string
destino
2020-01-01
23
green
55
Saída assumindo que o número mínimo de valores é quatro:
Data
numeric_value
string
destino
2019-12-29
0
ND
55.1
2019-12-30
0
ND
55.6
2019-12-31
0
ND
54.5
2020-01-01
23
green
55
Nota: Temos dois parâmetros short_series_handling_configuration e short_series_handling legados. Quando ambos os parâmetros estão definidos, estamos a sincronizá-los conforme mostrado na tabela abaixo (short_series_handling_configuration e short_series_handling para a brevidade são marcados como handling_configuration e processamento, respetivamente).
processamento
handling_configuration
processamento resultante
resultante handling_configuration
Verdadeiro
auto
Verdadeiro
auto
Verdadeiro
teclado
Verdadeiro
auto
Verdadeiro
drop
Verdadeiro
auto
Verdadeiro
Nenhuma
Falso
Nenhuma
Falso
auto
Falso
Nenhuma
Falso
teclado
Falso
Nenhuma
Falso
drop
Falso
Nenhuma
Falso
Nenhuma
Falso
Nenhuma
Frequência de previsão.
Ao prever, este parâmetro representa o período com o qual a previsão é pretendida, por exemplo, diariamente, semanalmente, anualmente, etc. Por predefinição, a frequência de previsão é a frequência do conjunto de dados. Opcionalmente, pode defini-lo como maior (mas não menor) do 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, pode definir a frequência como diária, semanal ou mensal, mas não por hora. A frequência tem de ser um alias de deslocamento pandas. Veja a documentação do pandas para obter mais informações: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
A função a ser utilizada para agregar a coluna de destino da série temporal para estar em conformidade com uma frequência especificada por um utilizador. Se o 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 da regularidade de dados
Nenhum (Predefinição)
Nenhum (Predefinição)
A agregação não é aplicada. Se a frequência válida não puder ser indeterminada, o erro será gerado.
Algum Valor
Nenhum (Predefinição)
A agregação não é aplicada. Se o número de pontos de dados em conformidade com a grelha de frequência for menor, 90%estes pontos serão removidos, caso contrário, o erro será gerado.
Nenhum (Predefinição)
Função de agregação
O erro sobre os parâmetros de frequência em falta é gerado.
Algum Valor
Função de agregação
Agregar à frequência com a função providedaggregation.
- enable_voting_ensemble
- bool
Quer ativar/desativar a iteração VotingEnsemble. A predefinição é Verdadeiro. Para obter mais informações sobre conjuntos, veja Configuração do conjunto.
- enable_stack_ensemble
- bool
Quer ativar/desativar a iteração stackEnsemble. A predefinição é Nenhuma. Se enable_onnx_compatible_models sinalizador estiver a ser definido, a iteração StackEnsemble será desativada. Da mesma forma, para tarefas do Timeseries, a iteração StackEnsemble será desativada por predefinição, para evitar riscos de sobreajuste devido ao pequeno conjunto de preparação utilizado na adaptação do meta-aluno. Para obter mais informações sobre conjuntos, veja Configuração do conjunto.
- debug_log
- str
O ficheiro de registo para escrever informações de depuração. Se não for especificado, é utilizado "automl.log".
- training_data
- DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Os dados de preparação a utilizar na experimentação.
Deve conter as funcionalidades de preparação e uma coluna de etiqueta (opcionalmente uma coluna de pesos de exemplo).
Se training_data
for especificado, o label_column_name
parâmetro também tem de ser especificado.
training_data
foi introduzido na versão 1.0.81.
- validation_data
- DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Os dados de validação a utilizar na experimentação.
Deve conter as funcionalidades de preparação e a coluna de etiquetas (opcionalmente uma coluna de pesos de exemplo).
Se validation_data
for especificado, e training_data
label_column_name
os parâmetros têm de ser especificados.
validation_data
foi introduzido na versão 1.0.81. Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- test_data
- Dataset ou TabularDataset
A funcionalidade Teste de Modelo com conjuntos de dados de teste ou divisões de dados de teste é uma funcionalidade no estado de Pré-visualização e pode ser alterada em qualquer altura. Os dados de teste a utilizar para uma execução de teste que será iniciada automaticamente após a conclusão da preparação do modelo. A execução de teste obterá predições com o melhor modelo e calculará as métricas dadas estas predições.
Se este parâmetro ou o test_size
parâmetro não forem especificados, nenhuma execução de teste será executada automaticamente após a conclusão da preparação do modelo.
Os dados de teste devem conter funcionalidades e colunas de etiqueta.
Se test_data
for especificado, o label_column_name
parâmetro tem de ser especificado.
- test_size
- float
A funcionalidade Teste de Modelo com conjuntos de dados de teste ou divisões de dados de teste é uma funcionalidade no estado de Pré-visualização e pode ser alterada em qualquer altura. Que fração dos dados de preparação a reter para dados de teste para uma execução de teste que será iniciada automaticamente após a conclusão da preparação do modelo. A execução de teste obterá predições com o melhor modelo e calculará as métricas dadas estas predições.
Isto deve ser 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 antes de training_data
os dados de validação serem divididos.
Por exemplo, se validation_size=0.1
, test_size=0.1
e os dados de preparação originais tiverem 1000 linhas, os dados de teste terão 100 linhas, os dados de validação conterão 90 linhas e os dados de preparação terão 810 linhas.
Para tarefas baseadas em regressão, é utilizada uma amostragem aleatória. Para tarefas de classificação, é utilizada a amostragem estratificada. A previsão não suporta atualmente a especificação de um conjunto de dados de teste com uma divisão de preparação/teste.
Se este parâmetro ou o test_data
parâmetro não forem especificados, nenhuma execução de teste será executada automaticamente após a conclusão da preparação do modelo.
O nome da coluna de etiqueta. Se os dados de entrada forem de um pandas. DataFrame que não tem nomes de colunas, os índices de colunas podem ser utilizados, expressos como números inteiros.
Este parâmetro é aplicável a training_data
parâmetros validation_data
e test_data
.
label_column_name
foi introduzido na versão 1.0.81.
O nome da coluna de peso de exemplo. O ML automatizado suporta uma coluna ponderada como entrada, fazendo com que as linhas nos dados sejam ponderadas para cima ou para baixo. Se os dados de entrada forem de um pandas. DataFrame que não tem nomes de colunas, os índices de colunas podem ser utilizados, expressos como números inteiros.
Este parâmetro é aplicável a training_data
parâmetros e validation_data
.
weight_column_names
foi introduzido na versão 1.0.81.
Lista de nomes das colunas que contêm a divisão de validação cruzada personalizada. Cada uma das colunas divididas por CV representa uma divisão cv em que cada linha está marcada como 1 para preparação ou 0 para validação.
Este parâmetro é aplicável ao training_data
parâmetro para fins de validação cruzada personalizada.
cv_split_column_names
foi introduzido na versão 1.6.0
Utilize ou cv_split_column_names
cv_splits_indices
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- enable_local_managed
- bool
Parâmetro desativado. As execuções geridas locais não podem ser ativadas neste momento.
- enable_dnn
- bool
Se pretende incluir modelos baseados em DNN durante a seleção de modelos. A predefinição no init é Nenhuma. No entanto, a predefinição é Verdadeiro para tarefas NLP DNN e é Falso para todas as outras tarefas de AutoML.
O tipo de tarefa a executar. Os valores podem ser "classificação", "regressão" ou "previsão", consoante o tipo de problema de ML automatizado a resolver.
- path
- str
O caminho completo para a pasta do projeto do Azure Machine Learning. Se não for especificado, a predefinição é utilizar o diretório atual ou "".
- iterations
- int
O número total de diferentes combinações de algoritmos e parâmetros a testar durante uma experimentação de ML automatizada. Se não for especificado, a predefinição é 1000 iterações.
A métrica que o Machine Learning Automatizado irá otimizar para a seleção de modelos. O Machine Learning Automatizado recolhe mais métricas do que as que pode otimizar. Pode utilizar 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 especificado, a precisão é utilizada para tarefas de classificação, a média de raiz normalizada quadrada é utilizada para tarefas de previsão e regressão, a precisão é utilizada para classificação de imagens e classificação de várias etiquetas de imagem e a precisão média é utilizada para a deteção de objetos de imagem.
- positive_label
- Any
A etiqueta de classe positiva que o Machine Learning Automatizado utilizará para calcular métricas binárias com. As métricas binárias são calculadas em duas condições para tarefas de classificação:
- A coluna label consiste em duas classes que indicam que a tarefa de classificação binária AutoML utilizará uma classe positiva especificada quando positive_label for transmitida, caso contrário, o AutoML escolherá uma classe positiva com base no valor codificado por etiquetas.
- tarefa de classificação de várias classes com positive_label especificada
Para obter mais informações sobre classificação, veja as métricas para cenários de classificação.
- compute_target
- AbstractComputeTarget
O destino de computação do Azure Machine Learning para executar a experimentação do Machine Learning Automatizado. Veja 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>
O contexto do Spark. Aplicável apenas quando utilizado no ambiente do Azure Databricks/Spark.
- X
- DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
As funcionalidades de preparação a utilizar ao ajustar pipelines durante uma experimentação. Esta definição está a ser preterida. Em alternativa, utilize training_data e label_column_name.
- y
- DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
As etiquetas de preparação a utilizar ao ajustar pipelines durante uma experimentação. Este é o valor que o modelo irá prever. Esta definição está a ser preterida. Em alternativa, utilize training_data e label_column_name.
- sample_weight
- DataFrame ou ndarray ou TabularDataset
O peso a atribuir a cada exemplo de preparação ao executar pipelines de ajuste, cada linha deve corresponder a uma linha em dados X e y.
Especifique este parâmetro ao especificar X
.
Esta definição está a ser preterida. Em alternativa, utilize training_data e weight_column_name.
- X_valid
- DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Funcionalidades de validação a utilizar ao ajustar pipelines durante uma experimentação.
Se especificado, y_valid
ou sample_weight_valid
também tem de ser especificado.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e label_column_name.
- y_valid
- DataFrame ou ndarray ou Dataset ou DatasetDefinition ou TabularDataset
Etiquetas de validação a utilizar ao ajustar pipelines durante uma experimentação.
Ambos X_valid
e y_valid
têm de ser especificados em conjunto.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e label_column_name.
- sample_weight_valid
- DataFrame ou ndarray ou TabularDataset
O peso a atribuir a cada exemplo de validação ao executar pipelines de classificação, cada linha deve corresponder a uma linha em dados X e y.
Especifique este parâmetro ao especificar X_valid
.
Esta definição está a ser preterida. Em alternativa, utilize validation_data e weight_column_name.
Índices onde dividir dados de preparação para validação cruzada. Cada linha é uma dobra cruzada separada e dentro de cada dobra cruzada, fornece duas matrizes numpy, a primeira com os índices para exemplos a utilizar para dados de preparação e a segunda com os índices a utilizar para dados de validação. ou seja, [[t1, v1], [t2, v2], ...] em que t1 são os índices de preparação para a primeira dobra cruzada e v1 são os índices de validação para a primeira dobra cruzada. Esta opção é suportada quando os dados são transmitidos como conjunto de dados Funcionalidades separado e coluna Etiqueta.
Para especificar dados existentes como dados de validação, utilize validation_data
. Para permitir que o AutoML extraia dados de validação dos dados de preparação, especifique n_cross_validations
ou validation_size
.
Utilize cv_split_column_names
se tiver colunas de validação cruzada no training_data
.
- validation_size
- float
Que fração dos dados a reter para validação quando os dados de validação do utilizador não são especificados. Isto deve ser 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
extraia dados de validação dos dados de preparação especificados.
Para a pasta de validação cruzada personalizada, utilize cv_split_column_names
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
Quantas validações cruzadas deve executar quando os dados de validação do utilizador não são especificados.
Especifique validation_data
para fornecer dados de validação, caso contrário, defina n_cross_validations
ou validation_size
extraia dados de validação dos dados de preparação especificados.
Para a pasta de validação cruzada personalizada, utilize cv_split_column_names
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- y_min
- float
Valor mínimo de y para uma experimentação de regressão. A combinação de e y_max
é utilizada para normalizar as métricas do conjunto de testes com base no intervalo de y_min
dados de entrada. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- y_max
- float
Valor máximo de y para uma experimentação de regressão. A combinação de e y_max
é utilizada para normalizar as métricas do conjunto de testes com base no intervalo de y_min
dados de entrada. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- num_classes
- int
O número de classes nos dados de etiqueta para uma experimentação de classificação. Esta definição está a ser preterida. Em vez disso, este valor será calculado a partir dos dados.
- featurization
- str ou FeaturizationConfig
Indicador "auto"/"off" /FeaturizationConfig para saber se o passo de caracterização deve ou não ser feito automaticamente ou se deve ser utilizada a caracterização personalizada. Nota: se os dados de entrada forem dispersos, a caracterização não pode ser ativada.
O tipo de coluna é detetado automaticamente. Com base no tipo de coluna detetado, a pré-processamento/caracterização é efetuada da seguinte forma:
Categórico: codificação de destino, codificação frequente, categorias de cardinalidade elevadas, impute valores em falta.
Numérico: impute valores em falta, distância do cluster, peso da evidência.
DateTime: várias funcionalidades, como dia, segundos, minutos, horas, etc.
Texto: Saco de palavras, incorporação de Word pré-preparada, codificação de destino de texto.
Pode encontrar mais detalhes no artigo Configurar experimentações de ML automatizadas no Python.
Para personalizar o passo de caracterização, forneça um objeto FeaturizationConfig. Atualmente, a caracterização personalizada suporta o bloqueio de um conjunto de transformadores, a atualização da finalidade da coluna, a edição de parâmetros do transformador e a remoção de colunas. Para obter mais informações, veja Personalizar engenharia de funcionalidades.
Nota: as funcionalidades da Timeseries são processadas separadamente quando o tipo de tarefa está definido como previsão independente deste parâmetro.
- max_cores_per_iteration
- int
O número máximo de threads a utilizar para uma determinada iteração de preparação. 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 utilizar todos os núcleos possíveis por iteração por execução subordinada.
Igual a 1, o valor predefinido.
- max_concurrent_iterations
- int
Representa o número máximo de iterações que seriam executadas em paralelo. O valor predefinido é 1.
Os clusters AmlCompute suportam uma interação em execução por nó. Para várias experimentações executadas em paralelo num único cluster AmlCompute, a soma dos valores de
max_concurrent_iterations
todas as experimentações deve ser menor ou igual ao número máximo de nós.A DSVM suporta várias iterações por nó.
max_concurrent_iterations
deve ser menor ou igual ao número de núcleos na DSVM. Para várias experimentações executadas em paralelo numa única DSVM, a soma dosmax_concurrent_iterations
valores para todas as experimentações 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, este parâmetro era denominado concurrent_iterations
.
- iteration_timeout_minutes
- int
Tempo máximo em minutos para o qual cada iteração pode ser executada antes de terminar. Se não for especificado, é utilizado um valor de 1 mês ou 43200 minutos.
- mem_in_mb
- int
Utilização máxima da memória para a qual cada iteração pode ser executada antes de terminar. Se não for especificado, é utilizado um valor de 1 PB ou 1073741824 MB.
- enforce_time_on_windows
- bool
Se pretende impor um limite de tempo à preparação de modelos em cada iteração no Windows. A predefinição é Verdadeiro. Se estiver a ser executado a partir de um ficheiro de script python (.py), veja a documentação para permitir limites de recursos no Windows.
- experiment_timeout_hours
- float
Quantidade máxima de tempo em horas que todas as iterações combinadas podem demorar até que a experimentação termine. Pode ser um valor decimal como 0,25 que representa 15 minutos. Se não for especificado, o tempo limite da experimentação predefinido é de 6 dias. Para especificar um tempo limite inferior ou igual a 1 hora, certifique-se de que o tamanho do conjunto de dados não é superior a 10 000 000 (linhas vezes coluna) ou resultados de erros.
- experiment_exit_score
- float
Classificação de destino para experimentação. A experimentação termina depois de esta classificação ser atingida.
Se não for especificada (sem critérios), a experimentação é executada até que não sejam feitos mais progressos na métrica primária. Para obter mais informações sobre critérios de saída, veja este >>article
https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria'_.<<
- enable_early_stopping
- bool
Se pretende ativar a cessação antecipada se a classificação não estiver a melhorar a curto prazo. A predefinição é Verdadeiro.
Lógica de paragem precoce:
Nenhuma paragem antecipada para as primeiras 20 iterações (marcos).
A janela de paragem antecipada começa na 21.ª iteração e procura iterações early_stopping_n_iters (atualmente definidas como 10). Isto significa que a primeira iteração onde a paragem pode ocorrer é a 31ª.
O AutoML ainda agenda 2 iterações de conjunto após a paragem antecipada, o que pode resultar em pontuações mais altas.
A paragem precoce é acionada se o valor absoluto da melhor classificação calculada for o mesmo para iterações de early_stopping_n_iters anteriores, ou seja, se não houver melhorias na classificaçã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>
Uma lista de algoritmos a ignorar para uma experimentação. Se enable_tf
for Falso, os modelos tensorFlow estã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>
Em vez disso, o parâmetro preterido utiliza blocked_models.
- exclude_nan_labels
- bool
Se pretende excluir linhas com valores naN na etiqueta. A predefinição é Verdadeiro.
- verbosity
- int
O nível de verbosidade para escrever no ficheiro de registo. A predefinição é INFO ou 20. Os valores aceitáveis são definidos na biblioteca de registos do Python.
- model_explainability
- bool
Se pretende ativar a explicação do melhor modelo autoML no final de todas as iterações de preparação autoML. A predefinição é Verdadeiro. Para obter mais informações, veja Interpretability: model explanations in automated machine learning (Interpretabilidade: explicações de modelos na aprendizagem automática automatizada).
- 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>
Uma lista de nomes de modelos para procurar uma experimentação. Se não for especificado, todos os modelos suportados para a tarefa são utilizados menos os modelos do TensorFlow especificados ou blocked_models
preteridos.
Os modelos suportados para cada tipo de tarefa são descritos na SupportedModels classe.
- allowed_models
Uma lista de nomes de modelos para procurar uma experimentação. Se não for especificado, todos os modelos suportados para a tarefa são utilizados menos os modelos do TensorFlow especificados ou blocked_models
preteridos.
Os modelos suportados para cada tipo de tarefa são descritos na SupportedModels classe.
- whitelist_models
Em vez disso, o parâmetro preterido utiliza allowed_models.
- enable_onnx_compatible_models
- bool
Quer ativar ou desativar a imposição dos modelos compatíveis com ONNX. A predefinição é Falso. Para obter mais informações sobre o Open Neural Network Exchange (ONNX) e o Azure Machine Learning, veja este artigo.
- forecasting_parameters
- ForecastingParameters
Um objeto para conter todos os parâmetros específicos de previsão.
- time_column_name
- str
O nome da coluna de hora. Este parâmetro é necessário quando se prevê especificar a coluna datetime nos dados de entrada utilizados para criar a série temporal e inferir a respetiva frequência. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- max_horizon
- int
O horizonte de previsão máximo pretendido em unidades de frequência de série temporal. O valor predefinido é 1. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
As unidades baseiam-se no intervalo de tempo dos seus dados de preparação, por exemplo, mensalmente, semanalmente, que o meteorologista deve prever. Quando o tipo de tarefa é previsto, este parâmetro é necessário. Para obter mais informações sobre como definir parâmetros de previsão, veja Preparar automaticamente um modelo de previsão de série temporal.
Os nomes das colunas utilizadas para agrupar uma série de tempo. Pode ser utilizado para criar várias séries. Se a agregação não estiver definida, assume-se que o conjunto de dados é uma série temporal. Este parâmetro é utilizado com a previsão do tipo de tarefa. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
O número de períodos anteriores a desfasar da coluna de destino. A predefinição é 1. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Ao prever, este parâmetro representa o número de linhas a desfasar os valores de destino com base na frequência dos dados. Isto é representado como uma lista ou um único número inteiro. O atraso deve ser utilizado quando a relação entre as variáveis independentes e a variável dependente não corresponder ou correlacionar por predefinição. Por exemplo, ao tentar prever a procura de um produto, a procura em qualquer mês pode depender do preço de mercadorias específicas 3 meses antes. Neste exemplo, poderá querer atrasar negativamente o destino (procura) em 3 meses para que o modelo esteja a preparar a relação correta. Para obter mais informações, veja Preparar automaticamente um modelo de previsão de série temporal.
- feature_lags
- str
Sinalizar para gerar atrasos para as funcionalidades numéricas. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- target_rolling_window_size
- int
O número de períodos anteriores utilizados para criar uma média de janela temporal da coluna de destino. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
Ao prever, este parâmetro representa n períodos históricos a utilizar para gerar valores previstos, <= tamanho do conjunto de preparação. Se omitido, n é o tamanho completo do conjunto de preparação. Especifique este parâmetro quando quiser considerar apenas uma determinada quantidade de histórico ao preparar o modelo.
- country_or_region
- str
O país/região utilizado para gerar funcionalidades de feriados. Estes devem ser códigos de país/região ISO 3166 de duas letras, por exemplo "EUA" ou "GB". Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- use_stl
- str
Configure a Decomposição de STL da coluna de destino da série temporal. use_stl pode levar três valores: Nenhum (predefinição) - sem decomposição stl, 'temporada' - apenas gerar componente de estação e season_trend - gerar componentes de estação e tendência. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- seasonality
- int
Definir sazonalidade de série temporal. Se a sazonalidade estiver definida como -1, será inferida. Se use_stl não estiver definido, este parâmetro não será utilizado. Esta definição está a ser preterida. Em alternativa, utilize forecasting_parameters.
- short_series_handling_configuration
- str
O parâmetro que define como se o AutoML deve processar séries de tempo curtos.
Valores possíveis: "auto" (predefinição), "pad", "drop" e None.
- As séries curtas automáticas serão acolchoadas se não existirem séries longas, caso contrário, as séries curtas serão removidas.
- todas as séries curtas serão acolchoadas.
- remover todas as séries curtas será removida".
- Nenhuma das séries curtas não será modificada. Se estiver definida como "pad", a tabela será preenchida com os zeros e valores vazios para os regressors e valores aleatórios para o destino com a média igual à mediana do valor de destino para um determinado ID de série temporal. Se a mediana for mais ou igual a zero, o valor acolchoado mínimo será cortado por zero: Entrada:
Data
numeric_value
string
destino
2020-01-01
23
green
55
Saída partindo do princípio de que o número mínimo de valores é quatro: +————+—————+———-+——+| Data | numeric_value | cadeia | destino | +============+===============+==========+========+ | 2019-12-29 | 0 | NA | 55.1 | +————+—————+———-+——–+ | 2019-12-30 | 0 | NA | 55.6 | +————+—————+———-+——–+ | 2019-12-31 | 0 | NA | 54,5 | +————+—————+———-+——–+ | 01-2020 | 23 | verde | 55 | +————+—————+———-+——–+
Nota: Temos dois parâmetros short_series_handling_configuration e short_series_handling legados. Quando ambos os parâmetros estão definidos, estamos a sincronizá-los conforme mostrado na tabela abaixo (short_series_handling_configuration e short_series_handling para brevidade são marcados como handling_configuration e a processar, respetivamente).
processamento
handling_configuration
processamento resultante
handling_configuration resultante
Verdadeiro
auto
Verdadeiro
auto
Verdadeiro
teclado
Verdadeiro
auto
Verdadeiro
drop
Verdadeiro
auto
Verdadeiro
Nenhuma
Falso
Nenhuma
Falso
auto
Falso
Nenhuma
Falso
teclado
Falso
Nenhuma
Falso
drop
Falso
Nenhuma
Falso
Nenhuma
Falso
Nenhuma
Frequência de previsão.
Ao prever, este parâmetro representa o período com o qual a previsão é pretendida, por exemplo, diariamente, semanalmente, anualmente, etc. Por predefinição, a frequência de previsão é a frequência do conjunto de dados. Opcionalmente, pode defini-lo como maior (mas não menor) do 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, pode definir a frequência como diária, semanal ou mensal, mas não por hora. A frequência tem de ser um alias de deslocamento pandas. Veja a documentação do pandas para obter mais informações: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects
A função a ser utilizada para agregar a coluna de destino da série temporal para estar em conformidade com uma frequência especificada por um utilizador. Se o 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 da regularidade de dados
Nenhum (Predefinição)
Nenhum (Predefinição)
A agregação não é aplicada. Se a frequência válida não puder ser indeterminada, o erro será gerado.
Algum Valor
Nenhum (Predefinição)
A agregação não é aplicada. Se o número de pontos de dados em conformidade com a grelha de frequência for menor, 90%estes pontos serão removidos, caso contrário, o erro será gerado.
Nenhum (Predefinição)
Função de agregação
O erro sobre os parâmetros de frequência em falta é gerado.
Algum Valor
Função de agregação
Agregar à frequência com a função providedaggregation.
- enable_voting_ensemble
- bool
Quer ativar/desativar a iteração VotingEnsemble. A predefinição é Verdadeiro. Para obter mais informações sobre conjuntos, veja Configuração do conjunto.
- enable_stack_ensemble
- bool
Quer ativar/desativar a iteração stackEnsemble. A predefinição é Nenhuma. Se enable_onnx_compatible_models sinalizador estiver a ser definido, a iteração StackEnsemble será desativada. Da mesma forma, para tarefas do Timeseries, a iteração StackEnsemble será desativada por predefinição, para evitar riscos de sobreajuste devido ao pequeno conjunto de preparação utilizado na adaptação do meta-aluno. Para obter mais informações sobre conjuntos, veja Configuração do conjunto.
- debug_log
- str
O ficheiro de registo para escrever informações de depuração. Se não for especificado, é utilizado "automl.log".
- training_data
- DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Os dados de preparação a utilizar na experimentação.
Deve conter as funcionalidades de preparação e uma coluna de etiqueta (opcionalmente uma coluna de pesos de exemplo).
Se training_data
for especificado, o label_column_name
parâmetro também tem de ser especificado.
training_data
foi introduzido na versão 1.0.81.
- validation_data
- DataFrame ou Dataset ou DatasetDefinition ou TabularDataset
Os dados de validação a utilizar na experimentação.
Deve conter as funcionalidades de preparação e a coluna de etiquetas (opcionalmente uma coluna de pesos de exemplo).
Se validation_data
for especificado, e training_data
label_column_name
os parâmetros têm de ser especificados.
validation_data
foi introduzido na versão 1.0.81. Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- test_data
- Dataset ou TabularDataset
A funcionalidade Teste de Modelo com conjuntos de dados de teste ou divisões de dados de teste é uma funcionalidade no estado de Pré-visualização e pode ser alterada em qualquer altura. Os dados de teste a utilizar para uma execução de teste que será iniciada automaticamente após a conclusão da preparação do modelo. A execução de teste obterá predições com o melhor modelo e calculará as métricas dadas estas predições.
Se este parâmetro ou o test_size
parâmetro não forem especificados, nenhuma execução de teste será executada automaticamente após a conclusão da preparação do modelo.
Os dados de teste devem conter funcionalidades e colunas de etiqueta.
Se test_data
for especificado, o label_column_name
parâmetro tem de ser especificado.
- test_size
- float
A funcionalidade Teste de Modelo com conjuntos de dados de teste ou divisões de dados de teste é uma funcionalidade no estado de Pré-visualização e pode ser alterada em qualquer altura. Que fração dos dados de preparação a reter para dados de teste para uma execução de teste que será iniciada automaticamente após a conclusão da preparação do modelo. A execução de teste obterá predições com o melhor modelo e calculará as métricas dadas estas predições.
Isto deve ser 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 antes de training_data
os dados de validação serem divididos.
Por exemplo, se validation_size=0.1
, test_size=0.1
e os dados de preparação originais tiverem 1000 linhas, os dados de teste terão 100 linhas, os dados de validação conterão 90 linhas e os dados de preparação terão 810 linhas.
Para tarefas baseadas em regressão, é utilizada uma amostragem aleatória. Para tarefas de classificação, é utilizada a amostragem estratificada. A previsão não suporta atualmente a especificação de um conjunto de dados de teste com uma divisão de preparação/teste.
Se este parâmetro ou o test_data
parâmetro não forem especificados, nenhuma execução de teste será executada automaticamente após a conclusão da preparação do modelo.
O nome da coluna de etiqueta. Se os dados de entrada forem de um pandas. DataFrame que não tem nomes de colunas, os índices de colunas podem ser utilizados, expressos como números inteiros.
Este parâmetro é aplicável a training_data
parâmetros validation_data
e test_data
.
label_column_name
foi introduzido na versão 1.0.81.
O nome da coluna de peso de exemplo. O ML automatizado suporta uma coluna ponderada como entrada, fazendo com que as linhas nos dados sejam ponderadas para cima ou para baixo. Se os dados de entrada forem de um pandas. DataFrame que não tem nomes de colunas, os índices de colunas podem ser utilizados, expressos como números inteiros.
Este parâmetro é aplicável a training_data
parâmetros e validation_data
.
weight_column_names
foi introduzido na versão 1.0.81.
Lista de nomes das colunas que contêm a divisão de validação cruzada personalizada. Cada uma das colunas divididas por CV representa uma divisão cv em que cada linha está marcada como 1 para preparação ou 0 para validação.
Este parâmetro é aplicável ao training_data
parâmetro para fins de validação cruzada personalizada.
cv_split_column_names
foi introduzido na versão 1.6.0
Utilize ou cv_split_column_names
cv_splits_indices
.
Para obter mais informações, veja Configurar divisões de dados e validação cruzada no machine learning automatizado.
- enable_local_managed
- bool
Parâmetro desativado. As execuções geridas locais não podem ser ativadas neste momento.
- enable_dnn
- bool
Se pretende incluir modelos baseados em DNN durante a seleção de modelos. A predefinição no init é Nenhuma. No entanto, a predefinição é Verdadeiro para tarefas NLP DNN e é Falso para todas as outras tarefas de AutoML.
Observações
O código seguinte mostra um exemplo básico de criação de um objeto AutoMLConfig e submissão de uma experimentação 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)
Está disponível um exemplo completo na Regressão
Os exemplos de utilização do AutoMLConfig para previsão estão nestes blocos de notas:
Pode encontrar exemplos de utilização do AutoMLConfig para todos os tipos de tarefas nestes blocos de notas ML automatizados.
Para obter informações sobre o ML automatizado, veja os artigos:
Configurar experimentações de ML automatizadas no Python. Neste artigo, existem informações sobre os diferentes algoritmos e métricas primárias utilizadas para cada tipo de tarefa.
Preparar automaticamente um modelo de previsão de série temporal. Neste artigo, existem informações sobre que parâmetros de construtor e
**kwargs
são utilizados na previsão.
Para obter mais informações sobre diferentes opções para configurar divisões de dados de preparação/validação e validação cruzada para machine learning automatizado, AutoML, experimentações, veja 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 |
Obtenha idiomas suportados e os códigos de idioma correspondentes no ISO 639-3. |
as_serializable_dict
Converta o objeto em dicionário.
as_serializable_dict() -> Dict[str, Any]
get_supported_dataset_languages
Obtenha idiomas suportados e os códigos de idioma correspondentes no ISO 639-3.
get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]
Parâmetros
- use_gpu
booleano que indica se a computação gpu está ou não a ser utilizada.
Devoluções
dicionário do formato {: }. O código de idioma cumpre a norma ISO 639-3. Veja https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários