As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Crie trabalhos de regressão ou classificação para dados tabulares usando o AutoML API
Você pode criar programaticamente um trabalho de regressão ou classificação do piloto automático para dados tabulares chamando a CreateAutoMLJobV2
APIação em qualquer linguagem suportada pelo piloto automático ou pelo. AWS CLI Veja a seguir uma coleção de parâmetros de solicitação de entrada obrigatórios e opcionais para a CreateAutoMLJobV2
API ação. É possível encontrar as informações alternativas para a versão anterior dessa ação, CreateAutoMLJob
. No entanto, recomendamos usar CreateAutoMLJobV2
.
Para obter informações sobre como essa API ação se traduz em uma função no idioma de sua escolha, consulte a seção Consulte também CreateAutoMLJobV2
e escolha umaSDK. Por exemplo, para usuários do Python, veja a sintaxe completa da solicitação de create_auto_ml_job_v2
in AWS SDK for Python (Boto3).
nota
CreateAutoMLJobV2e DescribeAutoMLJobV2são novas versões do CreateAutoMLJobe DescribeAutoMLJobque oferecem compatibilidade com versões anteriores.
Recomendamos usar CreateAutoMLJobV2
. O CreateAutoMLJobV2
pode gerenciar tipos de problemas tabulares idênticos aos da versão anterior CreateAutoMLJob
, bem como tipos de problemas não tabulares, como classificação de imagens, textos ou previsão de séries temporais.
No mínimo, todos os experimentos com dados tabulares exigem a especificação do nome do experimento, fornecendo locais para os dados de entrada e saída e especificando quais dados-alvo prever. Opcionalmente, você também pode especificar o tipo de problema que deseja resolver (regressão, classificação, classificação multiclasse), escolher sua estratégia de modelagem (conjuntos empilhados ou otimização de hiperparâmetros), selecionar a lista de algoritmos usados pelo trabalho do piloto automático para treinar os dados e muito mais.
Após a execução do experimento, você pode comparar os testes e se aprofundar nos detalhes das etapas de pré-processamento, dos algoritmos e dos intervalos de hiperparâmetros de cada modelo. Você também tem a opção de baixar seus relatórios de explicabilidade e desempenho. Use os cadernos fornecidos para ver os resultados da exploração automatizada de dados ou as definições do modelo candidato.
Encontre diretrizes sobre como migrar um CreateAutoMLJob
para CreateAutoMLJobV2
em Migrar um para CreateAuto MLJob CreateAuto MLJobV2.
Parâmetros necessários
Todos os outros parâmetros são opcionais.
Parâmetros opcionais
As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para sua CreateAutoMLJobV2
API ação ao usar dados tabulares. É possível encontrar as informações alternativas para a versão anterior dessa ação, CreateAutoMLJob
. No entanto, recomendamos usar CreateAutoMLJobV2
.
Para dados tabulares, o conjunto de algoritmos executados em seus dados para treinar seus candidatos a modelo depende de sua estratégia de modelagem (ENSEMBLING
ou HYPERPARAMETER_TUNING
). O seguinte detalha como configurar esse modo de treinamento.
Se você mantiver em branco (ounull
), Mode
isso será inferido com base no tamanho do seu conjunto de dados.
Para obter informações sobre os conjuntos empilhados e os métodos de treinamento de otimização de hiperparâmetros do Autopilot, consulte Modos de treinamento e suporte a algoritmos
Seleção de atributos
O piloto automático fornece etapas automáticas de pré-processamento de dados, incluindo seleção e extração de atributos. No entanto, você pode fornecer manualmente os atributos a serem usados no treinamento com o FeatureSpecificatioS3Uri
atributo.
Os recursos selecionados devem estar contidos em um JSON arquivo no seguinte formato:
{ "FeatureAttributeNames":["col1", "col2", ...] }
Os valores listados ["col1", "col2", ...]
diferenciam letras maiúsculas de minúsculas. Eles devem ser uma lista de cadeias de caracteres contendo valores exclusivos que são subconjuntos dos nomes das colunas nos dados de entrada.
nota
A lista de colunas fornecida como atributos não pode incluir a coluna de destino.
Seleção de algoritmos
Por padrão, seu trabalho de piloto automático executa uma lista predefinida de algoritmos em seu conjunto de dados para treinar candidatos a modelos. A lista de algoritmos depende do modo de treinamento (ENSEMBLING
ou HYPERPARAMETER_TUNING
) usado pelo trabalho.
É possível fornecer um subconjunto da seleção padrão de algoritmos.
Para ver a lista de algoritmos disponíveis por treinamentoMode
, consulte AutoMLAlgorithms
. Para obter detalhes sobre cada algoritmo, consulte Modos de treinamento e suporte a algoritmos.
É possível fornecer seu próprio conjunto de dados de validação e taxa de divisão de dados personalizada, ou deixar o Autopilot dividir o conjunto de dados automaticamente.
Para obter informações sobre divisão e validação cruzada no piloto automático, consulte Validação cruzada no Autopilot.
nota
Em alguns casos, o Autopilot não consegue inferir o ProblemType
com confiança alta o suficiente, caso em que é necessário fornecer o valor para o trabalho ter êxito.
É possível adicionar uma coluna de pesos de amostra ao seu conjunto de dados tabular e depois passá-la para sua tarefa do AutoML para solicitar que as linhas do conjunto de dados sejam ponderadas durante o treinamento e a avaliação.
O suporte para pesos de amostra está disponível somente no modo de agrupamento. Seus pesos devem ser numéricos e não negativos. Os pontos de dados com valor de peso inválido ou sem valor são excluídos. Para obter mais informações sobre as métricas objetivas disponíveis, consulte Métricas ponderadas do Autopilot.
Você pode configurar seu trabalho AutoML V2 para iniciar automaticamente um trabalho remoto no Amazon EMR Serverless quando recursos computacionais adicionais forem necessários para processar grandes conjuntos de dados. Ao fazer a transição perfeita para o EMR Serverless quando necessário, o trabalho do AutoML pode lidar com conjuntos de dados que, de outra forma, excederiam os recursos inicialmente provisionados, sem qualquer intervenção manual de sua parte. EMRO Serverless está disponível para os tipos de problemas tabulares e de séries temporais. Recomendamos configurar essa opção para conjuntos de dados tabulares maiores que 5 GB.
Para permitir que sua tarefa AutoML V2 faça a transição automática para EMR Serverless para um grande conjunto de dados, você precisa fornecer um EmrServerlessComputeConfig
objeto, que inclua um ExecutionRoleARN
campo, para a solicitação de entrada AutoMLComputeConfig
da tarefa AutoML V2.
Essa ExecutionRoleARN
é a IAM função que ARN concede ao trabalho AutoML V2 as permissões necessárias para EMR executar trabalhos sem servidor.
Essa função deve ter a seguinte relação de confiança:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "emr-serverless.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
E conceda as permissões para:
-
Crie, liste e atualize aplicativos EMR sem servidor.
-
Iniciar, listar, obter ou cancelar execuções de trabalhos em um EMR aplicativo sem servidor.
-
Marque recursos EMR sem servidor.
-
Passe uma IAM função para o serviço EMR Serverless para execução.
Ao conceder a
iam:PassRole
permissão, a tarefa AutoML V2 pode assumir temporariamente a função e passá-la paraEMRServerlessRuntimeRole-*
EMR o serviço Serverless. Essas são as IAM funções usadas pelos ambientes de execução de tarefas EMR sem servidor para acessar outros AWS serviços e recursos necessários durante o tempo de execução, como o Amazon S3 para acesso a dados, registro em log CloudWatch , acesso ao AWS Glue catálogo de dados ou outros serviços com base em seus requisitos de carga de trabalho.Consulte Job runtime roles for Amazon EMR Serverless para obter detalhes sobre essas permissões de função.
A IAM política definida no JSON documento fornecido concede essas permissões:
{ "Version": "2012-10-17", "Statement": [{ + "Sid": "EMRServerlessCreateApplicationOperation", + "Effect": "Allow", + "Action": "emr-serverless:CreateApplication", + "Resource": "arn:aws:emr-serverless:*:*:/*", + "Condition": { + "StringEquals": { + "aws:RequestTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessListApplicationOperation", + "Effect": "Allow", + "Action": "emr-serverless:ListApplications", + "Resource": "arn:aws:emr-serverless:*:*:/*", + "Condition": { + "StringEquals": { + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessApplicationOperations", + "Effect": "Allow", + "Action": [ + "emr-serverless:UpdateApplication", + "emr-serverless:GetApplication" + ], + "Resource": "arn:aws:emr-serverless:*:*:/applications/*", + "Condition": { + "StringEquals": { + "aws:ResourceTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessStartJobRunOperation", + "Effect": "Allow", + "Action": "emr-serverless:StartJobRun", + "Resource": "arn:aws:emr-serverless:*:*:/applications/*", + "Condition": { + "StringEquals": { + "aws:RequestTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessListJobRunOperation", + "Effect": "Allow", + "Action": "emr-serverless:ListJobRuns", + "Resource": "arn:aws:emr-serverless:*:*:/applications/*", + "Condition": { + "StringEquals": { + "aws:ResourceTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessJobRunOperations", + "Effect": "Allow", + "Action": [ + "emr-serverless:GetJobRun", + "emr-serverless:CancelJobRun" + ], + "Resource": "arn:aws:emr-serverless:*:*:/applications/*/jobruns/*", + "Condition": { + "StringEquals": { + "aws:ResourceTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "EMRServerlessTagResourceOperation", + "Effect": "Allow", + "Action": "emr-serverless:TagResource", + "Resource": "arn:aws:emr-serverless:*:*:/*", + "Condition": { + "StringEquals": { + "aws:RequestTag/sagemaker:is-canvas-resource": "True", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } + }, + { + "Sid": "IAMPassOperationForEMRServerless", + "Effect": "Allow", + "Action": "iam:PassRole", + "Resource": "arn:aws:iam::*:role/EMRServerlessRuntimeRole-*", + "Condition": { + "StringEquals": { + "iam:PassedToService": "emr-serverless.amazonaws.com", + "aws:ResourceAccount": "${aws:PrincipalAccount}" + } + } } ] }
Migrar um para CreateAuto MLJob CreateAuto MLJobV2
Recomendamos que os usuários do CreateAutoMLJob
migrem para o CreateAutoMLJobV2
.
Esta seção explica as diferenças nos parâmetros de entrada entre CreateAutoMLJobe CreateAutoMLJobV2destacando as mudanças na posição, nome ou estrutura dos objetos e atributos da solicitação de entrada entre as duas versões.
-
Atributos de solicitação que não foram alterados entre as versões.
{ "AutoMLJobName": "string", "AutoMLJobObjective": { "MetricName": "string" }, "ModelDeployConfig": { "AutoGenerateEndpointName": boolean, "EndpointName": "string" }, "OutputDataConfig": { "KmsKeyId": "string", "S3OutputPath": "string" }, "RoleArn": "string", "Tags": [ { "Key": "string", "Value": "string" } ] }
-
Atributos de solicitação que mudaram de posição e estrutura entre as versões.
Os seguintes atributos mudaram de posição:
DataSplitConfig
,Security Config
,CompletionCriteria
,Mode
,FeatureSpecificationS3Uri
,SampleWeightAttributeName
,TargetAttributeName
. -
Os atributos a seguir mudaram de posição e estrutura entre as versões.
O exemplo a seguir JSON ilustra como é A utoMLJob Config. CandidateGenerationConfigdo tipo A utoMLCandidate GenerationConfig foi movido para utoMLProblem TypeConfig A. TabularJobConfig. CandidateGenerationConfigdo tipo CandidateGenerationConfigem V2.
-
Atributos de solicitação que mudaram o nome e a estrutura.
O seguinte JSON ilustra como InputDataConfig(Uma matriz de AutoMLChannel) mudou para A utoMLJob InputDataConfig (Uma matriz de um utoMLJob canal) na V2. Observe os atributos
SampleWeightAttributeName
eTargetAttributeName
vá para foraInputDataConfig
e para dentroAutoMLProblemTypeConfig
.