

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á.

# SageMaker Piloto automático
<a name="autopilot-automate-model-development"></a>

**Importante**  
Em 30 de novembro de 2023, a interface do usuário do Autopilot está migrando para o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) como parte da experiência atualizada do [Amazon SageMaker Studio](studio-updated.md). SageMaker O Canvas fornece aos analistas e cientistas de dados cidadãos recursos sem código para tarefas como preparação de dados, engenharia de recursos, seleção de algoritmos, treinamento e ajuste, inferência e muito mais. Os usuários podem aproveitar visualizações integradas e análises hipotéticas para explorar seus dados e diferentes cenários, com predições automatizadas que permitem que eles produzam facilmente seus modelos. O Canvas é compatível com uma variedade de casos de uso, incluindo visão computacional, previsão de demanda, pesquisa inteligente e IA generativa.  
 Os usuários do [Amazon SageMaker Studio Classic](studio.md), a experiência anterior do [Studio](studio-updated.md), podem continuar usando a interface do usuário do Autopilot no Studio Classic. Usuários com experiência em programação podem continuar usando todas as [referências de API](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html) em qualquer SDK compatível para implementação técnica.  
Se você usa o Autopilot no Studio Classic até agora e deseja migrar para o SageMaker Canvas, talvez seja necessário conceder permissões adicionais ao seu perfil de usuário ou função do IAM para poder criar e usar o aplicativo SageMaker Canvas. Para obter mais informações, consulte [(Opcional) Migrar do piloto automático no Studio Classic para o Canvas SageMaker](studio-updated-migrate-ui.md#studio-updated-migrate-autopilot).  
[Todas as instruções relacionadas à interface do usuário neste guia se referem aos recursos autônomos do Autopilot antes da migração para o Amazon Canvas. SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) Os usuários que seguem essas instruções devem usar o [Studio Classic](studio.md).

O Amazon SageMaker Autopilot é um conjunto de recursos que simplifica e acelera vários estágios do fluxo de trabalho de aprendizado de máquina automatizando o processo de criação e implantação de modelos de aprendizado de máquina (AutoML). A página a seguir explica as principais informações sobre o Amazon SageMaker Autopilot.

O Autopilot executa as seguintes tarefas principais que você pode usar no Autopilot ou com vários graus de orientação humana:
+ **Análise e pré-processamento de dados:** o Autopilot identifica seu tipo de problema específico, processa valores ausentes, normaliza seus dados, seleciona atributos e, em geral, prepara os dados para o treinamento de modelos.
+ **Seleção de modelos:** o Autopilot explora uma variedade de algoritmos e usa uma técnica de reamostragem de validação cruzada para gerar métricas que avaliam a qualidade preditiva dos algoritmos com base em métricas objetivas predefinidas.
+ **Otimização de hiperparâmetros:** o Autopilot automatiza a busca por configurações ideais de hiperparâmetros.
+ **Treinamento de modelo e avaliação:** o Autopilot automatiza o processo de treinamento e avaliação de vários modelos candidatos. Ele divide os dados em conjuntos de treinamento e validação, treina os candidatos ao modelo selecionados usando os dados de treinamento e avalia seu desempenho com base nos dados não vistos no conjunto de validação. Por fim, ele classifica os candidatos a modelos otimizados com base em seu desempenho e identifica o modelo com melhor performance.
+ **Implantação do modelo:** Após o Autopilot ter identificado o modelo com melhor performance, oferece a opção de implantar o modelo automaticamente gerando os artefatos do modelo e o endpoint expondo uma API. Aplicações externas podem enviar dados para o endpoint e receber as predições ou inferências correspondentes.

O piloto automático suporta a criação de modelos de aprendizado de máquina em grandes conjuntos de dados de até centenas de. GBs

A seguir, o diagrama delineia as tarefas deste processo do AutoML gerenciado pelo Autopilot.

![\[Visão geral do processo Amazon SageMaker Autopilot AutoML.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/Autopilot-process-graphic-1.png)


Dependendo do seu nível de conforto com o processo de machine learning e sua experiência em codificação, você pode usar o Autopilot de diferentes maneiras:
+ **Uso da interface do usuário do Studio Classic**, os usuários podem escolher entre uma experiência sem código ou ter algum nível de contribuição humana.
**nota**  
Somente experimentos criados a partir de dados tabulares para tipos de problemas, como regressão ou classificação, estão disponíveis por meio da interface do usuário do Studio Classic.
+ **Usando a API AutoML**, os usuários com experiência em codificação podem usar o Available para SDKs criar trabalhos do AutoML. Essa abordagem oferece maior flexibilidade e opções de personalização e está disponível para todos os tipos de problemas.

Atualmente, o Autopilot oferece apoio aos seguintes tipos de problemas:

**nota**  
Para problemas de regressão ou classificação envolvendo dados tabulares, os usuários podem escolher entre duas opções: usar a interface de usuário do Studio Classic ou as [Referências da API](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).  
Tarefas como classificação de texto e imagem, previsão de séries temporais e ajuste de grandes modelos de linguagem estão disponíveis exclusivamente na versão 2 da [API REST do AutoML](autopilot-reference.md). Se sua linguagem preferida for Python, você pode se referir diretamente ao [AWS SDK para Python (Boto3) MLV2 ](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)[objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.  
Os usuários que preferem a conveniência de uma interface de usuário podem usar o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acessar modelos pré-treinados e modelos básicos de IA generativos, ou criar modelos personalizados para textos específicos, classificação de imagens, necessidades de previsão ou IA generativa.
+ **Classificação multiclasse, de regressão e binária** com dados tabulares formatados como arquivos CSV ou Parquet, nos quais cada coluna contém um atributo com um tipo de dados específico e cada linha contém uma observação. Os tipos de dados de coluna aceitos incluem séries numéricas, categóricas, de texto e temporais que consistem em sequências de números separados por vírgulas.
  + Para criar um trabalho de piloto automático como um experimento piloto usando a referência da SageMaker API, consulte[Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md).
  + Para criar um trabalho no Autopilot como um experimento piloto usando a interface do usuário do Studio Classic, consulte [Crie um experimento de Regressão ou de Classificação do Autopilot com os dados tabulares usando a interface do usuário do Studio Classic](autopilot-automate-model-development-create-experiment-ui.md).
  + Se você for um administrador que deseja pré-configurar a infraestrutura padrão, a rede ou os parâmetros de segurança dos experimentos do Autopilot na interface do usuário do Studio Classic, consulte [Configurar os parâmetros padrão de um experimento do Autopilot (para administradores)](autopilot-set-default-parameters-create-experiment.md). 
+ **Classificação de texto** com formato de dados como arquivos CSV ou Parquet nos quais uma coluna fornece as frases a serem classificadas, enquanto outra coluna deve fornecer o rótulo da classe correspondente. Consulte [Crie um trabalho de AutoML para classificação de texto com a API](autopilot-create-experiment-text-classification.md).
+ **Classificação de imagens** com formatos de imagens como PNG, JPEG ou uma combinação de ambos. Consulte [Crie um trabalho de classificação de imagens usando a API AutoML](autopilot-create-experiment-image-classification.md).
+ **Previsão de séries temporais** com dados de séries temporais formatados como arquivos CSV ou Parquet. Consulte [Crie um trabalho de AutoML para previsão de séries temporais com a API](autopilot-create-experiment-timeseries-forecasting.md).
+ Ajuste fino de modelos de linguagem grandes (LLMs) para **geração de texto** com dados formatados como arquivos CSV ou Parquet.Consulte. [Crie uma tarefa do AutoML para ajustar os modelos de geração de texto usando a API](autopilot-create-experiment-finetune-llms.md)

Além disso, o Autopilot ajuda os usuários a entender como os modelos fazem predições, gerando relatórios automaticamente que mostram a importância de cada atributo individual. Isso fornece transparência e insights sobre os fatores que influenciam as predições, que podem ser usados por equipes de risco e conformidade e por reguladores externos. O Autopilot também fornece um relatório de desempenho do modelo que engloba um resumo das métricas de avaliação, uma matriz de confusão, várias visualizações, como curvas características operacionais do receptor e curvas de recuperação de precisão e muito mais. O conteúdo específico de cada relatório varia de acordo com o tipo de problema do experimento do Autopilot.

Os relatórios de desempenho e explicabilidade do melhor modelo candidato em um experimento do Autopilot estão disponíveis para os tipos de problemas de classificação de dados tabulares, texto e imagem.

Para casos de uso de dados tabulares como regressão ou classificação, o Autopilot oferece visibilidade adicional sobre como os dados foram organizados e como os modelos candidatos foram selecionados, treinados e ajustados, gerando cadernos que contêm o código usado para explorar os dados e encontrar o modelo com melhor desempenho. Esses cadernos fornecem um ambiente interativo e exploratório para ajudar você a aprender sobre o impacto de várias entradas ou as compensações feitas nos experimentos. Você pode experimentar ainda mais com o modelo candidato de maior desempenho fazendo suas próprias modificações nos cadernos de exploração de dados e definição de candidatos fornecidos pelo Autopilot. 

Com a Amazon SageMaker AI, você paga somente pelo que usa. Você paga pelos recursos de computação e armazenamento subjacentes na SageMaker IA ou em outros AWS serviços, com base no seu uso. Para obter mais informações sobre o custo do uso da SageMaker IA, consulte [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing).

**Topics**
+ [Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md)
+ [Crie um trabalho de classificação de imagens usando a API AutoML](autopilot-create-experiment-image-classification.md)
+ [Crie um trabalho de AutoML para classificação de texto com a API](autopilot-create-experiment-text-classification.md)
+ [Crie um trabalho de AutoML para previsão de séries temporais com a API](autopilot-create-experiment-timeseries-forecasting.md)
+ [Crie uma tarefa do AutoML para ajustar os modelos de geração de texto usando a API](autopilot-create-experiment-finetune-llms.md)
+ [Crie um experimento de Regressão ou de Classificação do Autopilot com os dados tabulares usando a interface do usuário do Studio Classic](autopilot-automate-model-development-create-experiment-ui.md)
+ [Cadernos de exemplo do Amazon SageMaker Autopilot](autopilot-example-notebooks.md)
+ [Vídeos: Usar o Autopilot para automatizar e explorar o processo de machine learning](autopilot-videos.md)
+ [Cotas do Autopilot](autopilot-quotas.md)
+ [Guia de referência da API do Autopilot](autopilot-reference.md)

# Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML
<a name="autopilot-automate-model-development-create-experiment"></a>

É possível criar um trabalho de regressão ou classificação do Autopilot para dados tabulares de forma programática chamando a ação [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) da API em qualquer linguagem compatível com o Autopilot ou a AWS CLI. Veja a seguir uma coleção de parâmetros de solicitação de entrada obrigatórios e opcionais para a ação da `CreateAutoMLJobV2` API. É 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 ação da API se traduz em uma função no idioma de sua escolha, consulte a seção [Consulte também](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` e escolha um SDK. Como exemplo, para usuários do Python, veja a sintaxe completa da solicitação de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` em AWS SDK para Python (Boto3).

**nota**  
[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) e [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) são novas versões [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)e [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)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), escolha a estratégia de modelagem (*conjuntos empilhados* ou *otimização de hiperparâmetros*), selecione a lista de algoritmos usados pelo trabalho do Autopilot para treinar os dados e muito mais. 

 Depois de executado o 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](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-explainability.html) e [desempenho](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-insights.html). Use os [cadernos](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-notebook-output.html ) 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 a CreateAuto MLJob para CreateAuto MLJob a V2](#autopilot-create-experiment-api-migrate-v1-v2).

## Parâmetros necessários
<a name="autopilot-create-experiment-api-required-params"></a>

------
#### [ CreateAutoMLJobV2 ]

Ao chamar `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para criar um experimento do Autopilot para dados tabulares, você deve fornecer os seguintes valores:
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar o nome do seu trabalho.
+ Pelo menos uma `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` em `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar sua fonte de dados.
+ Tanto uma métrica `[AutoMLJobObjective](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobObjective)` quanto o tipo escolhido de problema de aprendizado supervisionado (classificação binária, classificação multiclasse, regressão) em `AutoMLProblemTypeConfig`, ou nenhum. Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`. Você define o problema de aprendizado supervisionado no atributo `ProblemType` de `TabularJobConfig`.
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN do perfil usada para acessar seus dados.

------
#### [ CreateAutoMLJob ]

Ao chamar `[CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)` para criar um experimento do AutoML, você deve fornecer os quatro valores a seguir.
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobName)` para especificar o nome do seu trabalho.
+ Pelo menos uma `[AutoMLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)` em `[InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)` para especificar sua fonte de dados.
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN do perfil usada para acessar seus dados.

------

Todos os outros parâmetros são opcionais.

## Parâmetros opcionais
<a name="autopilot-create-experiment-api-optional-params"></a>

As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para sua ação de `CreateAutoMLJobV2` API 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`.

### Como definir o modo de treinamento de um trabalho do AutoML
<a name="autopilot-set-training-mode"></a>

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 (ou`null`), `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 compatibilidade com algoritmos](autopilot-model-support-validation.md)

------
#### [ CreateAutoMLJobV2 ]

Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

É possível definir o [método de treinamento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html) de uma tarefa AutoML V2 com o parâmetro `[TabularJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)`.

------
#### [ CreateAutoMLJob ]

É possível definir o [método de treinamento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html) de uma tarefa do AutoML com o `[AutoMLJobConfig.Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-Mode)` parâmetro.

------

### Como selecionar atributos e algoritmos para treinar um trabalho do AutoML
<a name="autopilot-feature-selection"></a>

#### Seleção de atributos
<a name="autopilot-automl-job-feature-selection-api"></a>

O Autopilot 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 atributos selecionados devem estar contidos em um arquivo JSON 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.

------
#### [ CreateAutoMLJobV2 ]

Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

É possível definir o URL para os atributos selecionados com o `[TabularJobConfig.FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` parâmetro.

------
#### [ CreateAutoMLJob ]

Você pode definir o `FeatureSpecificatioS3Uri` atributo de [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html) na [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)API com o seguinte formato:

```
{
    "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[FeatureSpecificationS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-FeatureSpecificationS3Uri)":"string"
            },
       }
  }
```

------

#### Seleção de algoritmos
<a name="autopilot-automl-job-algorithms-selection-api"></a>

Por padrão, seu trabalho do Autopilot 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.

------
#### [ CreateAutoMLJobV2 ]

Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Você pode especificar uma matriz de selecionados `AutoMLAlgorithms` no `AlgorithmsConfig` atributo de [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html).

Veja a seguir um exemplo de um `AlgorithmsConfig` atributo listando exatamente três algoritmos (“XGBoost”, “fastai”, “catboost”) em seu `AutoMLAlgorithms` campo para o modo de treinamento em agrupamento.

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": {
          "[Mode](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)": "ENSEMBLING",
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["xgboost", "fastai", "catboost"]}
            ]
         },
       },
     },
  }
```

------
#### [ CreateAutoMLJob ]

Você pode especificar uma matriz de selecionados `AutoMLAlgorithms` no `AlgorithmsConfig` atributo de [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html).

Veja a seguir um exemplo de um `AlgorithmsConfig` atributo listando exatamente três algoritmos (“XGBoost”, “fastai”, “catboost”) em seu `AutoMLAlgorithms` campo para o modo de treinamento em agrupamento.

```
{
   "[AutoMLJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-AutoMLJobConfig)": {
        "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html#sagemaker-Type-AutoMLCandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms)":["xgboost", "fastai", "catboost"]}
            ]
         },
     "Mode": "ENSEMBLING" 
  }
```

------

Para ver a lista de algoritmos disponíveis por treinamento`Mode`, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms). Para obter detalhes sobre cada algoritmo, consulte [Modos de treinamento e compatibilidade com algoritmos](autopilot-model-support-validation.md).

### Como especificar os conjuntos de dados de treinamento e validação de um trabalho do AutoML
<a name="autopilot-data-sources-training-or-validation"></a>

Você pode fornecer seu próprio conjunto de dados da validação e taxa de divisão de dados personalizada, ou deixar o Autopilot dividir o conjunto de dados automaticamente.

------
#### [ CreateAutoMLJobV2 ]

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte o parâmetro obrigatório [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tem um`ChannelType`, que pode ser definido como um `training` ou `validation` valores que especificam como os dados devem ser usados ao criar um modelo de aprendizado de máquina. Pelo menos uma fonte de dados deve ser fornecida e no máximo duas fontes de dados são permitidas: uma para dados de treinamento e outra para dados de validação.

A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados.
+ Se você tiver apenas **uma fonte de dados**, a será `ChannelType` definida como `training` padrão e deverá ter esse valor.
  + Se o valor `ValidationFraction` em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) não estiver definido, 0,2 (20%) dos dados dessa fonte serão usados para a validação por padrão. 
  + Se `ValidationFraction` for definido como um valor entre 0 e 1, o conjunto de dados será dividido com base no valor especificado, em que o valor especifica a fração do conjunto de dados usada para validação.
+ Se você tiver **duas fontes de dados**, a `ChannelType` de um dos objetos `AutoMLJobChannel` deverá ser definida como `training`, o valor padrão. A `ChannelType` da outra fonte de dados deve ser definida como `validation`. As duas fontes de dados devem ter o mesmo formato, CSV ou Parquet, e o mesmo esquema. Nesse caso, você não deve definir o valor para o `ValidationFraction` porque todos os dados de cada fonte são usados para treinamento ou validação. Definir esse valor causa um erro.

------
#### [ CreateAutoMLJob ]

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)objeto (consulte o parâmetro obrigatório [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)) tem um`ChannelType`, que pode ser definido como um `training` ou `validation` valores que especificam como os dados devem ser usados ao criar um modelo de aprendizado de máquina. Pelo menos uma fonte de dados deve ser fornecida e no máximo duas fontes de dados são permitidas: uma para dados de treinamento e outra para dados de validação.

A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados.
+ Se você tiver apenas **uma fonte de dados**, a será `ChannelType` definida como `training` padrão e deverá ter esse valor.
  + Se o valor `ValidationFraction` em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) não estiver definido, 0,2 (20%) dos dados dessa fonte serão usados para a validação por padrão. 
  + Se `ValidationFraction` for definido como um valor entre 0 e 1, o conjunto de dados será dividido com base no valor especificado, em que o valor especifica a fração do conjunto de dados usada para validação.
+ Se você tiver **duas fontes de dados**, a `ChannelType` de um dos objetos `AutoMLChannel` deverá ser definida como `training`, o valor padrão. A `ChannelType` da outra fonte de dados deve ser definida como `validation`. As duas fontes de dados devem ter o mesmo formato, CSV ou Parquet, e o mesmo esquema. Nesse caso, você não deve definir o valor para o `ValidationFraction` porque todos os dados de cada fonte são usados para treinamento ou validação. Definir esse valor causa um erro.

------

Para obter informações sobre divisão e validação cruzada no Autopilot, consulte [Validação cruzada no Autopilot](autopilot-metrics-validation.md#autopilot-cross-validation).

### Como definir o tipo de problema de uma tarefa do AutoML
<a name="autopilot-set-problem-type-api"></a>

------
#### [ CreateAutoMLJobV2 ]

Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

É possível especificar ainda mais o tipo de problema de aprendizado supervisionado (classificação binária, classificação multiclasse, regressão) disponível para os candidatos a modelo de sua tarefa AutoML V2 com o parâmetro `[TabularJobConfig.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)`.

------
#### [ CreateAutoMLJob ]

É possível definir o [tipo de problema](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-datasets-problem-types.html#autopilot-problem-types) em um trabalho do AutoML com o parâmetro `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)`. Isso limita o tipo de pré-processamento e algoritmos que o Autopilot testa. Depois que o trabalho estiver concluído, se você tiver definido o `[CreateAutoPilot.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-ProblemType)`, o `[ResolvedAttribute.ProblemType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html)` corresponde ao `ProblemType` definido. Se você deixar em branco (ou `null`), isso `ProblemType` será inferido em seu nome. 

------

**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.

### Como adicionar pesos de amostra a uma tarefa do AutoML
<a name="autopilot-add-sample-weights-api"></a>

É 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 compatibilidade com pesos de amostra está disponível somente no [modo de agrupamento.](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode) 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](autopilot-metrics-validation.md#autopilot-weighted-metrics).

------
#### [ CreateAutoMLJobV2 ]

Para dados tabulares, você deve escolher `[TabularJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Para definir pesos amostrais ao criar um experimento (consulte [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)), você pode passar o nome da coluna de pesos amostrais no `SampleWeightAttributeName` atributo do objeto. `TabularJobConfig` Isso garante que sua métrica objetiva use os pesos para o treinamento, avaliação e seleção de candidatos a modelos.

------
#### [ CreateAutoMLJob ]

Para definir pesos amostrais ao criar um experimento (consulte [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)), você pode passar o nome da coluna de pesos amostrais no `SampleWeightAttributeName` atributo do objeto [MLChannelAuto](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html). Isso garante que sua métrica objetiva use os pesos para o treinamento, avaliação e seleção de candidatos a modelos.

------

### Como configurar o AutoML para iniciar um trabalho remoto no EMR Sem Servidor para grandes conjuntos de dados
<a name="autopilot-set-emr-serverless-api-tabular"></a>

Você pode configurar o seu trabalho AutoML V2 para iniciar automaticamente um trabalho remoto no Amazon EMR Sem Servidor quando recursos computacionais adicionais forem necessários para processar grandes conjuntos de dados. Ao fazer a transição perfeita para o EMR Sem Servidor quando necessário, o trabalho do AutoML pode lidar com conjuntos de dados que, de outra forma, excederiam os recursos inicialmente provisionados, sem nenhuma intervenção manual de sua parte. O EMR Sem Servidor 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 o seu trabalho de AutoML V2 faça a transição automática para o EMR Sem Servidor de um grande conjunto de dados, você precisa fornecer um objeto `EmrServerlessComputeConfig`, que inclua um campo `ExecutionRoleARN`, para a `AutoMLComputeConfig` da solicitação de entrada do trabalho de AutoML V2.

Esse `ExecutionRoleARN` é o ARN do perfil do IAM que concede ao trabalho de AutoML V2 as permissões necessárias para executar trabalhos do EMR Sem Servidor.

Esse perfil deve ter a seguinte relação de confiança:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

E conceder as permissões para:
+ Criar, listar e atualizar aplicações do EMR Sem Servidor.
+ Iniciar, listar, obter ou cancelar execuções de trabalhos em uma aplicação do EMR Sem Servidor.
+ Marcar os recursos do EMR Sem Servidor.
+ Passar um perfil do IAM para o serviço do EMR Sem Servidor para execução.

  Ao conceder a permissão `iam:PassRole`, o trabalho de AutoML V2 pode assumir temporariamente o perfil `EMRServerlessRuntimeRole-*` e passá-lo para o serviço EMR Sem Servidor. Essas são as funções do IAM usadas pelos ambientes de execução de tarefas do EMR Serverless 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 catálogo de dados ou outros serviços com base em AWS Glue seus requisitos de carga de trabalho.

  Consulte [Perfis de runtime do trabalho para o Amazon EMR Sem Servidor](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html) para obter detalhes sobre as permissões deste perfil.

A política do IAM definida no documento JSON fornecido concede essas permissões:

------
#### [ JSON ]

****  

```
{
    "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 a CreateAuto MLJob para CreateAuto MLJob a V2
<a name="autopilot-create-experiment-api-migrate-v1-v2"></a>

Recomendamos que os usuários do `CreateAutoMLJob` migrem para o `CreateAutoMLJobV2`.

Esta seção explica as diferenças nos parâmetros de entrada entre [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#API_CreateAutoMLJob_RequestSyntax)e [CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax) destacando 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`.

------
#### [ CreateAutoMLJob ]

  ```
  { 
      "AutoMLJobConfig": { 
          "Mode": "string",
          "CompletionCriteria": { 
              "MaxAutoMLJobRuntimeInSeconds": number,
              "MaxCandidates": number,
              "MaxRuntimePerTrainingJobInSeconds": number
          },
          "DataSplitConfig": { 
              "ValidationFraction": number
          },
          "SecurityConfig": { 
              "EnableInterContainerTrafficEncryption": boolean,
              "VolumeKmsKeyId": "string",
              "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
              }
          },
          "CandidateGenerationConfig": { 
              "FeatureSpecificationS3Uri": "string"
          }
      },
      "GenerateCandidateDefinitionsOnly": boolean,
      "ProblemType": "string"
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {       
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "Mode": "string",
              "ProblemType": "string",
              "GenerateCandidateDefinitionsOnly": boolean,
              "CompletionCriteria": { 
                  "MaxAutoMLJobRuntimeInSeconds": number,
                  "MaxCandidates": number,
                  "MaxRuntimePerTrainingJobInSeconds": number
              },
              "FeatureSpecificationS3Uri": "string",
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      },
      "DataSplitConfig": { 
          "ValidationFraction": number
      },
      "SecurityConfig": { 
          "EnableInterContainerTrafficEncryption": boolean,
          "VolumeKmsKeyId": "string",
          "VpcConfig": { 
              "SecurityGroupIds": [ "string" ],
              "Subnets": [ "string" ]
          }
      }
  }
  ```

------
+ **Os atributos a seguir mudaram de posição e estrutura entre as versões.**

  O JSON a seguir ilustra como o Auto [ConfigMLJob. CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html#sagemaker-Type-AutoMLJobConfig-CandidateGenerationConfig)do tipo [Auto MLCandidate GenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html) movido para [Auto MLProblemTypeConfig. TabularJobConfig. CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)do tipo [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)em V2.

------
#### [ CreateAutoMLJob ]

  ```
  {
     "AutoMLJobConfig": { 
        "CandidateGenerationConfig": { 
           "AlgorithmsConfig": [ 
              { 
                 "AutoMLAlgorithms": [ "string" ]
              }
           ],
           "FeatureSpecificationS3Uri": "string"
        }
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {
      "AutoMLProblemTypeConfig": {
          "TabularJobConfig": {
              "CandidateGenerationConfig": { 
                  "AlgorithmsConfig": [ 
                      { 
                      "AutoMLAlgorithms": [ "string" ]
                      }
                  ],
              },
          }
      },
  }
  ```

------
+ **Atributos de solicitação que mudaram o nome e a estrutura.**

  O JSON a seguir ilustra como [InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-InputDataConfig)(Uma matriz de [Auto MLChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)) mudou para [Automático MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig) (Uma matriz de [MLJobcanal automático](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)) na V2. Observe os atributos `SampleWeightAttributeName` e `TargetAttributeName` vá para fora `InputDataConfig` e para dentro `AutoMLProblemTypeConfig`.

------
#### [ CreateAutoMLJob ]

  ```
  {    
      "InputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              },
              "SampleWeightAttributeName": "string",
              "TargetAttributeName": "string"
          }
      ]
  }
  ```

------
#### [ CreateAutoMLJobV2 ]

  ```
  {    
      "AutoMLJobInputDataConfig": [ 
          { 
              "ChannelType": "string",
              "CompressionType": "string",
              "ContentType": "string",
              "DataSource": { 
                  "S3DataSource": { 
                      "S3DataType": "string",
                      "S3Uri": "string"
                  }
              }
          }
      ]
  }
  ```

------

# Conjuntos de dados do Autopilot e tipos de problemas
<a name="autopilot-datasets-problem-types"></a>

Para dados tabulares (ou seja, dados nos quais cada coluna contém um atributo com um tipo de dados específico e cada linha contém uma observação), o Autopilot oferece a opção de especificar o tipo de problema de aprendizado supervisionado disponível para os candidatos a modelo do trabalho do AutoML, como classificação binária ou regressão, ou de detectá-lo em seu nome com base nos dados fornecidos. O Autopilot também oferece apoio a vários formatos e tipos de dados.

**Topics**
+ [Conjuntos de dados, tipos e formatos de dados do Autopilot](#autopilot-datasets)
+ [Tipos de problemas do Autopilot](#autopilot-problem-types)

## Conjuntos de dados, tipos e formatos de dados do Autopilot
<a name="autopilot-datasets"></a>

O Autopilot é compatível com dados tabulares formatados como arquivos CSV ou como arquivos Parquet: cada coluna contém um atributo com um tipo de dados específico e cada linha contém uma observação. As propriedades desses dois formatos de arquivo diferem consideravelmente.
+ **CSV** (comma-separated-values) é um formato de arquivo baseado em linhas que armazena dados em texto simples legível por humanos, o que é uma escolha popular para troca de dados, pois são suportados por uma ampla variedade de aplicativos.
+ O **Parquet** é um formato de arquivo baseado em colunas em que os dados são armazenados e processados com mais eficiência do que os formatos de arquivo baseados em linhas. Isso os torna uma opção melhor para problemas de big data.

**Os tipos de dados** aceitos para colunas incluem séries numéricas, categóricas, de texto e temporais que consistem em sequências de números separados por vírgula. Se o Autopilot detectar que está lidando com sequências de **séries temporais**, ele as processa por meio de transformadores de atributos especializados fornecidos pela biblioteca [tsfresh](https://tsfresh.readthedocs.io/en/latest/text/list_of_features.html). Essa biblioteca usa a série temporal como entrada e gera um atributo, como o maior valor absoluto da série temporal ou estatísticas descritivas sobre autocorrelação. Esses atributos de saída são então usados como entradas para um dos três tipos de problemas.

O piloto automático oferece suporte à criação de modelos de aprendizado de máquina em grandes conjuntos de dados de até centenas de. GBs Para obter detalhes sobre os limites de recursos padrão para conjuntos de dados de entrada e como aumentá-los, consulte [Cotas do Autopilot](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-quotas.html).

## Tipos de problemas do Autopilot
<a name="autopilot-problem-types"></a>

Para os dados tabulares, você especifica ainda mais o tipo de problemas de aprendizado supervisionado disponíveis para os candidatos ao modelo da seguinte forma:

### Regressão
<a name="autopilot-automate-model-development-problem-types-regression"></a>

A regressão estima os valores de uma variável de destino dependente com base em uma ou mais outras variáveis ou atributos correlacionados com ela. Um exemplo é a predição dos preços das casas usando atributos como o número de banheiros e quartos, metragem quadrada da casa e jardim. A análise de regressão pode criar um modelo que considera um ou mais desses atributos como uma entrada e prevê o preço de uma casa.

### Classificação binária
<a name="autopilot-automate-model-development-problem-types-binary-classification"></a>

A classificação binária é um tipo de aprendizado supervisionado que atribui um indivíduo a uma das duas classes predefinidas e mutuamente exclusivas com base em seus atributos. Ela é supervisionada porque os modelos são treinados usando exemplos em que os atributos são fornecidos com objetos rotulados corretamente. Um diagnóstico médico para saber se um indivíduo tem uma doença ou não com base nos resultados de testes diagnósticos é um exemplo de classificação binária.

### Classificação multiclasse
<a name="autopilot-automate-model-development-problem-types-multiclass-classification"></a>

A classificação multiclasse é um tipo de aprendizado supervisionado que atribui um indivíduo a uma das várias classes com base em seus atributos. Ela é supervisionada porque os modelos são treinados usando exemplos em que os atributos são fornecidos com objetos rotulados corretamente. Um exemplo é a predição do tópico mais relevante para um documento de texto. Um documento pode ser classificado como sendo sobre, digamos, religião, política ou finanças, ou sobre uma de várias outras classes temáticas predefinidas.

# Modos de treinamento e compatibilidade com algoritmos
<a name="autopilot-model-support-validation"></a>

O Autopilot oferece apoio a diferentes modos de treinamento e algoritmos para resolver problemas de machine learning, gerar relatórios sobre métricas objetivas e de qualidade e usar a validação cruzada automaticamente, quando necessário.

## Modos de treinamento
<a name="autopilot-training-mode"></a>

SageMaker O piloto automático pode selecionar automaticamente o método de treinamento com base no tamanho do conjunto de dados, ou você pode selecioná-lo manualmente. As opções são as seguintes:
+ **Ensembling** — O piloto automático usa a [AutoGluon](https://auto.gluon.ai/scoredebugweight/tutorials/tabular_prediction/index.html)biblioteca para treinar vários modelos básicos. Para encontrar a melhor combinação para seu conjunto de dados, o modo ensemble executa 10 ensaios com diferentes configurações de modelo e meta-parâmetros. Em seguida, o Autopilot combina esses modelos usando um método de conjunto de empilhamento para criar um modelo preditivo ideal. **Para obter uma lista de algoritmos que o Autopilot suporta no modo de agrupamento para dados tabulares, consulte a seção de compatibilidade com algoritmos a seguir.**
+ **Otimização de hiperparâmetros (HPO)**: O Autopilot encontra a melhor versão de um modelo ajustando hiperparâmetros usando otimização bayesiana ou otimização multifidelidade enquanto executa trabalhos de treinamento em seu conjunto de dados. O modo HPO seleciona os algoritmos mais relevantes para seu conjunto de dados e seleciona a melhor variedade de hiperparâmetros para ajustar seus modelos. Para ajustar seus modelos, o modo HPO executa até 100 testes (padrão) para encontrar as configurações ideais de hiperparâmetros dentro da faixa selecionada. Se o tamanho do conjunto de dados for menor que 100 MB, o Autopilot usa a otimização bayesiana. O Autopilot escolhe a otimização de multifidelidade se seu conjunto de dados for maior que 100 MB.

  Na otimização de multifidelidade, as métricas são emitidas continuamente dos contêineres de treinamento. Um teste com baixo desempenho em relação a uma métrica objetiva selecionada é interrompido precocemente. Um teste com bom desempenho recebe mais recursos. 

  Para obter uma lista de algoritmos compatíveis com o Autopilot no modo HPO, consulte a seção de **compatibilidade com algoritmos** a seguir. 
+ **Automático**: O Autopilot escolhe automaticamente o modo de agrupamento ou o modo HPO com base no tamanho do seu conjunto de dados. Se seu conjunto de dados for maior que 100 MB, o Autopilot escolherá o HPO. Caso contrário, ele escolhe o modo de agrupamento. O Autopilot pode falhar ao ler o tamanho do seu conjunto de dados nos seguintes casos:
  + Se você ativar o modo nuvem privada virtual (VPC), para uma tarefa do AutoML, mas o bucket do S3 contendo o conjunto de dados só permitirá o acesso da VPC.
  + A entrada [S3 DataType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html#sagemaker-Type-AutoMLS3DataSource-S3DataType) do seu conjunto de dados é uma. `ManifestFile`
  + A entrada [S3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html#sagemaker-Type-AutoMLS3DataSource-S3Uri) contém mais de 1000 itens.

  Se o Autopilot não conseguir ler o tamanho do seu conjunto de dados, o padrão é escolher o modo HPO.

**nota**  
Para otimizar o runtime e o desempenho, use o modo de treinamento em conjunto para conjuntos de dados menores que 100 MB.

## Compatibilidade com algoritmos
<a name="autopilot-algorithm-support"></a>

No **modo HPO**, o Autopilot oferece apoio aos seguintes tipos de algoritmos de machine learning:
+  [Aluno linear](https://docs.aws.amazon.com/sagemaker/latest/dg/linear-learner.html): Um algoritmo de aprendizado supervisionado que pode resolver problemas de classificação ou regressão.
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)— Um algoritmo de aprendizado supervisionado que tenta prever com precisão uma variável alvo combinando um conjunto de estimativas de um conjunto de modelos mais simples e mais fracos.
+ Algoritmo de aprendizado profundo: Um perceptron multicamada (MLP) e uma rede neural artificial de feedback. Esse algoritmo pode lidar com dados que não são linearmente separáveis.

**nota**  
Você não precisa especificar um algoritmo a ser usado em seu problema de machine learning. O Autopilot seleciona automaticamente o algoritmo apropriado para treinar. 

No **modo de agrupamento**, o Autopilot oferece apoio aos seguintes tipos de algoritmos de machine learning:
+ [LightGBM](https://docs.aws.amazon.com/sagemaker/latest/dg/lightgbm.html): Uma estrutura otimizada que usa algoritmos baseados em árvore com aumento de gradiente. Esse algoritmo usa árvores que crescem em largura, em vez de profundidade, e é altamente otimizado para velocidade.
+ [CatBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/catboost.html)— Uma estrutura que usa algoritmos baseados em árvore com aumento de gradiente. Otimizado para lidar com variáveis categóricas.
+ [XGBoost](https://docs.aws.amazon.com/sagemaker/latest/dg/xgboost.html)— Uma estrutura que usa algoritmos baseados em árvore com aumento de gradiente que cresce em profundidade, em vez de amplitude. 
+ [Random Forest](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html): Um algoritmo baseado em árvore que usa várias árvores de decisão em subamostras aleatórias dos dados com substituição. As árvores são divididas em nós ideais em cada nível. As decisões de cada árvore são calculadas em conjunto para evitar ajustes excessivos e melhorar as predições.
+ [Árvores extras](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.ExtraTreesClassifier.html#sklearn.ensemble.ExtraTreesClassifier): Um algoritmo baseado em árvore que usa várias árvores de decisão em todo o conjunto de dados. As árvores são divididas aleatoriamente em cada nível. As decisões de cada árvore são calculadas para evitar ajustes excessivos e melhorar as predições. Árvores extras adicionam um grau de randomização em comparação com o algoritmo de floresta aleatória.
+ [Modelos lineares](https://scikit-learn.org/stable/modules/classes.html#module-sklearn.linear_model): Uma estrutura que usa uma equação linear para modelar a relação entre duas variáveis nos dados observados.
+ Tocha de rede neural: Um modelo de rede neural implementado usando [PyTorch](https://pytorch.org/).
+ Rede neural fast.ai: Um modelo de rede neural implementado usando [fast.ai](https://www.fast.ai/).

# Métricas e validação
<a name="autopilot-metrics-validation"></a>

Este guia mostra métricas e técnicas de validação que você pode usar para medir o desempenho de modelos de machine learning. O Amazon SageMaker Autopilot produz métricas que medem a qualidade preditiva dos candidatos ao modelo de aprendizado de máquina. As métricas calculadas para candidatos são especificadas usando uma variedade de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Métricas do Autopilot
<a name="autopilot-metrics"></a>

A lista a seguir contém os nomes das métricas atualmente disponíveis para medir o desempenho de modelos no Autopilot.

**nota**  
O Autopilot oferece apoio para pesos de amostra. Para saber mais sobre pesos de amostra e as métricas objetivas disponíveis, consulte [Métricas ponderadas do Autopilot](#autopilot-weighted-metrics).

As métricas a seguir estão disponíveis.

**`Accuracy`**  
 A razão entre o número de itens classificados corretamente e o número total de itens classificados (correta e incorretamente). É usado para classificação binária e multiclasse. A precisão mede o quão próximos estão os valores de classe previstos dos valores reais. Os valores das métricas de precisão variam entre zero (0) e um (1). Um valor de 1 indica precisão perfeita e 0 indica imprecisão perfeita.

**`AUC`**  
 A métrica de área sob a curva (AUC) é usada para comparar e avaliar a classificação binária por algoritmos que retornam probabilidades, como regressão logística. Para mapear as probabilidades em classificações, elas são comparadas com um valor limite.   
A curva relevante é a curva característica de operação do receptor. A curva traça a taxa de positivos verdadeiros (TPR) das predições (ou recall) em relação à taxa de falsos-positivos (FPR) em função do valor limite, acima do qual uma predição é considerada positiva. O aumento do limite resulta em menos falsos-positivos, mas em mais falsos-negativos.   
A AUC é a área sob essa curva característica de operação do receptor. Portanto, a AUC fornece uma medida agregada do desempenho de modelos em todos os limites de classificação possíveis. As pontuações AUC variam entre 0 e 1. Uma pontuação de 1 indica precisão perfeita, e uma pontuação de metade (0,5) indica que a predição não é melhor do que um classificador aleatório. 

**`BalancedAccuracy`**  
`BalancedAccuracy` é uma métrica que mede a razão entre as predições precisas e todas as predições. Essa razão é calculada após a normalização de positivos verdadeiros (TP) e negativos verdadeiros (TN) pelo número total de valores positivos (P) e negativos (N). É usado na classificação binária e multiclasse e é definido da seguinte forma: 0,5\$1 ((TP/P)\$1(TN/N)), com valores que variam de 0 a 1. `BalancedAccuracy`fornece uma melhor medida de precisão quando o número de positivos ou negativos difere muito um do outro em um conjunto de dados desequilibrado, como quando apenas 1% dos e-mails são spam. 

**`F1`**  
A pontuação `F1` é a média harmônica da precisão e do recall, definida da seguinte forma: F1 = 2 \$1 (precisão \$1 recall)/(precisão \$1 recall). Ela é usada para classificação binária em classes tradicionalmente chamadas de positivas e negativas. Diz-se que as predições são verdadeiras quando correspondem à classe real (correta) e falsas quando não correspondem.   
A precisão é a razão entre as predições positivas verdadeiras e todas as predições positivas e inclui os falsos positivos em um conjunto de dados. A precisão mede a qualidade da predição ao prever a classe positiva.   
Recall (ou sensibilidade) é a razão entre as predições positivas verdadeiras e todas as instâncias positivas reais. O recall mede o quão completamente um modelo prevê os membros de classe reais em um conjunto de dados.   
As pontuações F1 variam entre 0 e 1. Uma pontuação de 1 indica a melhor performance possível, e 0 indica a pior.

**`F1macro`**  
A pontuação `F1macro` aplica a pontuação F1 a problemas de classificação multiclasse. Ela faz isso calculando a precisão e o recall e, em seguida, calculando a média harmônica para calcular a pontuação F1 para cada classe. Por fim, `F1macro` calcula a média das pontuações individuais para obter a pontuação `F1macro`. As pontuações `F1macro` variam entre 0 e 1. Uma pontuação de 1 indica a melhor performance possível, e 0 indica a pior.

**`InferenceLatency`**  
A latência de inferência é o tempo aproximado entre fazer uma solicitação de predição de modelo e recebê-la de um endpoint em tempo real no qual o modelo é implantado. Essa métrica é medida em segundos e está disponível somente no modo de agrupamento.

**`LogLoss`**  
A perda de log, também conhecida como perda de entropia cruzada, é uma métrica usada para avaliar a qualidade das saídas de probabilidade, em vez das saídas em si. Ela é usada para classificação binária e multiclasse e em redes neurais. É também a função de custo da regressão logística. A perda de log é uma métrica importante para indicar quando um modelo faz predições incorretas com altas probabilidades. Os valores variam de 0 a infinito. Um valor de 0 representa um modelo que prevê perfeitamente os dados.

**`MAE`**  
O erro absoluto médio (MAE) é uma medida de quão diferentes são os valores previstos e reais, quando se calcula a média de todos os valores. O MAE é comumente usado na análise de regressão para entender o erro de predição de modelo. Se houver regressão linear, o MAE representa a distância média de uma linha prevista até o valor real. O MAE é definido como a soma dos erros absolutos dividida pelo número de observações. Os valores variam de 0 a infinito, com números menores indicando um melhor ajuste do modelo aos dados.

**`MSE`**  
O erro quadrático médio (MSE) é a média das diferenças ao quadrado entre os valores previstos e reais. Ele é usado para regressão. Os valores do MSE são sempre positivos. Quanto melhor for o modelo em prever os valores reais, menor será o valor do MSE.

**`Precision`**  
A precisão mede o quão bem um algoritmo prevê os positivos verdadeiros (TP) de todos os positivos que ele identifica. Ela é definida da seguinte forma: Precisão = TP/ (TP\$1FP), com valores que variam de zero (0) a um (1), e é usada na classificação binária. A precisão é uma métrica importante quando o custo de um falso-positivo é alto. Por exemplo, o custo de um falso-positivo é muito alto se o sistema de segurança de um avião for considerado falsamente seguro para voar. Um falso-positivo (FP) reflete uma predição positiva que, na verdade, é negativa nos dados.

**`PrecisionMacro`**  
A macro de precisão calcula a precisão para problemas de classificação multiclasse. Ela faz isso calculando a precisão para cada classe e calculando a média das pontuações para obter precisão para várias classes. As pontuações `PrecisionMacro` variam de zero (0) a um (1). Pontuações mais altas refletem a capacidade do modelo de prever positivos verdadeiros (TP) a partir de todos os positivos identificados, com a média de várias classes.

**`R2`**  
R2, também conhecido como coeficiente de determinação, é usado na regressão para quantificar o quanto um modelo pode explicar a variância de uma variável dependente. Os valores variam de um (1) a menos um (-1). Números maiores indicam uma fração maior de variabilidade explicada. Valores de `R2` próximos a zero (0) indicam que muito pouco da variável dependente pode ser explicado pelo modelo. Valores negativos indicam um ajuste ruim, e que o modelo é superado por uma função constante. Para regressão linear, essa é uma linha horizontal.

**`Recall`**  
O recall mede o quão bem um algoritmo prevê corretamente todos os positivos verdadeiros (TP) em um conjunto de dados. Um positivo verdadeiro é uma predição positiva que também é um valor positivo real nos dados. O recall é definido da seguinte forma: Recall = TP/(TP\$1FN), com valores que variam de 0 a 1. Pontuações mais altas refletem uma melhor capacidade do modelo de prever positivos verdadeiros (TP) nos dados. Ele é usado na classificação binária.   
O recall é importante ao testar o câncer porque é usado para encontrar todos os positivos verdadeiros. Um falso-negativo (FP) indica uma predição negativa que, na verdade, é positiva nos dados. Frequentemente, é insuficiente medir somente o recall, porque prever cada saída como um positivo verdadeiro produz uma pontuação de recall perfeita.

**`RecallMacro`**  
O `RecallMacro` calcula o recall para problemas de classificação multiclasse calculando o recall para cada classe e calculando a média das pontuações para obter o recall de várias classes. As pontuações `RecallMacro` variam de 0 a 1. Pontuações mais altas refletem a capacidade do modelo de prever positivos verdadeiros (TP) em um conjunto de dados, enquanto um positivo verdadeiro reflete uma predição positiva que também é um valor positivo real nos dados. Frequentemente, é insuficiente medir apenas o recall, porque prever cada saída como um positivo verdadeiro produzirá uma pontuação de recall perfeita.

**`RMSE`**  
Erro quadrático médio (RMSE) mede a raiz quadrada da diferença ao quadrado entre os valores previstos e reais. É calculado como a média de todos os valores. Ela é usada em análise de regressão para entender o erro de predição dos modelos. É uma métrica importante para indicar a presença de grandes erros e valores atípicos no modelo. Os valores variam de zero (0) ao infinito, com números menores indicando um melhor ajuste do modelo aos dados. O RMSE depende da escala e não deve ser usado para comparar conjuntos de dados de tamanhos diferentes.

As métricas que são calculadas automaticamente para um candidato a modelo são determinadas pelo tipo de problema que está sendo tratado.

Consulte a [documentação de referência SageMaker da API da Amazon](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) para ver a lista de métricas disponíveis suportadas pelo Autopilot.

## Métricas ponderadas do Autopilot
<a name="autopilot-weighted-metrics"></a>

**nota**  
O Autopilot oferece apoio para pesos de amostra apenas no modo de agrupamento para todas as [métricas disponíveis](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics), com exceção da `Balanced Accuracy` e `InferenceLatency`, a `BalanceAccuracy` vem com seu próprio esquema de ponderação para conjuntos de dados não equilibrados que não exigem pesos de amostra. A `InferenceLatency` não oferece apoio para pesos de amostra. Tanto a métrica objetiva `Balanced Accuracy` quanto a `InferenceLatency` ignoram qualquer peso de amostra existente ao treinar e avaliar um modelo.

Os usuários podem adicionar uma coluna de pesos de amostra aos seus dados para garantir que cada observação usada para treinar um modelo de machine learning receba um peso correspondente à sua importância percebida para o modelo. Isso é especialmente útil em cenários nos quais as observações no conjunto de dados têm vários graus de importância ou nos quais um conjunto de dados contém um número desproporcional de amostras de uma classe em comparação a outras. A atribuição de um peso a cada observação com base em sua importância ou maior importância para uma classe minoritária pode ajudar no desempenho geral de um modelo ou garantir que um modelo não seja tendencioso para a classe majoritária.

Para obter informações sobre como passar os pesos de amostra ao criar um experimento na interface do usuário do Studio Classic, consulte a *Etapa 7* em [Criação de um experimento do Autopilot usando o Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html). 

Para obter informações sobre como passar pesos de amostra programaticamente ao criar um experimento do Autopilot usando a API, consulte *Como adicionar pesos de amostra a um trabalho do AutoML* em [Criação de um experimento do Autopilot programaticamente](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html).

## Validação cruzada no Autopilot
<a name="autopilot-cross-validation"></a>

A validação cruzada é usada para reduzir o sobreajuste e o desvio na seleção de modelo. Ela também é usada para avaliar o quão bem um modelo pode prever os valores de um conjunto de dados de validação invisível, se o conjunto de dados de validação for extraído da mesma população. Esse método é especialmente importante ao treinar em conjuntos de dados com um número limitado de instâncias de treinamento. 

O Autopilot usa validação cruzada para criar modelos no modo de otimização de hiperparâmetros (HPO) e treinamento em conjunto. A primeira etapa do processo de validação cruzada do Autopilot é dividir os dados em k-folds.

### Divisão k-fold
<a name="autopilot-cross-validation-kfold"></a>

A divisão K-fold é um método que separa um conjunto de dados de treinamento de entrada em vários conjuntos de dados de treinamento e validação. O conjunto de dados é dividido em subamostras de `k` de tamanhos iguais, chamadas de folds. Os modelos são então treinados em `k-1` folds e testados em relação ao késimo fold restante, que é o conjunto de dados de validação. O processo é repetido `k` vezes usando um conjunto de dados diferente para validação. 

A imagem a seguir mostra a divisão de k-fold com k = 4 folds. Cada fold é representado como uma linha. As caixas em tons escuros representam as partes dos dados usadas no treinamento. As caixas em tons claros restantes indicam os conjuntos de dados de validação. 

![\[Divisão em k-folds com 4 folds representados como caixas: escuras para dados usados; claras para conjuntos de dados de validação.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-metrics-kfold-splits.png)


O Autopilot usa validação cruzada de k-fold para criar modelos no modo de otimização de hiperparâmetros (HPO) e de agrupamento.

Você pode implantar modelos de piloto automático criados usando validação cruzada, como faria com qualquer outro modelo de piloto automático ou SageMaker de IA.

### Modo HPO
<a name="autopilot-cross-validation-hpo"></a>

A validação cruzada k-fold usa o método de divisão k-fold para validação cruzada. No modo HPO, o Autopilot implementa automaticamente a validação cruzada k-fold para pequenos conjuntos de dados com 50.000 ou menos instâncias de treinamento. A realização da validação cruzada é especialmente importante ao treinar em pequenos conjuntos de dados, pois protege contra sobreajuste e desvio de seleção. 

O modo HPO usa um valor *k* de 5 em cada um dos algoritmos candidatos usados para modelar o conjunto de dados. Vários modelos são treinados em diferentes divisões, e os modelos são armazenados separadamente. Quando o treinamento é concluído, a média das métricas de validação de cada um dos modelos é calculada para produzir uma única métrica de estimativa. Por fim, o Autopilot combina os modelos do teste com a melhor métrica de validação em um modelo de agrupamento. O Autopilot usa esse modelo de agrupamento para fazer predições.

A métrica de validação para os modelos treinados pelo Autopilot é apresentada como a métrica objetiva no placar de modelos. O Autopilot usa a métrica de validação padrão para cada tipo de problema que ele trata, a menos que você especifique o contrário. Para obter uma lista de todas as métricas utilizadas pelo Autopilot, consulte [Métricas do Autopilot](#autopilot-metrics).

Por exemplo, o [conjunto de dados Boston Housing](http://lib.stat.cmu.edu/datasets/boston) contém apenas 861 amostras. Se você criar um modelo para prever preços de venda de casas usando esse conjunto de dados sem validação cruzada, corre o risco de treinar em um conjunto de dados que não é representativo do estoque imobiliário de Boston. Se você dividir os dados somente uma vez em subconjuntos de treinamento e validação, o fold de treinamento poderá conter apenas dados principalmente dos subúrbios. Como resultado, você treinaria em dados que não são representativos do resto da cidade. Nesse exemplo, seu modelo provavelmente seria sobreajustado nessa seleção tendenciosa. A validação cruzada k-fold pode reduzir o risco desse tipo de erro fazendo uso completo e aleatório dos dados disponíveis para treinamento e validação.

A validação cruzada pode aumentar os tempos de treinamento em uma média de 20%. Os tempos de treinamento também podem aumentar significativamente para conjuntos de dados complexos.

**nota**  
No modo HPO, você pode ver as métricas de treinamento e validação de cada dobra em seus `/aws/sagemaker/TrainingJobs` CloudWatch registros. Para obter mais informações sobre CloudWatch registros, consulte[CloudWatch Registros para Amazon SageMaker AI](logging-cloudwatch.md). 

### Modo de agrupamento
<a name="autopilot-cross-validation-ensemble"></a>

**nota**  
O Autopilot oferece apoio a pesos de amostra no modo de agrupamento. Para obter a lista de métricas disponíveis que oferecem apoio a pesos de amostra, consulte [Métricas do Autopilot](#autopilot-metrics).

No modo de agrupamento, a validação cruzada é realizada independentemente do tamanho do conjunto de dados. Os clientes podem fornecer seu próprio conjunto de dados de validação e taxa de divisão de dados personalizada ou podem deixar o Autopilot dividir o conjunto de dados automaticamente em uma taxa de divisão de 80-20%. Os dados de treinamento são então divididos em `k` -folds para validação cruzada, onde o valor de `k` é determinado pelo mecanismo. AutoGluon Um agrupamento consiste em vários modelos de machine learning, em que cada modelo é conhecido como o modelo básico. Um modelo de base única é treinado em (`k`-1) dobras e faz out-of-fold previsões na dobra restante. Esse processo é repetido em todas as `k` dobras, e as previsões out-of-fold (OOF) são concatenadas para formar um único conjunto de previsões. Todos os modelos básicos do agrupamento seguem esse mesmo processo de geração de predições OOF.

A imagem a seguir mostra a validação de k-fold com `k` = 4 folds. Cada fold é representado como uma linha. As caixas em tons escuros representam as partes dos dados usadas no treinamento. As caixas em tons claros restantes indicam os conjuntos de dados de validação. 

Na parte superior da imagem, em cada fold, o primeiro modelo básico faz predições no conjunto de dados de validação após o treinamento nos conjuntos de dados de treinamento. Em cada fold subsequente, os conjuntos de dados mudam de função. Um conjunto de dados que antes era usado para treinamento agora é usado para validação, e isso também se aplica ao contrário. No final das `k` dobras, todas as previsões são concatenadas para formar um único conjunto de previsões chamado de previsão (OOF). out-of-fold Esse processo é repetido para cada modelo básico de `n`.

![\[Validação de k-fold: Quatro linhas de caixas representam 4-folds que geram uma linha de predições OOF.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-metrics-kfold.PNG)


As predições OOF para cada modelo básico são então usadas como atributos para treinar um modelo de empilhamento. O modelo de empilhamento aprende os pesos de importância de cada modelo básico. Esses pesos são usados para combinar as predições OOF para formar a predição final. A performance no conjunto de dados de validação determina qual modelo básico ou de empilhamento é o melhor, e esse modelo é retornado como o modelo final.

No modo de agrupamento, você pode fornecer seu próprio conjunto de dados de validação ou permitir que o Autopilot divida o conjunto de dados de entrada automaticamente em conjunto de dados 80% de treinamento e 20% de validação. Os dados de treinamento são então divididos em `k`-folds para validação cruzada e produzem uma predição OOF e um modelo básico para cada fold.

Essas predições OOF são usadas como atributos para treinar um modelo de empilhamento, que aprende simultaneamente os pesos para cada modelo básico. Esses pesos são usados para combinar as predições OOF para formar a predição final. Os conjuntos de dados de validação para cada fold são usados para o ajuste de hiperparâmetros de todos os modelos básicos e do modelo de empilhamento. A performance no conjunto de dados de validação determina qual modelo básico ou de empilhamento é o melhor, e esse modelo é retornado como o modelo final.

# Implantação e predição de modelos do Autopilot
<a name="autopilot-deploy-models"></a>

Este guia do Amazon SageMaker Autopilot inclui etapas para implantação de modelos, configuração de inferência em tempo real e execução de inferência com trabalhos em lote. 

Depois de criar e treinar seus modelos, você poderá implantá-los para obter predições de duas maneiras:

1. Use [Implantar modelos para inferência em tempo real](autopilot-deploy-models-realtime.md) para configurar um endpoint e obter predições de forma interativa. A inferência em tempo real é ideal para workloads de inferência em que você tem requisitos em tempo real, interativos e de baixa latência.

1. Use [Execução de trabalhos de inferência em lote](autopilot-deploy-models-batch.md) para fazer predições paralelas em lotes de observações em um conjunto de dados inteiro. A inferência em lote é uma boa opção para grandes conjuntos de dados ou se você não precisar de uma resposta imediata a uma solicitação de predição de modelo.

**nota**  
Para evitar cobranças desnecessárias: depois que os endpoints e os recursos criados a partir da implantação do modelo não forem mais necessários, você poderá excluí-los. Para obter informações sobre preços de instâncias por região, consulte [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

# Implantar modelos para inferência em tempo real
<a name="autopilot-deploy-models-realtime"></a>

A inferência em tempo real é ideal para workloads de inferência em que você tem requisitos em tempo real, interativos e de baixa latência. Esta seção mostra como você pode usar a inferência em tempo real para obter predições do seu modelo de forma interativa.

Para implantar o modelo que produziu a melhor métrica de validação em um experimento do Autopilot, você tem várias opções. Por exemplo, ao usar o Autopilot no SageMaker Studio Classic, você pode implantar o modelo automática ou manualmente. Você também pode usar SageMaker APIs para implantar manualmente um modelo de piloto automático. 

As guias a seguir mostram três opções para implantar seu modelo. Estas instruções supõem que você já criou um modelo no Autopilot. Se você não tem um modelo, consulte [Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md). Para ver exemplos de cada opção, abra cada guia.

## Implemente usando a interface de usuário (UI) do Autopilot
<a name="autopilot-deploy-models-realtime-ui"></a>

A interface do usuário do Autopilot contém menus suspensos úteis, botões de alternância, dicas de ferramentas e muito mais para ajudá-lo(a) a navegar pela implantação do modelo. Você pode implantar usando um dos seguintes procedimentos: automático ou manual.
+ **Implantação automática**: para implantar automaticamente o melhor modelo de um experimento do Autopilot em um endpoint

  1. [Crie um experimento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html) no SageMaker Studio Classic. 

  1. Mude o valor de **Implantação automática** para **Sim**.
**nota**  
**A implantação automática falhará se a cota de recursos padrão ou a cota de clientes para instâncias de endpoint em uma região for muito limitada.** No modo de otimização de hiperparâmetros (HPO), você precisa ter pelo menos duas instâncias ml.m5.2xlarge. No modo de agrupamento, você precisa ter pelo menos uma instância ml.m5.12xlarge. Se você encontrar uma falha relacionada às cotas, poderá [solicitar um aumento do limite de serviço](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html) para instâncias de endpoint de SageMaker IA.
+ **Implantação manual**: para implantar manualmente o melhor modelo de um experimento do Autopilot em um endpoint

  1. [Crie um experimento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html) no SageMaker Studio Classic. 

  1. Mude o valor de **Implantação automática** para **Não**. 

  1. Selecione o modelo que deseja implantar em **Nome do modelo**.

  1. Selecione o botão laranja de **Implantação e configurações avançadas** localizado à direita do placar. Isso abre uma nova guia.

  1. Configure o nome do endpoint, o tipo de instância e outras informações opcionais.

  1.  Selecione o botão laranja **Implantar modelo** para implantar em um endpoint.

  1. Verifique o progresso do processo de criação do endpoint no [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)navegando até a seção Endpoints. Essa seção está localizada no menu suspenso **Inferência** no painel de navegação. 

  1. Depois que o status do endpoint mudar de **Creating** para **InService**, conforme mostrado abaixo, retorne ao Studio Classic e invoque o endpoint.  
![\[SageMaker Console de IA: página de endpoints para criar um endpoint ou verificar o status do endpoint.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-check-progress.PNG)

## Implemente usando SageMaker APIs
<a name="autopilot-deploy-models-api"></a>

Você também pode obter inferência em tempo real implantando seu modelo usando **chamadas de API**. Esta seção mostra as cinco etapas desse processo usando trechos de código AWS Command Line Interface (AWS CLI). 

Para obter exemplos de código completos para AWS CLI comandos e AWS SDK para Python (boto3), abra as guias diretamente seguindo estas etapas.

1. **Obtenha definições de candidatos**

   Obtenha as definições do contêiner candidato em [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers). Essas definições de candidatos são usadas para criar um modelo de SageMaker IA. 

   O exemplo a seguir usa a [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)API para obter as definições do candidato ao melhor modelo. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Listar candidatos**

   O exemplo a seguir usa a [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para listar todos os candidatos. O comando da AWS CLI a seguir é um exemplo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Crie um modelo de SageMaker IA**

   Use as definições de contêiner das etapas anteriores para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker create-model --model-name '<your-custom-model-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Criar uma configuração de endpoint** 

   O exemplo a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-custom-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Criar o endpoint** 

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-custom-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Verifique o progresso da implantação do seu endpoint usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. **Invocar o endpoint** 

   A estrutura de comando a seguir invoca o endpoint para inferência em tempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

As guias a seguir contêm exemplos de código completos para implantar um modelo com o SDK AWS para Python (boto3) ou AWS CLI.

------
#### [ AWS SDK for Python (boto3) ]

1. **Obtenha as definições do candidato** usando o exemplo de código a seguir.

   ```
   import sagemaker 
   import boto3
   
   session = sagemaker.session.Session()
   
   sagemaker_client = boto3.client('sagemaker', region_name='us-west-2')
   job_name = 'test-auto-ml-job'
   
   describe_response = sm_client.describe_auto_ml_job(AutoMLJobName=job_name)
   # extract the best candidate definition from DescribeAutoMLJob response
   best_candidate = describe_response['BestCandidate']
   # extract the InferenceContainers definition from the caandidate definition
   inference_containers = best_candidate['InferenceContainers']
   ```

1. **Crie o modelo** usando o exemplo de código a seguir.

   ```
   # Create Model
   model_name = 'test-model' 
   sagemaker_role = 'arn:aws:iam:444455556666:role/sagemaker-execution-role'
   create_model_response = sagemaker_client.create_model(
      ModelName = model_name,
      ExecutionRoleArn = sagemaker_role,
      Containers = inference_containers 
   )
   ```

1. **Crie a configuração de endpoint** usando o exemplo de código a seguir.

   ```
   endpoint_config_name = 'test-endpoint-config'
                                                           
   instance_type = 'ml.m5.2xlarge' 
   # for all supported instance types, see 
   # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ProductionVariant.html#sagemaker-Type-ProductionVariant-InstanceType    # Create endpoint config
   
   endpoint_config_response = sagemaker_client.create_endpoint_config(
      EndpointConfigName=endpoint_config_name, 
      ProductionVariants=[
          {
              "VariantName": "variant1",
              "ModelName": model_name, 
              "InstanceType": instance_type,
              "InitialInstanceCount": 1
          }
      ]
   )
   
   print(f"Created EndpointConfig: {endpoint_config_response['EndpointConfigArn']}")
   ```

1. **Crie o endpoint** e implante o modelo com o exemplo de código a seguir.

   ```
   # create endpoint and deploy the model
   endpoint_name = 'test-endpoint'
   create_endpoint_response = sagemaker_client.create_endpoint(
                                               EndpointName=endpoint_name, 
                                               EndpointConfigName=endpoint_config_name)
   print(create_endpoint_response)
   ```

   **Verifique o status da criação do endpoint** usando o exemplo de código a seguir.

   ```
   # describe endpoint creation status
   status = sagemaker_client.describe_endpoint(EndpointName=endpoint_name)["EndpointStatus"]
   ```

1. **Invoque o endpoint** para inferência em tempo real usando a estrutura de comando a seguir.

   ```
   # once endpoint status is InService, you can invoke the endpoint for inferencing
   if status == "InService":
     sm_runtime = boto3.Session().client('sagemaker-runtime')
     inference_result = sm_runtime.invoke_endpoint(EndpointName='test-endpoint', ContentType='text/csv', Body='1,2,3,4,class')
   ```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenha as definições do candidato** usando o exemplo de código a seguir.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Crie o modelo** usando o exemplo de código a seguir.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", amzn-s3-demo-bucket1
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", aws-region
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \ 
   --region 'us-west-2'
   ```

   Para obter detalhes adicionais, consulte [Criando um modelo](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-model.html).

   O comando da `create model` responderá no formato a seguir.

   ```
   {
       "ModelArn": "arn:aws:sagemaker:us-west-2:1234567890:model/test-sagemaker-model"
   }
   ```

1. **Crie a configuração de endpoint** usando o exemplo de código a seguir.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name 'test-endpoint-config' \
   --production-variants '[{"VariantName": "variant1", 
                           "ModelName": "test-sagemaker-model",
                           "InitialInstanceCount": 1,
                           "InstanceType": "ml.m5.2xlarge"
                          }]' \
   --region us-west-2
   ```

   O comando de configuração `create endpoint` responderá no formato a seguir.

   ```
   {
       "EndpointConfigArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint-config/test-endpoint-config"
   }
   ```

1. **Crie um endpoint** usando o exemplo de código a seguir.

   ```
   aws sagemaker create-endpoint --endpoint-name 'test-endpoint' \    
   --endpoint-config-name 'test-endpoint-config' \                 
   --region us-west-2
   ```

   O comando da `create endpoint` responderá no formato a seguir.

   ```
   {
       "EndpointArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint/test-endpoint"
   }
   ```

   Verifique o progresso da implantação do endpoint usando o seguinte exemplo de código da CLI [describe-endpoint](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/describe-endpoint.html):

   ```
   aws sagemaker describe-endpoint --endpoint-name 'test-endpoint' --region us-west-2
   ```

   A verificação de progresso anterior responderá no formato a seguir.

   ```
   {
       "EndpointName": "test-endpoint",
       "EndpointArn": "arn:aws:sagemaker:us-west-2:1234567890:endpoint/test-endpoint",
       "EndpointConfigName": "test-endpoint-config",
       "EndpointStatus": "Creating",
       "CreationTime": 1660251167.595,
       "LastModifiedTime": 1660251167.595
   }
   ```

   Depois das alterações `EndpointStatus` para `InService`, o endpoint está pronto para uso em inferência em tempo real.

1. **Invoque o endpoint** para inferência em tempo real usando a estrutura de comando a seguir.

   ```
   aws sagemaker-runtime invoke-endpoint --endpoint-name 'test-endpoint' \
   --region 'us-west-2' \
   --body '1,51,3.5,1.4,0.2' \
   --content-type 'text/csv' \
   '/tmp/inference_output'
   ```

   Para obter mais opções, consulte [invocar um endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker-runtime/invoke-endpoint.html).

------

## Implemente modelos de contas diferentes
<a name="autopilot-deploy-models-realtime-across-accounts"></a>

Você pode implantar um modelo do Autopilot a partir de uma conta diferente da conta original na qual o modelo foi gerado. Para implementar a implantação do modelo entre contas, esta seção mostra como fazer o seguinte:   Conceda permissão para assumir a função na conta da qual você deseja implantar (a conta geradora).    Faça uma chamada para a conta `DescribeAutoMLJob` de implantação para obter informações do modelo.    Conceder direitos de acesso aos artefatos do modelo da conta geradora.    

1. **Conceder permissão à conta de implantação** 

   Para assumir a função na conta geradora, você deve dar permissão para a conta de implantação. Isso permite que a conta de implantação descreva as tarefas do Autopilot na conta geradora.

   O exemplo a seguir usa uma conta geradora com uma entidade `sagemaker-role` confiável. O exemplo mostra como dar permissão a uma conta de implantação com o ID 111122223333 para assumir a função da conta geradora.

   ```
   "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "sagemaker.amazonaws.com"
                   ],
                   "AWS": [ "111122223333"]
               },
               "Action": "sts:AssumeRole"
           }
   ```

   A nova conta com o ID 111122223333 agora pode assumir a função da conta geradora. 

   Em seguida, chame a API `DescribeAutoMLJob` da conta de implantação para obter uma descrição do trabalho criado pela conta geradora. 

   O exemplo de código a seguir descreve o modelo da conta de implantação.

   ```
   import sagemaker 
   import boto3
   session = sagemaker.session.Session()
   
   sts_client = boto3.client('sts')
   sts_client.assume_role
   
   role = 'arn:aws:iam::111122223333:role/sagemaker-role'
   role_session_name = "role-session-name"
   _assumed_role = sts_client.assume_role(RoleArn=role, RoleSessionName=role_session_name)
   
   credentials = _assumed_role["Credentials"]
   access_key = credentials["AccessKeyId"]
   secret_key = credentials["SecretAccessKey"]
   session_token = credentials["SessionToken"]
   
   session = boto3.session.Session()
           
   sm_client = session.client('sagemaker', region_name='us-west-2', 
                              aws_access_key_id=access_key,
                               aws_secret_access_key=secret_key,
                               aws_session_token=session_token)
   
   # now you can call describe automl job created in account A 
   
   job_name = "test-job"
   response= sm_client.describe_auto_ml_job(AutoMLJobName=job_name)
   ```

1. **Conceda acesso à conta de implantação** aos artefatos do modelo na conta geradora.

   Conceda acesso à conta de implantação somente aos artefatos do modelo na conta geradora para implantá-la. Eles estão localizados no [S3 OutputPath](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html#sagemaker-Type-AutoMLOutputDataConfig-S3OutputPath) que foi especificado na chamada de `CreateAutoMLJob` API original durante a geração do modelo.

   Para dar acesso à conta de implantação aos artefatos do modelo, escolha uma das seguintes opções:

   1. [Dê acesso](https://aws.amazon.com/premiumsupport/knowledge-center/cross-account-access-s3/) ao `ModelDataUrl` da conta geradora para a conta de implantação.

      Em seguida, você precisa dar permissão à conta de implantação para assumir a função. Siga as etapas de [inferência em tempo real](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-deploy-models.html#autopilot-deploy-models-realtime) para implantar. 

   1. [Copie artefatos do modelo](https://aws.amazon.com/premiumsupport/knowledge-center/copy-s3-objects-account/) do [S3](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html#sagemaker-Type-AutoMLOutputDataConfig-S3OutputPath) original da conta geradora OutputPath para a conta geradora.

      Para conceder acesso aos artefatos do modelo, defina um modelo `best_candidate` e reatribua os contêineres do modelo à nova conta. 

      O exemplo a seguir mostra como definir um modelo `best_candidate` e reatribuir o `ModelDataUrl`.

      ```
      best_candidate = automl.describe_auto_ml_job()['BestCandidate']
      
      # reassigning ModelDataUrl for best_candidate containers below
      new_model_locations = ['new-container-1-ModelDataUrl', 'new-container-2-ModelDataUrl', 'new-container-3-ModelDataUrl']
      new_model_locations_index = 0
      for container in best_candidate['InferenceContainers']:
          container['ModelDataUrl'] = new_model_locations[new_model_locations_index++]
      ```

      Após essa atribuição de contêineres, siga as etapas em [Implemente usando SageMaker APIs](#autopilot-deploy-models-api) para implantar.

Para criar uma carga útil em inferência em tempo real, veja o exemplo do caderno para [definir uma carga útil de teste](https://aws.amazon.com/getting-started/hands-on/machine-learning-tutorial-automatically-create-models). Para criar a carga útil a partir de um arquivo CSV e invocar um endpoint, consulte a seção **Prever com seu modelo** em [Criar um modelo de machine learning automaticamente](https://aws.amazon.com/getting-started/hands-on/create-machine-learning-model-automatically-sagemaker-autopilot/#autopilot-cr-room).

# Execução de trabalhos de inferência em lote
<a name="autopilot-deploy-models-batch"></a>

A inferência em lote, também conhecida como inferência offline, gera predições de modelo em um lote de observações. A inferência em lote é uma boa opção para grandes conjuntos de dados ou se você não precisar de uma resposta imediata a uma solicitação de predição de modelo. Por outro lado, a inferência online ([inferência em tempo real](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-deploy-models.html#autopilot-deploy-models-realtime)) gera predições em tempo real. Você pode fazer inferências em lote a partir de um modelo do Autopilot usando o [SDK do SageMaker Python](https://sagemaker.readthedocs.io/en/stable/), a interface de usuário (UI) do Autopilot, o SDK [AWS para Python](https://aws.amazon.com/sdk-for-python/) (boto3) ou o (). AWS Command Line Interface [AWS CLI](https://docs.aws.amazon.com/cli/)

As guias a seguir mostram três opções para implantar seu modelo: Usando APIs, interface do piloto automático ou usando APIs para implantar a partir de contas diferentes. Estas instruções supõem que você já criou um modelo no Autopilot. Se você não tem um modelo, consulte [Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md). Para ver exemplos de cada opção, abra cada guia.

## Implemente um modelo usando a interface do Autopilot
<a name="autopilot-deploy-models-batch-ui"></a>

A interface do usuário do Autopilot contém menus suspensos úteis, botões de alternância, dicas de ferramentas e muito mais para ajudá-lo(a) a navegar pela implantação do modelo.

As etapas a seguir mostram como implantar um modelo de um experimento do Autopilot para predições em lote. 

1. Faça login em [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)e selecione **Studio** no painel de navegação.

1. No painel de navegação à esquerda, escolha **Studio**.

1. Em **Comece a usar**, selecione o domínio no qual você deseja iniciar a aplicação Studio. Se o seu perfil de usuário pertencer apenas a um domínio, você não verá a opção para selecionar um domínio.

1. Selecione o perfil de usuário para o qual você deseja iniciar a aplicação do Studio Classic. Se não houver perfil de usuário no domínio, escolha **Criar perfil de usuário**. Para obter mais informações, consulte [Adicionar perfis de usuário](https://docs.aws.amazon.com/sagemaker/latest/dg/domain-user-profile-add.html).

1. Escolha **Executar o Studio**. Se o perfil do usuário pertencer a um espaço compartilhado, escolha **Espaços abertos**. 

1. Quando o console do SageMaker Studio Classic abrir, escolha o botão **Launch SageMaker Studio**.

1. Selecione **AutoML** no painel de navegação à esquerda.

1. Em **Nome**, selecione o experimento do Autopilot correspondente ao modelo que você deseja implantar. Isso abre uma nova guia de **trabalhos do Autopilot**.

1. Na seção **Nome do modelo**, selecione o modelo que deseja implantar.

1. Escolha **Implantar modelo**. Isso abre uma nova guia.

1. Escolha **Make batch predictions (Fazer predições em lote)** na parte superior da página.

1. Para a **configuração do trabalho de transformação de lotes**, insira **o tipo de instância**, **Contagem de instâncias** e outras informações opcionais.

1. Na seção **Configuração de dados de entrada**, abra o menu suspenso. 

   1. Para o **tipo de dados S3**, escolha **ManifestFile**ou **S3Prefix**.

   1. **Para **Tipo de divisão**, escolha **Linha**, **Recordio **TFRecord****ou Nenhum.**

   1. Para **Compactação**, escolha **Gzip** ou **Nenhuma**. 

1. Para a **localização do S3**, insira o local do bucket do Amazon S3 dos dados de entrada e outras informações opcionais.

1. Em **Configuração de dados de saída**, insira o bucket do S3 para os dados de saída e escolha como [montar a saída](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformOutput.html#sagemaker-Type-TransformOutput-AssembleWith) do seu trabalho. 

   1. Para **Configuração adicional (opcional)**, você pode inserir um tipo MIME e uma **Chave de criptografia S3**.

1. Para **filtragem de entrada/saída e junções de dados (opcional)**, você insere uma JSONpath expressão para filtrar os dados de entrada, une os dados da fonte de entrada aos dados de saída e insere uma JSONpath expressão para filtrar os dados de saída. 

   1. Para ver exemplos de cada tipo de filtro, consulte a [DataProcessing API](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DataProcessing.html#sagemaker-Type-DataProcessing-InputFilter).

1. Para realizar predições em lote no seu conjunto de dados de entrada, selecione **Criar tarefa de transformação em lote**. Uma nova guia **Trabalhos de transformação de lotes** é exibida.

1. Na guia **Trabalhos de transformação de lotes**: Localize o nome do seu trabalho na seção **Status**. Em seguida, verifique o progresso do trabalho. 

## Implemente usando SageMaker APIs
<a name="autopilot-deploy-models-batch-steps"></a>

Para usar o SageMaker APIs para inferência em lote, há três etapas:

1. **Obtenha definições de candidatos** 

   As definições de candidatos de [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)são usadas para criar um modelo de SageMaker IA. 

   O exemplo a seguir mostra como usar a [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)API para obter definições de candidatos para o melhor candidato a modelo. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

   Use a [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para listar todos os candidatos. O comando da AWS CLI a seguir é um exemplo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Crie um modelo de SageMaker IA**

   Para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API, use as definições de contêiner das etapas anteriores. O comando da AWS CLI a seguir é um exemplo.

   ```
   aws sagemaker create-model --model-name '<your-custom-model-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Crie um trabalho de transformação da SageMaker IA** 

   O exemplo a seguir cria um trabalho de transformação de SageMaker IA com a [CreateTransformJob](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-transform-job.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker create-transform-job --transform-job-name '<your-custom-transform-job-name>' --model-name '<your-custom-model-name-from-last-step>'\
   --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix", 
                   "S3Uri": "<your-input-data>" 
               }
           },
           "ContentType": "text/csv",
           "SplitType": "Line"
       }'\
   --transform-output '{
           "S3OutputPath": "<your-output-path>",
           "AssembleWith": "Line" 
       }'\
   --transform-resources '{
           "InstanceType": "<instance-type>", 
           "InstanceCount": 1
       }' --region '<region>'
   ```

Verifique o progresso do seu trabalho de transformação usando a [DescribeTransformJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTransformJob.html)API. Veja o AWS CLI comando a seguir como exemplo.

```
aws sagemaker describe-transform-job --transform-job-name '<your-custom-transform-job-name>' --region <region>
```

Depois que o trabalho for concluído, o resultado previsto estará disponível em `<your-output-path>`. 

O nome do arquivo resultante tem o seguinte formato: `<input_data_file_name>.out`. Por exemplo, se seu arquivo de entrada for `text_x.csv`, o nome de saída será `text_x.csv.out`.

As guias a seguir mostram exemplos de código para SageMaker Python SDK, AWS SDK for Python (boto3) e o. AWS CLI

------
#### [ SageMaker Python SDK ]

O exemplo a seguir usa o **[SDK do SageMaker Python](https://sagemaker.readthedocs.io/en/stable/overview.html)** para fazer previsões em lotes.

```
from sagemaker import AutoML

sagemaker_session= sagemaker.session.Session()

job_name = 'test-auto-ml-job' # your autopilot job name
automl = AutoML.attach(auto_ml_job_name=job_name)
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

# call DescribeAutoMLJob API to get the best candidate definition
best_candidate = automl.describe_auto_ml_job()['BestCandidate']
best_candidate_name = best_candidate['CandidateName']

# create model
model = automl.create_model(name=best_candidate_name, 
               candidate=best_candidate)

# create transformer
transformer = model.transformer(instance_count=1, 
    instance_type='ml.m5.2xlarge',
    assemble_with='Line',
    output_path=output_path)

# do batch transform
transformer.transform(data=input_data,
                      split_type='Line',
                       content_type='text/csv',
                       wait=True)
```

------
#### [ AWS SDK for Python (boto3) ]

 O exemplo a seguir usa o **AWS SDK para Python (boto3)** para fazer predições em lotes.

```
import sagemaker 
import boto3

session = sagemaker.session.Session()

sm_client = boto3.client('sagemaker', region_name='us-west-2')
role = 'arn:aws:iam::1234567890:role/sagemaker-execution-role'
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName=job_name)['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

# create model
reponse = sm_client.create_model(
    ModelName = best_candidate_name,
    ExecutionRoleArn = role,
    Containers = best_candidate_containers 
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName=f'{best_candidate_name}-transform-job',
    ModelName=model_name,
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/csv",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m5.2xlarge',
        'InstanceCount': 1,
    },
)
```

O trabalho de inferência em lote retorna uma resposta no formato a seguir.

```
{'TransformJobArn': 'arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-transform-job',
 'ResponseMetadata': {'RequestId': '659f97fc-28c4-440b-b957-a49733f7c2f2',
  'HTTPStatusCode': 200,
  'HTTPHeaders': {'x-amzn-requestid': '659f97fc-28c4-440b-b957-a49733f7c2f2',
   'content-type': 'application/x-amz-json-1.1',
   'content-length': '96',
   'date': 'Thu, 11 Aug 2022 22:23:49 GMT'},
  'RetryAttempts': 0}}
```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenha as definições do candidato** usando o exemplo de código a seguir.

   ```
   aws sagemaker describe-auto-ml-job --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Crie o modelo** usando o exemplo de código a seguir.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/tuning/flicdf10v2-dpp0-xgb/test-job1E9-244-7490a1c0/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", 
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code" 
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \
   --region 'us-west-2'
   ```

1. **Crie o trabalho de transformação** usando o exemplo de código a seguir.

   ```
   aws sagemaker create-transform-job --transform-job-name 'test-tranform-job'\
    --model-name 'test-sagemaker-model'\
   --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "SplitType": "Line"
       }'\
   --transform-output '{
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line"
       }'\
   --transform-resources '{
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       }'\
   --region 'us-west-2'
   ```

1. **Verifique o progresso do trabalho de transformação** usando o exemplo de código a seguir. 

   ```
   aws sagemaker describe-transform-job --transform-job-name  'test-tranform-job' --region us-west-2
   ```

   A seguir está a resposta do trabalho de transformação.

   ```
   {
       "TransformJobName": "test-tranform-job",
       "TransformJobArn": "arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-tranform-job",
       "TransformJobStatus": "InProgress",
       "ModelName": "test-model",
       "TransformInput": {
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "CompressionType": "None",
           "SplitType": "Line"
       },
       "TransformOutput": {
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line",
           "KmsKeyId": ""
       },
       "TransformResources": {
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       },
       "CreationTime": 1662495635.679,
       "TransformStartTime": 1662495847.496,
       "DataProcessing": {
           "InputFilter": "$",
           "OutputFilter": "$",
           "JoinSource": "None"
       }
   }
   ```

   Depois de `TransformJobStatus` ser alterado para `Completed`, você pode verificar o resultado da inferência no `S3OutputPath`.

------

## Implementar modelos de contas diferentes
<a name="autopilot-deploy-models-batch-across-accounts"></a>

Para criar um trabalho de inferência em lote em uma conta diferente daquela em que o modelo foi gerado, siga as instruções em [Implemente modelos de contas diferentes](autopilot-deploy-models-realtime.md#autopilot-deploy-models-realtime-across-accounts). Em seguida, você pode criar modelos e transformar trabalhos seguindo o [Implemente usando SageMaker APIs](#autopilot-deploy-models-batch-steps).

# visualizar detalhes do modelo
<a name="autopilot-models-details"></a>

O Autopilot gera detalhes sobre os modelos candidatos que você pode obter. Esses detalhes incluem o seguinte:
+ Um gráfico dos valores agregados de SHAP que indicam a importância de cada atributo. Isso ajuda a explicar as predições do seu modelo.
+ As estatísticas resumidas de várias métricas de treinamento e validação, incluindo a métrica objetiva.
+ Uma lista dos hiperparâmetros usados para treinar e ajustar o modelo.

Para ver os detalhes do modelo depois de executar um trabalho de Autopilot, siga estas etapas:

1. Escolha o ícone **Início** (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/studio/icons/house.png)) no painel de navegação esquerdo para visualizar o menu de navegação de nível superior do **Amazon SageMaker Studio Classic**.

1. Selecione o cartão **AutoML** na área de trabalho principal. Isso abre uma nova guia do **Autopilot**.

1. Na seção **Nome**, selecione a trabalho do Autopilot que tem os detalhes que você deseja examinar. Isso abre uma nova guia de **trabalhos do Autopilot**.

1. O painel de **trabalhos do Autopilot** lista os valores métricos, incluindo a métrica **objetiva** de cada modelo em **Nome do modelo**. O **melhor modelo** está listado no topo da lista, em **Nome do modelo** e também é destacado na guia **Modelos**.

   1. Para revisar os detalhes do modelo, selecione o modelo em que você está interessado e selecione **Visualizar detalhes do modelo**. Isso abre uma nova guia **Detalhes do modelo**.

1. A guia **Detalhes do modelo** é dividida em quatro subseções.

   1. A parte superior da guia **Explicabilidade** contém um gráfico de valores de SHAP agregados que indicam a importância de cada atributo. A seguir estão os valores de métricas e hiperparâmetros desse modelo. 

   1. A guia **Performance** contém estatísticas de métricas e uma matriz de confusão. 

   1. A guia **Artefatos** contém informações sobre entradas, saídas e resultados intermediários do modelo.

   1. A guia **Rede** resume suas escolhas de isolamento e criptografia de rede.
**nota**  
A importância e as informações do atributo na guia **Performance** são geradas somente para o **melhor modelo**.

   Para obter mais informações sobre como os valores do SHAP ajudam a explicar as predições com base na importância do atributo, consulte o whitepaper [Entendendo a explicabilidade do modelo](https://pages.awscloud.com/rs/112-TZM-766/images/Amazon.AI.Fairness.and.Explainability.Whitepaper.pdf). Informações adicionais também estão disponíveis no [Explicabilidade do modelo](clarify-model-explainability.md) tópico do Guia do desenvolvedor de SageMaker IA. 

# Visualizar um relatório de desempenho do modelo do Autopilot
<a name="autopilot-model-insights"></a>

Um relatório de qualidade do modelo Amazon SageMaker AI (também chamado de relatório de desempenho) fornece insights e informações de qualidade para o melhor candidato a modelo gerado por um trabalho no AutoML. Isso inclui informações sobre os detalhes do trabalho, o tipo de problema do modelo, a função objetivo e outras informações relacionadas ao tipo de problema. Este guia mostra como visualizar graficamente as métricas de desempenho do Amazon SageMaker Autopilot ou como dados brutos em um arquivo JSON.

Por exemplo, em problemas de classificação, o relatório de qualidade do modelo inclui o seguinte:
+ Matriz de confusão
+ Área sob a curva característica de operação do receptor (AUC)
+ Informações para entender falsos positivos e falsos negativos
+ Compensações entre verdadeiros positivos e falsos positivos
+ Compensações entre precisão e recuperação

O Autopilot também fornece métricas de desempenho para todos os seus modelos candidatos. Essas métricas são calculadas usando todos os dados de treinamento e são usadas para estimar o desempenho do modelo. A área de trabalho principal inclui essas métricas por padrão. O tipo de métrica é determinado pelo tipo de problema que está sendo tratado.

Consulte a [documentação de referência SageMaker da API da Amazon](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) para ver a lista de métricas disponíveis suportadas pelo Autopilot.

Você pode classificar seus candidatos a modelo com a métrica relevante para ajudá-lo a selecionar e implantar o modelo que atenda às suas necessidades comerciais. Para obter definições dessas métricas, consulte o tópico [Métricas de candidatos do Autopilot](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics).

Para visualizar um relatório de desempenho de um trabalho do Autopilot, siga estas etapas:

1. Escolha o ícone **Início** (![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/studio/icons/house.png)) no painel de navegação esquerdo para visualizar o menu de navegação de nível superior do **Amazon SageMaker Studio Classic**.

1. Selecione o cartão **AutoML** na área de trabalho principal. Isso abre uma nova guia do **Autopilot**.

1. Na seção **Nome**, selecione a trabalho do Autopilot que tem os detalhes que você deseja examinar. Isso abre uma nova guia de **trabalhos do Autopilot**.

1. O painel de **trabalhos do Autopilot** lista os valores métricos, incluindo a métrica **objetiva** de cada modelo em **Nome do modelo**. O **melhor modelo** está listado no topo da lista, em **Nome do modelo** e é destacado na guia **Modelos**.

   1. Para revisar os detalhes do modelo, selecione o modelo em que você está interessado e selecione **Visualizar detalhes no modelo**. Isso abre uma nova guia **Detalhes do modelo**.

1. Escolha a guia **Performance** entre as guias **Explicabilidade** e **Artefatos**.

   1. Na seção superior direita da guia, selecione a seta para baixo no botão **Fazer o download de relatórios de desempenho**. 

   1. A seta para baixo fornece duas opções para visualizar as métricas de desempenho do Autopilot:

      1. Você pode baixar um PDF do relatório de desempenho para visualizar as métricas graficamente.

      1. Você pode ver as métricas como dados brutos e baixá-las como um arquivo JSON.

Para obter instruções sobre como criar e executar uma tarefa do AutoML no SageMaker Studio Classic, consulte. [Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md) 

O relatório de desempenho contém duas seções. O primeiro contém detalhes sobre o trabalho do Autopilot que produziu o modelo. A segunda seção contém um relatório de qualidade do modelo.

## Detalhes do trabalho do Autopilot
<a name="autopilot-model-insights-details-and-metrics-table"></a>

Esta primeira seção do relatório fornece algumas informações gerais sobre o trabalho do Autopilot que produziu o modelo. Esses trabalhos incluem as seguintes informações:
+ Nome do candidato do Autopilot
+ Nome do trabalho do Autopilot
+ Tipo de problema
+ Métrica objetiva
+ Direção de otimização

## Relatório de qualidade do modelo
<a name="autopilot-model-quality-report"></a>

As informações de qualidade do modelo são geradas pelos insights de modelo do Autopilot. O conteúdo do relatório gerado depende do tipo de problema abordado: regressão, classificação binária ou classificação multiclasse. O relatório especifica o número de linhas que foram incluídas no conjunto de dados da avaliação e a hora em que a avaliação ocorreu.

### Tabelas de métricas
<a name="autopilot-model-quality-report-metrics"></a>

A primeira parte do relatório de qualidade do modelo contém tabelas de métricas. Eles são apropriados para o tipo de problema abordado pelo modelo.

A imagem a seguir é um exemplo de uma tabela de métricas que o Autopilot gera para um problema de regressão. Ele mostra o nome, o valor e o desvio padrão da métrica.

![\[Exemplo de relatório de métricas de regressão do Amazon SageMaker Autopilot model Insights.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-regression-metrics.png)


A imagem a seguir é um exemplo de uma tabela de métricas gerada pelo Autopilot para um problema de classificação multiclasse. Ele mostra o nome, o valor e o desvio padrão da métrica.

![\[Exemplo de relatório de métricas de classificação multiclasse de insights do modelo Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Informações gráficas de performance do modelo
<a name="autopilot-model-quality-report-graphs"></a>

 A segunda parte do relatório de qualidade do modelo contém informações gráficas para ajudá-lo a avaliar o desempenho do modelo. O conteúdo desta seção depende do tipo de problema usado na modelagem.

#### A área sob a curva de característica de operação do receptor
<a name="autopilot-model-insights-auc-roc"></a>

A área abaixo da curva característica de operação do receptor representa a concessão entre as taxas de verdadeiro positivo e falso positivo. É uma métrica de precisão padrão do setor usada para modelos de classificação binária. A AUC (área sob a curva) mede a capacidade do modelo de prever uma pontuação maior de exemplos positivos em comparação com os exemplos negativos. A métrica AUC fornece uma medida agregada do desempenho do modelo em todos os limites de classificação possíveis.

A métrica de AUC retorna um valor decimal de 0 a 1. Os valores de AUC quase de 1 indicam que um modelo de machine learning é altamente preciso. Os valores próximos a 0,5 indicam que um modelo de ML não é melhor do que a adivinhação aleatória. Valores de AUC próximos a 0 indicam que o modelo aprendeu os padrões corretos, mas está fazendo predições tão imprecisas quanto possível. Valores próximos de zero podem indicar um problema com os dados. Para obter mais informações sobre a métrica AUC, consulte o artigo [Característica de operação do receptor](https://en.wikipedia.org/wiki/Receiver_operating_characteristic) na Wikipedia.

Veja a seguir um exemplo de uma área sob o gráfico da curva característica de operação do receptor para avaliar as predições feitas por um modelo de classificação binária. A linha fina tracejada representa a área sob a curva característica de operação do receptor que um modelo que classifica a no-better-than-random adivinhação pontuaria, com uma pontuação de AUC de 0,5. As curvas dos modelos de classificação mais precisos estão acima dessa linha de base aleatória, em que a taxa de verdadeiros positivos excede a taxa de falsos positivos. A área sob a curva característica de operação do receptor que representa o desempenho do modelo de classificação binária é a linha sólida mais espessa. 

![\[Exemplo de área do Amazon SageMaker Autopilot abaixo da curva característica de operação do receptor.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-receiver-operating-characteristic-curve.png)


Um resumo dos componentes do gráfico da **taxa de falsos positivos** (FPR) e da **taxa de positivos verdadeiros** (TPR) é definido da seguinte forma:
+ Previsões corretas
  + **Positivo verdadeiro** (PV): o valor previsto é 1 e o valor verdadeiro é 1.
  + **Negativo verdadeiro** (NV): o valor previsto é 0 e o valor verdadeiro é 0.
+ Previsões incorretas
  + **Falso positivo** (FP): o valor previsto é 1, mas o valor verdadeiro é 0.
  + **Falso negativo** (FN): o valor previsto é 0, mas o valor verdadeiro é 1.

A **taxa de falsos-positivos** (FPR) mede a fração de verdadeiros negativos (TN) que foram falsamente previstos como positivos (FP), sobre a soma de FP e TN. O intervalo é de 0 a 1. Um valor menor indica melhor precisão preditiva. 
+ FPR = FP/ (FP\$1TN)

A **taxa de positivos verdadeiros** (TPR) mede a fração de verdadeiros positivos que foram corretamente previstos como positivos (TP) sobre a soma de TP e falsos negativos (FN). O intervalo é de 0 a 1. Um valor maior indica melhor precisão preditiva.
+ TPR = TP/(TP\$1FN)

#### Matriz de confusão
<a name="autopilot-model-insights-confusion-matrix"></a>

Uma matriz de confusão fornece uma maneira de visualizar a precisão das predições feitas por um modelo para classificação binária e multiclasse para problemas diferentes. A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O número e a porcentagem de predições corretas e incorretas para os rótulos reais
+ O número e a porcentagem de predições precisas na diagonal do canto superior esquerdo ao canto inferior direito
+ O número e a porcentagem de predições imprecisas na diagonal do canto superior direito ao canto inferior esquerdo

As predições incorretas em uma matriz de confusão são os valores de confusão.

O diagrama a seguir é um exemplo de matriz de confusão para um problema de classificação multiclasse. Ela contém as seguintes informações:
+ O eixo vertical é dividido em duas linhas contendo rótulos reais verdadeiros e falsos.
+ O eixo horizontal é dividido em duas colunas contendo rótulos verdadeiros e falsos que foram previstos pelo modelo.
+ A barra de cores atribui um tom mais escuro a um número maior de amostras para indicar visualmente o número de valores que foram classificados em cada categoria.

Neste exemplo, o modelo previu corretamente 2817 valores falsos reais e 353 valores reais verdadeiros corretamente. O modelo previu incorretamente 130 valores reais verdadeiros como falsos e 33 valores reais falsos como verdadeiros. A diferença de tom indica que o conjunto de dados não está balanceado. O desequilíbrio ocorre porque há muito mais rótulos falsos reais do que rótulos verdadeiros.

![\[Exemplo de matriz de confusão binária do Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-binary.png)


O diagrama a seguir é um exemplo de matriz de confusão para um problema de classificação multiclasse. A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O eixo vertical é dividido em três linhas contendo três rótulos reais diferentes.
+ O eixo horizontal é dividido em três colunas contendo rótulos que foram previstos pelo modelo.
+ A barra de cores atribui um tom mais escuro a um número maior de amostras para indicar visualmente o número de valores que foram classificados em cada categoria.

No exemplo abaixo, o modelo previu corretamente os valores reais de 354 para o rótulo **f**, 1094 valores para o rótulo **i** e 852 valores para o rótulo **m.** A diferença de tom indica que o conjunto de dados não está balanceado porque há muito mais rótulos para o valor **i** do que para **f** ou **m**. 

![\[Exemplo de matriz de confusão multiclasse do Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


A matriz de confusão no relatório de qualidade do modelo fornecido pode acomodar no máximo 15 rótulos para tipos de problemas de classificação multiclasse. Se uma linha correspondente a um rótulo mostrar um valor `Nan`, isso significa que o conjunto de dados de validação usado para verificar as predições de modelo não contém dados com esse rótulo.

#### Curva de ganho
<a name="autopilot-model-insights-precision-gain-curve"></a>

Na classificação binária, uma curva de ganho prevê o benefício cumulativo de usar uma porcentagem do conjunto de dados para encontrar um rótulo positivo. O valor do ganho é calculado durante o treinamento dividindo o número cumulativo de observações positivas pelo número total de observações positivas nos dados, em cada decil. Se o modelo de classificação criado durante o treinamento for representativo dos dados não vistos, você poderá usar a curva de ganho para prever a porcentagem de dados que deve ser segmentada para obter uma porcentagem de rótulos positivos. Quanto maior a porcentagem do conjunto de dados usado, maior a porcentagem de rótulos positivos encontrados.

No gráfico de exemplo a seguir, a curva de ganho é a linha com inclinação variável. A linha reta é a porcentagem de rótulos positivos encontrados ao selecionar aleatoriamente uma porcentagem de dados do conjunto de dados. Ao atingir 20% do conjunto de dados, você esperaria encontrar mais de 40% dos rótulos positivos. Como exemplo, você pode considerar o uso de uma curva de ganho para determinar seus esforços em uma campanha de marketing. Usando nosso exemplo de curva de ganho, para 83% das pessoas em um bairro comprarem biscoitos, você enviaria um anúncio para cerca de 60% do bairro.

![\[Exemplo de curva de ganho do Amazon SageMaker Autopilot com porcentagem e valor de ganho.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-gain-curve.png)


#### Curva de elevação
<a name="autopilot-model-insights-lift-curve"></a>

Na classificação binária, a curva de elevação ilustra o aumento do uso de um modelo treinado para prever a probabilidade de encontrar um rótulo positivo em comparação com uma suposição aleatória. O valor de elevação é calculado durante o treinamento usando a razão entre o ganho percentual e a proporção de rótulos positivos em cada decil. Se o modelo criado durante o treinamento for representativo dos dados não vistos, use a curva de elevação para prever a vantagem de usar o modelo em vez de adivinhar aleatoriamente.

No gráfico de exemplo a seguir, a curva de elevação é a linha com inclinação variável. A linha reta é a curva de elevação associada à seleção aleatória da porcentagem correspondente do conjunto de dados. Ao atingir 40% do conjunto de dados com os rótulos de classificação do seu modelo, você esperaria encontrar cerca de 1,7 vezes o número de rótulos positivos que teria encontrado ao selecionar aleatoriamente 40% dos dados não vistos.

![\[Exemplo de curva de elevação do Amazon SageMaker Autopilot com porcentagem e valor de elevação.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-lift-curve.png)


#### Curva de recuperação de precisão
<a name="autopilot-model-insights-precision-recall-curve"></a>

A curva de recuperação de precisão representa a compensação entre precisão e recuperação para problemas de classificação binária. 

A **precisão** mede a fração de positivos reais que são previstos como positivos (TP) de todas as predições positivas (TP e falsos positivos). O intervalo é de 0 a 1. Um valor maior indica melhor precisão nos valores previstos.
+ Precisão = TP/(TP\$1FP)

**Recall** mede a fração de positivos reais que são previstos como positivos (PV) de todas as predições positivas (PP e falsos negativos). Isso também é conhecido como a sensibilidade ou como a taxa positiva verdadeira. O intervalo é de 0 a 1. Um valor maior indica uma melhor detecção de valores positivos da amostra. 
+ Recuperação = TP/(TP\$1FN)

O objetivo de um problema de classificação é rotular corretamente o maior número possível de elementos. Um sistema com alto recall, mas baixa precisão, retorna uma alta porcentagem de falsos positivos. 

O gráfico a seguir mostra um filtro de spam que marca todos os e-mails como spam. Tem alto recall, mas baixa precisão, porque o recall não mede falsos positivos. 

Dê mais peso ao recall do que à precisão se seu problema tiver uma penalidade baixa por valores falsos positivos, mas uma penalidade alta por perder um resultado verdadeiro positivo. Por exemplo, detectar uma colisão iminente em um veículo autônomo.

![\[Exemplo de Autopilot de sistema de alta recuperação e baixa precisão, modelando todas as amostras como positivas.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-high-recall-low-precision.PNG)


Por outro lado, um sistema com alta precisão, mas com baixa recuperação, retorna uma alta porcentagem de falsos negativos. Um filtro de spam que marca cada e-mail como desejável (não spam) tem alta precisão, mas baixa recuperação, pois a precisão não mede falsos negativos. 

Se seu problema tem uma penalidade baixa por valores falsos negativos, mas uma penalidade alta por perder resultados negativos verdadeiros, dê mais peso à precisão do que à recuperação. Por exemplo, sinalizar um filtro suspeito para uma auditoria fiscal.

O gráfico a seguir mostra um filtro de spam que tem alta precisão, mas baixa recuperação, porque a precisão não mede falsos negativos. 

![\[Exemplo de Autopilot de sistema de alta precisão e baixa recuperação, modelando todas as amostras como negativas.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-high-precision-low-recall.PNG)


Um modelo que faz predições com alta precisão e alta recuperação produz um grande número de resultados rotulados corretamente. Para obter mais informações, consulte o artigo [Precisão e recordar](https://en.wikipedia.org/wiki/Precision_and_recall) na Wikipédia.

#### Área sob a curva de recuperação de precisão (AUPRC)
<a name="autopilot-model-insights-area-under-precision-recall-curve"></a>

Para problemas de classificação binária, o Amazon SageMaker Autopilot inclui um gráfico da área sob a curva de recuperação de precisão (AUPRC). A métrica AUPRC fornece uma medida agregada do desempenho do modelo em todos os limites de classificação possíveis e usa precisão e recuperação. O AUPRC não leva em consideração o número de negativos verdadeiros. Portanto, pode ser útil avaliar o desempenho do modelo nos casos em que há um grande número de pontos negativos verdadeiros nos dados. Por exemplo, para modelar um gene contendo uma mutação rara.

O gráfico a seguir é um exemplo de um gráfico AUPRC. A precisão em seu valor mais alto é 1 e a recuperação está em 0. No canto inferior direito do gráfico, recall é o valor mais alto (1) e a precisão é 0. Entre esses dois pontos, a curva AUPRC ilustra a compensação entre precisão e recuperação em diferentes limites.

![\[A curva de recuperação de precisão representa a compensação entre precisão e recuperação em diferentes limites.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-binary-precision-recall.png)


#### Gráfico real em relação ao previsto
<a name="autopilot-model-insights-actual-vs-predicted-plot"></a>

O gráfico real em relação ao previsto mostra a diferença entre os valores reais e previstos do modelo. No gráfico de exemplo a seguir, a linha sólida é uma linha linear de melhor ajuste. Se o modelo fosse 100% preciso, cada ponto previsto seria igual ao ponto real correspondente e estaria nessa linha de melhor ajuste. A distância da linha de melhor ajuste é uma indicação visual do erro do modelo. Quanto maior a distância da linha de melhor ajuste, maior o erro do modelo.

![\[Exemplo com linha linear de melhor ajuste, gráfico diferente real e previsto e erro de modelo.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-actual-vs-predicted-plot.png)


#### Gráfico residual padronizado
<a name="autopilot-model-insights-standardized-residual"></a>

Um gráfico de resíduos padronizado incorpora os seguintes termos estatísticos:

**`residual`**  
Um resíduo (bruto) mostra a diferença entre os valores reais e os previstos pelo seu modelo. Quanto maior a diferença, maior o valor residual.

**`standard deviation`**  
O desvio padrão é uma medida de como os valores variam de um valor médio. Um desvio padrão alto indica que muitos valores são muito diferentes de seu valor médio. Um desvio padrão baixo indica que muitos valores estão próximos do valor médio.

**`standardized residual`**  
Um resíduo padronizado divide os resíduos brutos por seu desvio padrão. Os resíduos padronizados têm unidades de desvio padrão e são úteis para identificar valores discrepantes nos dados, independentemente da diferença na escala dos resíduos brutos. Se um resíduo padronizado for muito menor ou maior do que os outros resíduos padronizados, isso indica que o modelo não está se ajustando bem a essas observações.

O gráfico de resíduos padronizado mede a força da diferença entre os valores observados e esperados. O valor real previsto é exibido no eixo x. Um ponto com um valor maior que um valor absoluto de 3 é comumente considerado um valor atípico.

O gráfico de exemplo a seguir mostra que um grande número de resíduos padronizados está agrupado em torno de 0 no eixo horizontal. Os valores próximos de zero indicam que o modelo está se ajustando bem a esses pontos. Os pontos na parte superior e inferior do gráfico não são bem previstos pelo modelo.

![\[Exemplo de gráfico de resíduos padronizado do Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-standardized-residual.png)


#### Histograma residual
<a name="autopilot-model-insights-residual-histogram"></a>

Um histograma residual incorpora os seguintes termos estatísticos:

**`residual`**  
Um resíduo (bruto) mostra a diferença entre os valores reais e os previstos pelo seu modelo. Quanto maior a diferença, maior o valor residual.

**`standard deviation`**  
O desvio padrão é uma medida de quanto os valores variam de um valor médio. Um desvio padrão alto indica que muitos valores são muito diferentes de seu valor médio. Um desvio padrão baixo indica que muitos valores estão próximos do valor médio.

**`standardized residual`**  
Um resíduo padronizado divide os resíduos brutos por seu desvio padrão. Resíduos padronizados têm unidades de desvio padrão. Eles são úteis para identificar valores discrepantes nos dados, independentemente da diferença na escala dos resíduos brutos. Se um resíduo padronizado for muito menor ou maior do que os outros resíduos padronizados, isso indicaria que o modelo não está se ajustando bem a essas observações.

**`histogram`**  
Um histograma é um gráfico que mostra a frequência com que um valor ocorreu.

O histograma residual mostra a distribuição dos valores residuais padronizados. Um histograma distribuído em forma de sino e centrado em zero indica que o modelo não superestima ou subestima sistematicamente qualquer intervalo específico de valores alvo.

No gráfico a seguir, os valores residuais padronizados indicam que o modelo está se ajustando bem aos dados. Se o gráfico mostrasse valores distantes do valor central, isso indicaria que esses valores não se encaixam bem no modelo.

![\[Valor residual padronizado próximo de zero, indicando que o modelo se ajusta bem aos dados.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-residual-histogram.png)


# Cadernos do Autopilot gerados para gerenciar tarefas de AutoML
<a name="autopilot-automate-model-development-notebook-output"></a>

O Amazon SageMaker Autopilot gerencia as principais tarefas em um processo automático de aprendizado de máquina (AutoML) usando uma tarefa do AutoML. A tarefa do AutoML cria três relatórios baseados em cadernos que descrevem o plano que o Autopilot segue para gerar modelos candidatos.

Um modelo candidato consiste em um par (pipeline, algoritmo). Primeiro, há um caderno de **exploração de dados**, que descreve o que o Autopilot aprendeu sobre os dados fornecidos por você. Segundo, há um caderno de **definição de candidatos**, que usa as informações sobre os dados para gerar candidatos. Terceiro, um relatório de **insights do modelo** que pode ajudar a detalhar as características de desempenho do melhor modelo no leaderboard de um experimento do Autopilot.

**Topics**
+ [Relatório de exploração de dados do Autopilot](autopilot-data-exploration-report.md)
+ [Encontre e execute o caderno de definição do candidato](autopilot-candidate-generation-notebook.md)

Você pode executar esses notebooks no Amazon SageMaker AI ou localmente, se tiver instalado o SDK do [Amazon SageMaker Python](https://sagemaker.readthedocs.io/en/stable). Você pode compartilhar os cadernos como qualquer outro notebook SageMaker Studio Classic. Os cadernos são criados para você realizar experimentos. Por exemplo, é possível editar os seguintes itens nos cadernos:
+ Os pré-processadores usados nos dados 
+ A quantidade de execuções de otimização de hiperparâmetros (HPO) e seu paralelismo
+ Os algoritmos para tentar
+ Os tipos de instância usados para os trabalhos de HPO
+ Intervalos de hiperparâmetros

Modificações no caderno de definição de candidatos são incentivadas como uma ferramenta de aprendizado. Com essa capacidade, você aprende como as decisões tomadas durante o processo de machine learning impactam seus resultados. 

**nota**  
Ao executar os cadernos em sua instância padrão, você incorre em custos de linha de base. No entanto, quando você executa trabalhos de HPO no caderno do candidato, esses trabalhos usam recursos de computação adicionais que geram custos adicionais. 

# Relatório de exploração de dados do Autopilot
<a name="autopilot-data-exploration-report"></a>

O Amazon SageMaker Autopilot limpa e pré-processa automaticamente seu conjunto de dados. Dados de alta qualidade melhoram a eficiência do machine learning e produzem modelos que fazem predições mais precisas. 

Há problemas com conjuntos de dados fornecidos pelo cliente que não podem ser corrigidos automaticamente sem o benefício de algum conhecimento do domínio. Grandes valores discrepantes na coluna de destino para problemas de regressão, por exemplo, podem causar predições abaixo do ideal para valores não atípicos. Valores atípicos podem precisar ser removidos, dependendo do objetivo do modelo. Se uma coluna de destino for incluída acidentalmente como uma dos atributos de entrada, o modelo final será validado adequadamente, mas terá pouco valor para predições futuras. 

Para ajudar os clientes a descobrir esse tipo de problema, o Autopilot fornece um relatório de exploração de dados que contém informações sobre possíveis problemas com seus dados. O relatório também sugere como lidar com os problemas.

Um caderno de exploração de dados contendo o relatório é gerado para cada trabalho do Autopilot. O relatório é armazenado em um bucket do Amazon S3 e pode ser acessado a partir do seu caminho de saída. O caminho do relatório de exploração de dados geralmente segue o padrão a seguir.

```
[s3 output path]/[name of the automl job]/sagemaker-automl-candidates/[name of processing job used for data analysis]/notebooks/SageMaker AIAutopilotDataExplorationNotebook.ipynb
```

A localização do notebook de exploração de dados pode ser obtida na API do Autopilot usando a resposta da [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)operação, que é armazenada em [DataExplorationNotebookLocation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html#sagemaker-Type-AutoMLJobArtifacts-DataExplorationNotebookLocation). 

Ao executar o Autopilot a partir do SageMaker Studio Classic, você pode abrir o relatório de exploração de dados usando as seguintes etapas:

1. Escolha o ícone **Início** no *painel ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/studio/icons/house.png) de navegação esquerdo* para ver o menu de navegação de nível superior do **Amazon SageMaker Studio Classic**.

1. Selecione o cartão **AutoML** na área de trabalho principal. Isso abre uma nova guia do **Autopilot**.

1. Na seção **Nome**, selecione o job do Autopilot que possui o caderno de exploração de dados que você deseja examinar. Isso abre uma nova guia de **trabalhos do Autopilot**.

1. Selecione **Abrir caderno de exploração de dados** na seção superior direita da guia de **tarefas do Autopilot**.

O relatório de exploração de dados é gerado a partir de seus dados antes do início do processo de treinamento. Isso permite que você interrompa os trabalhos do Autopilot que podem resultar em resultados sem sentido. Da mesma forma, você pode lidar com quaisquer problemas ou melhorias em seu conjunto de dados antes de executar novamente o Autopilot. Dessa forma, você pode utilizar sua expertise de domínio para aprimorar manualmente a qualidade dos dados antes de treinar um modelo em um conjunto de dados mais bem curado.

O relatório de dados contém apenas markdown estática e pode ser aberto em qualquer ambiente Jupyter. O caderno que contém o relatório pode ser convertido em outros formatos, como PDF ou HTML. Para obter mais informações sobre conversões, consulte [Usando o script nbconvert para converter cadernos Jupyter](https://nbconvert.readthedocs.io/en/latest/usage.html ) em outros formatos.

**Topics**
+ [Resumo do conjunto de dados](#autopilot-data-exploration-report-dataset-summary)
+ [Análise do destino](#autopilot-data-exploration-report-target-analysis)
+ [Exemplo de dados](#autopilot-data-exploration-report-data-sample)
+ [Linhas duplicadas](#autopilot-data-exploration-report-duplicate-rows)
+ [Correlações entre colunas](#autopilot-data-exploration-report-cross-column-correlations)
+ [Linhas anômalas](#autopilot-data-exploration-report-cross-anomolous-rows)
+ [Valores ausentes, cardinalidade e estatística descritiva](#autopilot-data-exploration-report-description-statistics-and-values)

## Resumo do conjunto de dados
<a name="autopilot-data-exploration-report-dataset-summary"></a>

Este **resumo do conjunto de dados** fornece as principais estatísticas que caracterizam seu conjunto de dados, incluindo o número de linhas, colunas, porcentagem de linhas duplicadas e valores de destino ausentes. O objetivo é fornecer um alerta rápido quando houver um problema com seu conjunto de dados que o Amazon SageMaker Autopilot detectou e que provavelmente exigirá sua intervenção. As informações são apresentadas como avisos classificados como de gravidade “alta” ou “baixa”. A classificação depende do nível de confiança de que o problema afetará negativamente o desempenho do modelo.

As informações de gravidade alta e baixa aparecem no resumo como pop-ups. Para a maioria das informações, são oferecidas recomendações sobre como confirmar se há um problema com o conjunto de dados que requer sua atenção. Também são fornecidas propostas sobre como resolver os problemas.

O Autopilot fornece estatísticas adicionais sobre valores ausentes ou inválidos no destino em nosso conjunto de dados para ajudar a detectar outros problemas que podem não ser capturados pelos insights de alta gravidade. Um número inesperado de colunas de um determinado tipo pode indicar que algumas colunas que você deseja usar podem estar ausentes do conjunto de dados. Também pode indicar que houve um problema com a forma como os dados foram preparados ou armazenados. A correção desses problemas de dados trazidos à sua atenção pelo Autopilot pode melhorar o desempenho dos modelos de machine learning treinados em seus dados. 

Os insights de alta gravidade são mostrados na seção de resumo e em outras seções relevantes do relatório. Geralmente, são fornecidos exemplos de insights de gravidade baixa e alta, dependendo da seção do relatório de dados.

## Análise do destino
<a name="autopilot-data-exploration-report-target-analysis"></a>

Vários insights de gravidade baixa e alta são mostrados nesta seção relacionados à distribuição de valores na coluna de destino. Verifique se a coluna de destino contém os valores corretos. Valores incorretos na coluna de destino provavelmente resultarão em um modelo de machine learning que não atende à finalidade comercial pretendida. Vários insights de dados de gravidade baixa e alta estão presentes nesta seção. Aqui estão alguns exemplos:
+ **Valores de destino atípicos** - Distribuição de destinos distorcida ou incomum para regressão, como destinos com cauda pesada.
+ **Cardinalidade destino alta ou baixa** - Número infrequente de rótulos de classe ou um grande número de classes exclusivas para classificação.

Para os tipos de problemas de regressão e classificação, valores inválidos, como infinito numérico, `NaN` ou espaço vazio na coluna de destino, aparecem. Dependendo do tipo de problema, diferentes estatísticas do conjunto de dados são apresentadas. Uma distribuição dos valores da coluna de destino para um problema de regressão permite verificar se a distribuição é a esperada. 

A captura de tela a seguir mostra um relatório de dados do Autopilot, que inclui estatísticas como média, mediana, mínimo, máximo e porcentagem de valores atípicos em seu conjunto de dados. A captura de tela também inclui um histograma mostrando a distribuição dos rótulos na coluna de destino. O histograma mostra os **valores da coluna de destino** no eixo horizontal e a **contagem** no eixo vertical. Uma caixa destaca a seção **Porcentagem de valores atípicos** da captura de tela para indicar onde essa estatística aparece.

![\[Relatório de dados do Autopilot sobre a distribuição dos valores da coluna de destino.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis.png)


Várias estatísticas são mostradas em relação aos valores de destino e sua distribuição. Se algum dos valores atípicos, valores inválidos ou porcentagens ausentes for maior que zero, esses valores serão exibidos para que você possa investigar por que seus dados contêm valores de destino inutilizáveis. Alguns valores de destino inutilizáveis são destacados como um aviso de visão de gravidade baixa. 

Na captura de tela a seguir, um símbolo ` foi adicionado acidentalmente à coluna de destino, o que impediu que o valor numérico do destino fosse analisado. Uma **visão de gravidade baixa: aparece o aviso “Valores de destino inválidos”.** O aviso neste exemplo indica que "0,14% dos rótulos na coluna de destino não puderam ser convertidos em valores numéricos. Os valores não numéricos mais comuns são: ["-3.8e-05", "-9-05", "-4.7e-05", "-1.4999999999999999e-05", "-4.3e-05"]. Isso geralmente indica que há problemas com a coleta ou o processamento de dados. O Amazon SageMaker Autopilot ignora todas as observações com uma etiqueta de destino inválida.”

![\[Os dados do Autopilot relatam um aviso de gravidade baixa sobre valores de destino inválidos.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis-invalid-target-values.png)


O Autopilot também fornece um histograma mostrando a distribuição dos rótulos para classificação. 

A captura de tela a seguir mostra um exemplo de estatísticas fornecidas para sua coluna de destino, incluindo o número de classes, valores ausentes ou não válidos. Um histograma com **Rótulo de destino** no eixo horizontal e **Frequência** no eixo vertical mostra a distribuição de cada categoria de rótulo.

![\[Os dados do Autopilot relatam alta cardinalidade para classificação.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-target-analysis-invalid-classification.png)


**nota**  
Você pode encontrar definições de todos os termos apresentados nesta e em outras seções na seção **Definições** na parte inferior do caderno de relatórios.

## Exemplo de dados
<a name="autopilot-data-exploration-report-data-sample"></a>

O Autopilot apresenta uma amostra real de seus dados para ajudá-lo a identificar problemas com seu conjunto de dados. A tabela de amostra rola horizontalmente. Inspecione os dados da amostra para verificar se todas as colunas necessárias estão presentes no conjunto de dados. 

O Autopilot também calcula uma medida do poder de predição, que pode ser usada para identificar uma relação linear ou não linear entre um atributo e a variável destino. Um valor de `0` indica que o atributo não tem valor preditivo na previsão da variável destino. Um valor de `1` indica o maior poder preditivo para a variável destino. Para obter mais informações sobre poder preditivo, consulte a seção **Definições**. 

**nota**  
Não é recomendável usar o poder de predição como substituto da importância do atributo. Use-o somente se tiver certeza de que o poder de predição é uma medida apropriada para seu caso de uso.

A captura de tela a seguir mostra um exemplo de amostra de dados. A linha superior contém o poder de predição de cada coluna em seu conjunto de dados. A segunda linha contém o tipo de dados de coluna. As linhas subsequentes contêm os rótulos. As colunas contêm a coluna de destino seguida por cada coluna de atributo. Cada coluna de atributo tem um poder de predição associado, destacado nesta captura de tela, com uma caixa. Neste exemplo, a coluna que contém o atributo `x51` tem um poder preditivo de `0.68` para a variável `y` de destino. O atributo `x55` é um pouco menos preditivo com um poder de predição de `0.59`.

![\[Poder de predição da amostra de dados do relatório de dados do Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-sample-prediction.png)


## Linhas duplicadas
<a name="autopilot-data-exploration-report-duplicate-rows"></a>

Se houver linhas duplicadas no conjunto de dados, o Amazon SageMaker Autopilot exibirá uma amostra delas.

**nota**  
Não é recomendável balancear um conjunto de dados aumentando a amostragem antes de fornecê-lo ao Autopilot. Isso pode resultar em pontuações de validação imprecisas para os modelos treinados pelo Autopilot, e os modelos produzidos podem ficar inutilizáveis.

## Correlações entre colunas
<a name="autopilot-data-exploration-report-cross-column-correlations"></a>

O Autopilot usa o coeficiente de correlação de Pearson, uma medida de correlação linear entre dois atributos, para preencher uma matriz de correlação. Na matriz de correlação, os atributos numéricos são plotadas nos eixos horizontal e vertical, com o coeficiente de correlação de Pearson traçado em suas interseções. Quanto maior a correlação entre dois atributos, maior o coeficiente, com um valor máximo de `|1|`.
+ Um valor de `-1` indica que os atributos estão perfeitamente correlacionados negativamente.
+ Um valor de `1`, que ocorre quando um atributo está correlacionado consigo mesmo, indica uma correlação positiva perfeita.

Você pode usar as informações na matriz de correlação para remover atributos altamente correlacionados. Um número menor de atributos reduz as chances de sobreajuste de um modelo e pode reduzir os custos de produção de duas maneiras. Isso diminui o runtime do Autopilot necessário e, para alguns aplicações, pode tornar os procedimentos de coleta de dados mais baratos. 

A captura de tela a seguir mostra um exemplo de uma matriz de correlação entre `7` atributos. Cada atributo é exibido em uma matriz nos eixos horizontal e vertical. O coeficiente de correlação de Pearson é exibido na interseção entre dois atributos. Cada interseção de atributos tem um tom de cor associado a ela. Quanto maior a correlação, mais escuro é o tom. Os tons mais escuros ocupam a diagonal da matriz, onde cada atributo está correlacionado consigo mesmo, representando uma correlação perfeita.

![\[Matriz de correlação cruzada de dados do relatório de dados do Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-cross-column-statistics.png)


## Linhas anômalas
<a name="autopilot-data-exploration-report-cross-anomolous-rows"></a>

O Amazon SageMaker Autopilot detecta quais linhas em seu conjunto de dados podem ser anômalas. Em seguida, atribui uma pontuação de anomalia a cada linha. As linhas com pontuações negativas de anomalia são consideradas anômalas. 

A captura de tela a seguir mostra a saída de uma análise do Autopilot para linhas contendo anomalias. Uma coluna contendo uma pontuação anômala aparece ao lado das colunas do conjunto de dados de cada linha.

![\[Conjunto de dados do Autopilot com linhas anômalas, mostrando pontuações negativas de anomalias.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-anomalous-rows.png)


## Valores ausentes, cardinalidade e estatística descritiva
<a name="autopilot-data-exploration-report-description-statistics-and-values"></a>

O Amazon SageMaker Autopilot examina e relata as propriedades das colunas individuais do seu conjunto de dados. Em cada seção do relatório de dados que apresenta essa análise, o conteúdo é organizado em ordem. Isso é para que você possa verificar primeiro os valores mais “suspeitos”. Usando essas estatísticas, você pode melhorar o conteúdo de colunas individuais e melhorar a qualidade do modelo produzido pelo Autopilot.

O Autopilot calcula várias estatísticas sobre os valores categóricos nas colunas que os contêm. Isso inclui o número de entradas exclusivas e, para texto, o número de palavras exclusivas.

O Autopilot calcula várias estatísticas padrão sobre os valores numéricos nas colunas que os contêm. A imagem a seguir mostra essas estatísticas, incluindo a média, a mediana, os valores mínimo e máximo e as porcentagens dos tipos numéricos e dos valores discrepantes. 

![\[Os dados do Autopilot relatam estatísticas em colunas com valores numéricos.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-data-report-data-descriptive-statistics.png)


# Encontre e execute o caderno de definição do candidato
<a name="autopilot-candidate-generation-notebook"></a>

O caderno de definição de candidatos contém cada etapa de pré-processamento sugerida, o algoritmo e os intervalos de hiperparâmetros. 

Você pode escolher qual candidato treinar e ajustar de duas maneiras. A primeira, executando seções do caderno. A segunda, executando o caderno inteiro para otimizar todos os candidatos e identificar o melhor candidato. Se você executar o caderno inteiro, somente o melhor candidato será exibido após a conclusão do trabalho. 

Para executar o Autopilot a partir do SageMaker Studio Classic, abra o caderno de definição do candidato seguindo estas etapas:

1. Escolha o ícone **Início** no painel ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/studio/icons/house.png) de navegação esquerdo para ver o menu de navegação de nível superior do **Amazon SageMaker Studio Classic**.

1. Selecione o cartão **AutoML** na área de trabalho principal. Isso abre uma nova guia do **Autopilot**.

1. Na seção **Nome**, selecione o trabalho do Autopilot que possui o caderno de exploração de dados que você deseja examinar. Isso abre uma nova guia de **trabalhos do Autopilot**.

1. Escolha **Abrir caderno de geração de candidatos** na seção superior direita da guia de **tarefas do Autopilot**. Isso abre uma nova prévia somente para leitura do **Amazon SageMaker Autopilot Candidate** Definition Notebook.

Para executar o caderno de definição de candidato, siga estas etapas:

1. Escolha **Importar caderno** no canto superior direito da guia **Amazon SageMaker Autopilot Candidate Definition Notebook**. Isso abre uma guia para configurar um novo ambiente de caderno para executar o caderno.

1. Selecione uma SageMaker **imagem** existente ou use uma **imagem personalizada**. 

1. Selecione um **kernel**, um **tipo de instância** e um script de **inicialização** opcional.

Agora você pode executar o caderno nesse novo ambiente.

# Configurar a saída de inferência em contêineres gerados
<a name="autopilot-automate-model-development-container-output"></a>

O Autopilot gera uma lista [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerDefinition.html) ordenada. Isso pode ser usado para criar um modelo a ser implantado em um pipeline de machine learning. Esse modelo pode ser usado para hospedagem e inferência online. 

Os clientes podem listar as definições de contêiner de inferência com a API [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidateForAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidateForAutoMLJob.html). A lista de definições de contêiner de inferência que representam o melhor candidato também está disponível na resposta [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html).

## Definições de contêiner de inferência para tipos de problemas de regressão e classificação
<a name="autopilot-problem-type-container-output"></a>

O Autopilot gera contêineres de inferência específicos para o [modo de treinamento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode) e o [tipo de problema](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-datasets-problem-types.html#autopilot-problem-types) do trabalho.

### Definições de contêiner para o modo de otimização de hiperparâmetros (HPO)
<a name="autopilot-problem-type-container-output-hpo"></a>
+ **Regressão**: o HPO gera dois contêineres:

  1. Um contêiner de engenharia de atributos que transforma os atributos originais em atributos nos quais os algoritmos de regressão podem treinar.

  1. Um contêiner de algoritmo que transforma atributos e gera uma pontuação de regressão para o conjunto de dados.
+ **Classificação**: O HPO gera três contêineres:

  1. Um contêiner de engenharia de atributos que transforma os atributos originais em atributos nos quais os algoritmos de classificação podem treinar.

  1. Um contêiner de algoritmo que gera o `predicted_label` com a maior probabilidade. Esse contêiner também pode produzir as várias probabilidades associadas aos resultados da classificação na resposta de inferência.

  1. Um contêiner de engenharia de atributos que realiza o pós-processamento da predição do algoritmo. Por exemplo, ele pode realizar uma transformação inversa na etiqueta prevista e alterá-la para a etiqueta original. 

### Definições de contêiner para o modo de agrupamento
<a name="autopilot-problem-type-container-output-ensemble"></a>

No modo de agrupamento, os tipos de problemas de regressão e classificação têm apenas um contêiner de inferência. Esse contêiner de inferência transforma os atributos e gera as predições com base no tipo de problema. 

## Respostas de inferência por tipo de problema
<a name="autopilot-problem-type-inference-response"></a>

### Respostas de inferência para modelos de classificação
<a name="autopilot-problem-type-inference-response-classification"></a>

Para contêineres de inferência de classificação, você pode selecionar o conteúdo da resposta de inferência usando quatro chaves predefinidas:
+ `predicted_label`: O rótulo com a maior probabilidade de prever o rótulo correto, conforme determinado pelo Autopilot.
+ `probability`: 
  + **Modelos HPO:** a probabilidade da `True` classe para classificação binária. A probabilidade de `predicted_label` para a classificação multiclasse.
  + **Modelos de conjunto:** a probabilidade de `predicted_label` para a classificação binária e multiclasse.
+ `probabilities`: A lista de probabilidades para todas as classes correspondentes.
+ `labels`: A lista de todos os rótulos.

Por exemplo, para um problema de classificação binária, se você passar as chaves de resposta de inferência `['predicted_label', 'probability', 'probabilities', 'labels']` e a resposta de saída aparecer como `[1, 0.1, "[0.9, 0.1]", "['1', '0']"]`, interprete-a da seguinte forma:

1. `predicted_label` é igual a `1` porque o rótulo "1" tem uma probabilidade maior (`0.9` neste caso).

1. Para modelos HPO, `probability` é igual a `0.1` qual é a probabilidade da `positive_class` (`0` neste caso) selecionada pelo Autopilot.

   Para modelos de conjunto, é `probability` igual a `0.9` qual é a probabilidade do `predicted_label`.

1. `probabilities` lista o `probability` de cada etiqueta em `labels`.

1. `labels` são os rótulos exclusivos no conjunto de dados, em que o segundo rótulo (“0” nesse caso) é o `positive_class` selecionado pelo Autopilot.

Por padrão, os contêineres de inferência são configurados para gerar somente o `predicted_label`. Para selecionar conteúdo adicional de inferência, você pode atualizar o `inference_response_keys` parâmetro para incluir até essas três variáveis de ambiente:
+ `SAGEMAKER_INFERENCE_SUPPORTED`: isso é configurado para fornecer dicas sobre o conteúdo que cada contêiner é compatível com.
+ `SAGEMAKER_INFERENCE_INPUT`: isso deve ser definido para as chaves que o contêiner espera na carga útil de entrada.
+ `SAGEMAKER_INFERENCE_OUTPUT`: deve ser preenchido com o conjunto de chaves que o contêiner gera.

### Respostas de inferência para modelos de classificação no modo HPO
<a name="autopilot-problem-type-inference-response-classification-hpo"></a>

Esta seção mostra como configurar a resposta de inferência de modelos de classificação usando o modo de otimização de hiperparâmetros (HPO).

Para escolher o conteúdo da resposta de inferência no modo HPO: adicione as `SAGEMAKER_INFERENCE_INPUT` variáveis `SAGEMAKER_INFERENCE_OUTPUT` e ao segundo e terceiro contêineres que são gerados no modo HPO para problemas de classificação.

As chaves compatíveis com o segundo contêiner (algoritmo) são predicted\$1label, probability e probabilities. Observe que `labels` isso não foi adicionado deliberadamente `SAGEMAKER_INFERENCE_SUPPORTED`.

As chaves compatíveis com o terceiro contêiner do modelo de classificação são `predicted_label`, `labels`, `probability` e `probabilities`. Portanto, o `SAGEMAKER_INFERENCE_SUPPORTED` ambiente inclui os nomes dessas chaves.

O exemplo de código a seguir atualiza a definição dos contêineres de inferência para receber `predicted_label` e `probability`.

```
containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label, probability'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
```

O exemplo de código a seguir atualiza a definição dos contêineres de inferência para receber `predicted_label`, `probabilities` e `labels`. Não passe o `labels` para o segundo contêiner (o contêiner do algoritmo), pois ele é gerado pelo terceiro contêiner de forma independente. 

```
containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label,probabilities'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label,probabilities'})
containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probabilities,labels'})
```

As seções dobráveis a seguir fornecem exemplos de código para AWS SDK para Python (Boto3) e para o SageMaker SDK para Python. Cada seção mostra como selecionar o conteúdo das respostas de inferência no modo HPO para o respectivo exemplo de código.

#### AWS SDK para Python (Boto3)
<a name="autopilot-problem-type-inference-response-classification-hpo-boto3"></a>

```
import boto3

sm_client = boto3.client('sagemaker', region_name='<Region>')

role = '<IAM role>'
input_data = '<S3 input uri>'
output_path = '<S3 output uri>'

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName='<AutoML Job Name>')['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

best_candidate_containers[1]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
best_candidate_containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_INPUT': 'predicted_label, probability'})
best_candidate_containers[2]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})

# create model
reponse = sm_client.create_model(
    ModelName = '<Model Name>',
    ExecutionRoleArn = role,
    Containers = best_candidate_containers
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName='<Transform Job Name>',
    ModelName='<Model Name>',
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/CSV",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m4.xlarge',
        'InstanceCount': 1,
    },
)
```

#### SageMaker SDK para Python
<a name="autopilot-problem-type-inference-response-classification-hpo-sdk"></a>

```
from sagemaker import AutoML

aml = AutoML.attach(auto_ml_job_name='<AutoML Job Name>')
aml_best_model = aml.create_model(name='<Model Name>',
                                  candidate=None,
                                  inference_response_keys**=['probabilities', 'labels'])

aml_transformer = aml_best_model.transformer(accept='text/csv',
                                            assemble_with='Line',
                                            instance_type='ml.m5.xlarge',
                                            instance_count=1,)

aml_transformer.transform('<S3 input uri>',
                          content_type='text/csv',
                          split_type='Line',
                          job_name='<Transform Job Name>',
                          wait=True)
```

### Respostas de inferência para modelos de classificação no modo de agrupamento
<a name="autopilot-problem-type-inference-response-classification-ensemble"></a>

Esta seção mostra como configurar a resposta de inferência de modelos de classificação usando o modo de agrupamento. 

No **modo de agrupamento**, para escolher o conteúdo da resposta de inferência, atualize a variável de ambiente `SAGEMAKER_INFERENCE_OUTPUT`.

As chaves compatíveis com o contêiner do modelo de classificação são `predicted_label`, `labels`, `probability` e `probabilities`. Essas chaves estão incluídas no `SAGEMAKER_INFERENCE_SUPPORTED` ambiente.

Consulte o exemplo de código a seguir para atualizar a definição dos contêineres de inferência para receber `predicted_label` e `probability`.

```
containers[0]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
```

A seção flexível a seguir fornece um exemplo de código para selecionar o conteúdo das respostas de inferência no modo de agrupamento. O exemplo usa AWS SDK para Python (Boto3).

#### AWS SDK para Python (Boto3)
<a name="autopilot-problem-type-inference-response-classification-ensembling-boto3"></a>

```
import boto3
sm_client = boto3.client('sagemaker', region_name='<Region>')

role = '<IAM role>'
input_data = '<S3 input uri>'
output_path = '<S3 output uri>' 

best_candidate = sm_client.describe_auto_ml_job(AutoMLJobName='<AutoML Job Name>')['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

*best_candidate_containers[0]['Environment'].update({'SAGEMAKER_INFERENCE_OUTPUT': 'predicted_label, probability'})
*
# create model
reponse = sm_client.create_model(
    ModelName = '<Model Name>',
    ExecutionRoleArn = role,
    Containers = best_candidate_containers
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName='<Transform Job Name>',
    ModelName='<Model Name>',
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/CSV",
        'SplitType': 'Line'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m4.xlarge',
        'InstanceCount': 1,
    },
)
```

A seção flexível a seguir fornece um exemplo de código idêntico ao exemplo do SageMaker SDK para Python para HPO. Está incluído para a sua conveniência.

#### SageMaker SDK para Python
<a name="autopilot-problem-type-inference-response-classification-ensembling-sdk"></a>

O exemplo de código HPO a seguir usa o SageMaker SDK para Python.

```
from sagemaker import AutoML

aml = AutoML.attach(auto_ml_job_name='<AutoML Job Name>')
aml_best_model = aml.create_model(name='<Model Name>',
                                  candidate=None,
                                  *inference_response_keys**=['probabilities', 'labels'])*

aml_transformer = aml_best_model.transformer(accept='text/csv',
                                            assemble_with='Line',
                                            instance_type='ml.m5.xlarge',
                                            instance_count=1,)

aml_transformer.transform('<S3 input uri>',
                          content_type='text/csv',
                          split_type='Line',
                          job_name='<Transform Job Name>',
                          wait=True)
```

# Crie um trabalho de classificação de imagens usando a API AutoML
<a name="autopilot-create-experiment-image-classification"></a>

As instruções a seguir mostram como criar um trabalho do Amazon SageMaker Autopilot como um experimento piloto para tipos de problemas de classificação de imagens usando o SageMaker [API Reference](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).

**nota**  
Tarefas como classificação de texto e imagem, previsão de séries temporais e ajuste de grandes modelos de linguagem estão disponíveis exclusivamente na versão 2 da [API REST do AutoML](autopilot-reference.md). Se sua linguagem preferida for Python, você pode se referir diretamente ao [AWS SDK para Python (Boto3) MLV2 ](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)[objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.  
Os usuários que preferem a conveniência de uma interface de usuário podem usar o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acessar modelos pré-treinados e modelos básicos de IA generativos, ou criar modelos personalizados para textos específicos, classificação de imagens, necessidades de previsão ou IA generativa.

Você pode criar um experimento de classificação de imagens do Autopilot programaticamente chamando a ação da [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API em qualquer idioma suportado pelo Amazon SageMaker Autopilot ou pelo. AWS CLI

Para obter informações sobre como essa ação da API se traduz em uma função no idioma de sua escolha, consulte a seção [Consulte também](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` e escolha um SDK. Como exemplo, para usuários do Python, veja a sintaxe completa da solicitação de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` em AWS SDK para Python (Boto3).

Veja a seguir uma coleção de parâmetros da solicitação de entrada obrigatórios e opcionais para a ação da API `CreateAutoMLJobV2` usada na classificação de imagens.

## Parâmetros necessários
<a name="image-classification-api-required-params"></a>

Quando chamar `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)`, para criar um experimento de Autopilot para classificação de imagens, forneça os seguintes valores:
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar o nome do seu trabalho.
+ Pelo menos uma `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` em `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar sua fonte de dados.
+ Um `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` do tipo `[ImageClassificationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html)`. 
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN do perfil usada para acessar seus dados.

Todos os outros parâmetros são opcionais.

## Parâmetros opcionais
<a name="image-classification-api-optional-params"></a>

As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para o seu trabalho AutoML de classificação de imagens.

### Como especificar os conjuntos de dados de treinamento e validação de um trabalho do AutoML
<a name="image-classification-data-training-or-validation"></a>

Você pode fornecer seu próprio conjunto de dados da validação e taxa de divisão de dados personalizada, ou deixar o Autopilot dividir o conjunto de dados automaticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte o parâmetro obrigatório [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tem um`ChannelType`, que pode ser definido como um `training` ou `validation` valores que especificam como os dados devem ser usados ao criar um modelo de aprendizado de máquina. 

Pelo menos uma fonte de dados deve ser fornecida e no máximo duas fontes de dados são permitidas: uma para dados de treinamento e outra para dados de validação. A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados. 

A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados.
+ Se você tiver apenas **uma fonte de dados**, a será `ChannelType` definida como `training` padrão e deverá ter esse valor.
  + Se o valor `ValidationFraction` em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) não estiver definido, 0,2 (20%) dos dados dessa fonte serão usados para a validação por padrão. 
  + Se `ValidationFraction` for definido como um valor entre 0 e 1, o conjunto de dados será dividido com base no valor especificado, em que o valor especifica a fração do conjunto de dados usada para validação.
+ Se você tiver **duas fontes de dados**, a `ChannelType` de um dos objetos `AutoMLJobChannel` deverá ser definida como `training`, o valor padrão. A `ChannelType` da outra fonte de dados deve ser definida como `validation`. As duas fontes de dados devem ter o mesmo formato, CSV ou Parquet, e o mesmo esquema. Nesse caso, você não deve definir o valor para o `ValidationFraction` porque todos os dados de cada fonte são usados para treinamento ou validação. Definir esse valor causa um erro.

### Como especificar a configuração automática de implantação do modelo para um trabalho do AutoML
<a name="image-classification-auto-model-deployment"></a>

Para habilitar a implantação automática para o melhor candidato a modelo de um trabalho do AutoML, inclua um `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` na solicitação de trabalho do AutoML. Isso permitirá a implantação do melhor modelo em um endpoint de SageMaker IA. Abaixo estão as configurações disponíveis para personalização.
+ Para permitir que o Autopilot gere o nome do endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` como `True`.
+ Para fornecer seu próprio nome para o endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

# Formato de conjuntos de dados e métrica objetiva para classificação de imagens
<a name="image-classification-data-format-and-metric"></a>

Nesta seção, aprendemos sobre os formatos disponíveis para conjuntos de dados usados na classificação de imagens, bem como a métrica usada para avaliar a qualidade preditiva dos candidatos ao modelo de machine learning. As métricas calculadas para candidatos são especificadas usando uma variedade de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Formatos de conjuntos de dados
<a name="image-classification-data-format"></a>

O Autopilot oferece apoio aos formatos de imagem .png, .jpg e .jpeg. Se seu conjunto de dados contiver todas as imagens .png use `image/png`, se contiver todas as imagens .jpg ou .jpeg use `image/jpeg` e se o seu conjunto de dados contiver uma combinação de formatos de imagem, use `image/*`.

## Métrica objetiva
<a name="image-classification-objective-metric"></a>

A lista a seguir contém os nomes das métricas atualmente disponíveis para medir o desempenho dos modelos de classificação de imagens.

**`Accuracy`**  
 A razão entre o número de itens classificados corretamente e o número total de itens classificados (correta e incorretamente). A precisão mede o quão próximos estão os valores de classe previstos dos valores reais. Os valores das métricas de precisão variam entre zero (0) e um (1). Um valor de 1 indica precisão perfeita e 0 indica imprecisão perfeita.

# Implante modelos do Autopilot para inferência em tempo real
<a name="image-classification-deploy-models"></a>

Depois de treinar seus modelos do Amazon SageMaker Autopilot, você pode configurar um endpoint e obter previsões de forma interativa. A seção a seguir descreve as etapas para implantar seu modelo em um endpoint de inferência de SageMaker IA em tempo real para obter previsões do seu modelo.

## Inferência em tempo real
<a name="autopilot-deploy-models-text-image-classification-realtime"></a>

A inferência em tempo real é ideal para workloads de inferência em que você tem requisitos em tempo real, interativos e de baixa latência. Esta seção mostra como você pode usar a inferência em tempo real para obter predições do seu modelo de forma interativa.

Você pode usar SageMaker APIs para implantar manualmente o modelo que produziu a melhor métrica de validação em um experimento de piloto automático da seguinte maneira.

Como alternativa, você pode escolher a opção de implantação automática ao criar seu experimento de Autopilot. Para obter informações sobre como configurar a implantação automática de modelos, consulte `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` nos parâmetros de solicitação de `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestParameters)`. Isso cria um endpoint automaticamente.

**nota**  
Para evitar cobranças desnecessárias, exclua endpoints e recursos desnecessários criados a partir da implantação do modelo. Para obter informações sobre preços de instâncias por região, consulte [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

1. **Obtenha as definições do contêiner candidato**

   Obtenha as definições do contêiner candidato em [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers). Uma definição de contêiner para inferência se refere ao ambiente em contêineres projetado para implantar e executar seu modelo de SageMaker IA treinado para fazer previsões. 

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter definições de candidatos para o melhor candidato a modelo.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Listar candidatos**

   O exemplo de AWS CLI comando a seguir usa a [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para listar todos os candidatos ao modelo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Crie um modelo de SageMaker IA**

   Use as definições de contêiner das etapas anteriores e um candidato de sua escolha para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Criar uma configuração de endpoint**

   O exemplo de AWS CLI comando a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Criar o endpoint** 

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Verifique o progresso da implantação do seu endpoint usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. **Invocar o endpoint** 

   A estrutura de comando a seguir invoca o endpoint para inferência em tempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

# Relatório de explicabilidade
<a name="image-classification-explainability-report"></a>

O Amazon SageMaker Autopilot fornece um relatório de explicabilidade para ajudar a explicar como o melhor candidato a modelo faz previsões para problemas de classificação de imagens. Esse relatório pode ajudar engenheiros de ML, gerentes de produto e outras partes interessadas internas a entender as características do modelo. Tanto os consumidores quanto os reguladores confiam na transparência de machine learning para confiar e interpretar as decisões tomadas com base nas predições de modelo. Você pode usar essas explicações para auditar e atender aos requisitos regulatórios, estabelecer confiança no modelo, apoiar a tomada de decisões humanas e depurar e melhorar o desempenho do modelo.

A funcionalidade explicativa do Autopilot para classificação de imagens usa uma abordagem de mapa de ativação de classe visual (CAM) que produz um mapa de calor em que a distribuição e a intensidade de cada cor destacam as áreas de uma imagem que mais contribuem para uma predição específica. Essa abordagem se baseia nos principais componentes derivados de uma implementação do [Eigen-CAM](https://arxiv.org/ftp/arxiv/papers/2008/2008.00299.pdf).

O Autopilot gera o relatório de explicabilidade como um arquivo JSON. O relatório inclui detalhes da análise com base no conjunto de dados de validação. Cada imagem usada para gerar o relatório contém as seguintes informações:
+ `input_image_uri`: o URI do Amazon S3 para a imagem de entrada tomada como entrada para o mapa de calor. 
+ `heatmap_image_uri`: o URI do Amazon S3 para a imagem do mapa de calor gerada pelo Autopilot. 
+ `predicted_label`: A classe de etiqueta prevista pelo melhor modelo treinado pelo Autopilot. 
+ `probability`: A confiança com que o `predicted_label` foi previsto.

Você pode encontrar o prefixo Amazon S3 para os artefatos de explicabilidade gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

Os exemplos a seguir ilustram a aparência dos mapas de calor em algumas amostras do [Oxford-IIIT Pet Dataset](https://www.robots.ox.ac.uk/~vgg/data/pets/). A imagem do mapa de calor exibe gradientes de cores que indicam a importância relativa dos diferentes atributos na imagem. A cor vermelha representa regiões com maior importância na previsão do “predicted\$1label” da imagem de entrada em comparação com os atributos representados pela cor azul.


****  

| Imagem de entrada | Imagem do mapa de calor | 
| --- | --- | 
|  ![\[A imagem original de um cachorro.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img1-input.png)  |  ![\[Um mapa de calor da imagem de um cachorro destaca as regiões com maior contribuição para o rótulo previsto.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img1-output.png)  | 
|  ![\[A imagem original de um gato.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img2-input.png)  |  ![\[Um mapa de calor da imagem de um gato destaca as regiões com maior contribuição para o rótulo previsto.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-image-classification-explainability-img2-output.png)  | 

# Relatório de performance do modelo
<a name="image-classification-model-performance-report"></a>

Um relatório de qualidade do modelo Amazon SageMaker AI (também chamado de relatório de desempenho) fornece insights e informações de qualidade para o melhor candidato a modelo gerado por um trabalho no AutoML. Isso inclui informações sobre os detalhes do trabalho, o tipo de problema do modelo, a função objetivo e várias métricas. Esta seção detalha o conteúdo de um relatório de desempenho para problemas de classificação de imagens e explica como acessar as métricas como dados brutos em um arquivo JSON.

Você pode encontrar o prefixo Amazon S3 para os artefatos do relatório de qualidade do modelo gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

O relatório de desempenho contém duas seções:
+ A primeira seção contém detalhes sobre o trabalho do Autopilot que produziu o modelo.
+  A segunda seção contém um relatório de qualidade do modelo com várias métricas de performance.

## Detalhes do trabalho do Autopilot
<a name="image-classification-performance-report-jobdetails"></a>

Esta primeira seção do relatório fornece algumas informações gerais sobre o trabalho do Autopilot que produziu o modelo. Esses detalhes incluem as seguintes informações:
+ Nome do candidato ao Autopilot: o nome do candidato do melhor modelo.
+ Nome do trabalho do Autopilot: o nome do trabalho.
+ Tipo de problema: o tipo de problema. No nosso caso, *classificação de imagens*.
+ Métrica objetiva: a métrica objetiva usada para otimizar o desempenho do modelo. No nosso caso, *Precisão*.
+ Direção de otimização: indica se a métrica objetiva deve ser minimizada ou maximizada.

## Relatório de qualidade do modelo
<a name="image-classification-performance-report-modelquality"></a>

As informações de qualidade do modelo são geradas pelos insights de modelo do Autopilot. O conteúdo do relatório gerado depende do tipo de problema abordado. O relatório especifica o número de linhas que foram incluídas no conjunto de dados da avaliação e a hora em que a avaliação ocorreu.

### Tabelas de métricas
<a name="image-classification-model-quality-report-metrics"></a>

A primeira parte do relatório de qualidade do modelo contém tabelas de métricas. Eles são apropriados para o tipo de problema abordado pelo modelo.

A imagem a seguir é um exemplo de uma tabela de métricas gerada pelo Autopilot para um problema de classificação de imagens ou textos. Ele mostra o nome, o valor e o desvio padrão da métrica.

![\[Exemplo de relatório de métricas de classificação por imagem ou texto do Amazon SageMaker Autopilot model Insights.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Informações gráficas de performance do modelo
<a name="image-classification-model-quality-report-graphs"></a>

A segunda parte do relatório de qualidade do modelo contém informações gráficas para ajudá-lo a avaliar o desempenho do modelo. O conteúdo desta seção depende do tipo de problema selecionado.

#### Matriz de confusão
<a name="image-classification-model-insights-confusion-matrix"></a>

Uma matriz de confusão fornece uma maneira de visualizar a precisão das predições feitas por um modelo para classificação binária e multiclasse para problemas diferentes.

Um resumo dos componentes do gráfico da **taxa de falsos positivos** (FPR) e da **taxa de positivos verdadeiros** (TPR) é definido da seguinte forma:
+ Previsões corretas
  + **Positivo verdadeiro** (TP): o valor previsto é 1 e o valor verdadeiro é 1.
  + **Negativo verdadeiro** (TN): o valor previsto é 0 e o valor verdadeiro é 0.
+ Previsões incorretas
  + **Falso-positivo** (FP): o valor previsto é 1, mas o valor verdadeiro é 0.
  + **Falso-negativo** (FN): o valor previsto é 0, mas o valor verdadeiro é 1.

A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O número e a porcentagem de predições corretas e incorretas para os rótulos reais
+ O número e a porcentagem de predições precisas na diagonal do canto superior esquerdo ao canto inferior direito
+ O número e a porcentagem de predições imprecisas na diagonal do canto superior direito ao canto inferior esquerdo

As predições incorretas em uma matriz de confusão são os valores de confusão.

O diagrama a seguir é um exemplo de matriz de confusão para um problema de classificação multiclasse. A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O eixo vertical é dividido em três linhas contendo três rótulos reais diferentes.
+ O eixo horizontal é dividido em três colunas contendo rótulos que foram previstos pelo modelo.
+ A barra de cores atribui um tom mais escuro a um número maior de amostras para indicar visualmente o número de valores que foram classificados em cada categoria.

No exemplo abaixo, o modelo previu corretamente os valores reais de 354 para o rótulo **f**, 1094 valores para o rótulo **i** e 852 valores para o rótulo **m.** A diferença de tom indica que o conjunto de dados não está balanceado porque há muito mais rótulos para o valor **i** do que para **f** ou **m**.

![\[Exemplo de matriz de confusão multiclasse do Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


A matriz de confusão no relatório de qualidade do modelo fornecido pode acomodar no máximo 15 rótulos para tipos de problemas de classificação multiclasse. Se uma linha correspondente a um rótulo mostrar um valor `Nan`, isso significa que o conjunto de dados de validação usado para verificar as predições de modelo não contém dados com esse rótulo.

# Crie um trabalho de AutoML para classificação de texto com a API
<a name="autopilot-create-experiment-text-classification"></a>

As instruções a seguir mostram como criar um trabalho do Amazon SageMaker Autopilot como um experimento piloto para tipos de problemas de classificação de texto usando o SageMaker [API Reference](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html).

**nota**  
Tarefas como classificação de texto e imagem, previsão de séries temporais e ajuste de grandes modelos de linguagem estão disponíveis exclusivamente na versão 2 da [API REST do AutoML](autopilot-reference.md). Se sua linguagem preferida for Python, você pode se referir diretamente ao [AWS SDK para Python (Boto3) MLV2 ](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)[objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.  
Os usuários que preferem a conveniência de uma interface de usuário podem usar o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acessar modelos pré-treinados e modelos básicos de IA generativos, ou criar modelos personalizados para textos específicos, classificação de imagens, necessidades de previsão ou IA generativa.

Você pode criar um experimento de classificação de texto do Autopilot programaticamente chamando a ação da [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API em qualquer idioma suportado pelo Amazon SageMaker Autopilot ou pelo. AWS CLI

Para obter informações sobre como essa ação da API se traduz em uma função no idioma de sua escolha, consulte a seção [Consulte também](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` e escolha um SDK. Como exemplo, para usuários do Python, veja a sintaxe completa da solicitação de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` em AWS SDK para Python (Boto3).

Veja a seguir uma coleção de parâmetros de solicitação de entrada obrigatórios e opcionais para a ação da API `CreateAutoMLJobV2` usada na classificação de texto.

## Parâmetros necessários
<a name="text-classification-api-required-params"></a>

Ao chamar `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)`, a fim de criar um experimento de Autopilot para classificação de texto, forneça os seguintes valores:
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar o nome do seu trabalho.
+ Pelo menos uma `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` em `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` para especificar sua fonte de dados.
+ Um `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` do tipo `[TextClassificationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextClassificationJobConfig.html)`. 
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN do perfil usada para acessar seus dados.

Todos os outros parâmetros são opcionais.

## Parâmetros opcionais
<a name="text-classification-api-optional-params"></a>

As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para o seu trabalho AutoML de classificação de texto.

### Como especificar os conjuntos de dados de treinamento e validação de um trabalho do AutoML
<a name="text-classification-data-training-or-validation"></a>

Você pode fornecer seu próprio conjunto de dados da validação e taxa de divisão de dados personalizada, ou deixar o Autopilot dividir o conjunto de dados automaticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte o parâmetro obrigatório [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker-api/src/AWSSageMakerAPIDoc/build/server-root/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tem um`ChannelType`, que pode ser definido como um `training` ou `validation` valores que especificam como os dados devem ser usados ao criar um modelo de aprendizado de máquina. 

Pelo menos uma fonte de dados deve ser fornecida e no máximo duas fontes de dados são permitidas: uma para dados de treinamento e outra para dados de validação. A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados. 

A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados.
+ Se você tiver apenas **uma fonte de dados**, a será `ChannelType` definida como `training` padrão e deverá ter esse valor.
  + Se o valor `ValidationFraction` em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) não estiver definido, 0,2 (20%) dos dados dessa fonte serão usados para a validação por padrão. 
  + Se `ValidationFraction` for definido como um valor entre 0 e 1, o conjunto de dados será dividido com base no valor especificado, em que o valor especifica a fração do conjunto de dados usada para validação.
+ Se você tiver **duas fontes de dados**, a `ChannelType` de um dos objetos `AutoMLJobChannel` deverá ser definida como `training`, o valor padrão. A `ChannelType` da outra fonte de dados deve ser definida como `validation`. As duas fontes de dados devem ter o mesmo formato, CSV ou Parquet, e o mesmo esquema. Nesse caso, você não deve definir o valor para o `ValidationFraction` porque todos os dados de cada fonte são usados para treinamento ou validação. Definir esse valor causa um erro.

### Como especificar a configuração automática de implantação do modelo para um trabalho do AutoML
<a name="text-classification-auto-model-deployment"></a>

Para habilitar a implantação automática para o melhor candidato a modelo de um trabalho do AutoML, inclua um `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` na solicitação de trabalho do AutoML. Isso permitirá a implantação do melhor modelo em um endpoint de SageMaker IA. Abaixo estão as configurações disponíveis para personalização.
+ Para permitir que o Autopilot gere o nome do endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` como `True`.
+ Para fornecer seu próprio nome para o endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

# Formato de conjuntos de dados e métrica objetiva para classificação de texto
<a name="text-classification-data-format-and-metric"></a>

Nesta seção, aprendemos sobre os formatos disponíveis para conjuntos de dados usados na classificação de texto, bem como a métrica usada para avaliar a qualidade preditiva dos candidatos ao modelo de machine learning. As métricas calculadas para candidatos são especificadas usando uma variedade de [MetricDatum](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html)tipos.

## Formatos de conjuntos de dados
<a name="text-classification-data-format"></a>

O Autopilot é compatível com dados tabulares formatados como arquivos CSV ou como arquivos Parquet. Para dados tabulares, cada coluna contém um atributo com um tipo de dados específico e cada linha contém uma observação. As propriedades desses dois formatos de arquivo diferem consideravelmente.
+ **CSV** (comma-separated-values) é um formato de arquivo baseado em linhas que armazena dados em texto simples legível por humanos, o que é uma escolha popular para troca de dados, pois são suportados por uma ampla variedade de aplicativos.
+ O **Parquet** é um formato de arquivo baseado em colunas em que os dados são armazenados e processados com mais eficiência do que os formatos de arquivo baseados em linhas. Isso os torna uma opção melhor para problemas de big data.

Os **tipos de dados** aceitos para colunas incluem texto numérico, categórico.

O piloto automático oferece suporte à criação de modelos de aprendizado de máquina em grandes conjuntos de dados de até centenas de. GBs Para obter detalhes sobre os limites de recursos padrão para conjuntos de dados de entrada e como aumentá-los, consulte as cotas do [Amazon SageMaker Autopilot](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-quotas.html).

## Métrica objetiva
<a name="text-classification-objective-metric"></a>

A lista a seguir contém os nomes das métricas atualmente disponíveis para medir o desempenho dos modelos de classificação de texto.

**`Accuracy`**  
 A razão entre o número de itens classificados corretamente e o número total de itens classificados (correta e incorretamente). A precisão mede o quão próximos estão os valores de classe previstos dos valores reais. Os valores das métricas de precisão variam entre zero (0) e um (1). Um valor de 1 indica precisão perfeita e 0 indica imprecisão perfeita.

# Implante modelos do Autopilot para inferência em tempo real
<a name="text-classification-deploy-models"></a>

Depois de treinar seus modelos do Amazon SageMaker Autopilot, você pode configurar um endpoint e obter previsões de forma interativa. A seção a seguir descreve as etapas para implantar seu modelo em um endpoint de inferência de SageMaker IA em tempo real para obter previsões do seu modelo.

## Inferência em tempo real
<a name="autopilot-deploy-models-text-image-classification-realtime"></a>

A inferência em tempo real é ideal para workloads de inferência em que você tem requisitos em tempo real, interativos e de baixa latência. Esta seção mostra como você pode usar a inferência em tempo real para obter predições do seu modelo de forma interativa.

Você pode usar SageMaker APIs para implantar manualmente o modelo que produziu a melhor métrica de validação em um experimento de piloto automático da seguinte maneira.

Como alternativa, você pode escolher a opção de implantação automática ao criar seu experimento de Autopilot. Para obter informações sobre como configurar a implantação automática de modelos, consulte `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` nos parâmetros de solicitação de `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestParameters)`. Isso cria um endpoint automaticamente.

**nota**  
Para evitar cobranças desnecessárias, exclua endpoints e recursos desnecessários criados a partir da implantação do modelo. Para obter informações sobre preços de instâncias por região, consulte [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

1. **Obtenha as definições do contêiner candidato**

   Obtenha as definições do contêiner candidato em [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers). Uma definição de contêiner para inferência se refere ao ambiente em contêineres projetado para implantar e executar seu modelo de SageMaker IA treinado para fazer previsões. 

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter definições de candidatos para o melhor candidato a modelo.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Listar candidatos**

   O exemplo de AWS CLI comando a seguir usa a [ListCandidatesForAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)API para listar todos os candidatos ao modelo.

   ```
   aws sagemaker list-candidates-for-auto-ml-job --auto-ml-job-name <job-name> --region <region>
   ```

1. **Crie um modelo de SageMaker IA**

   Use as definições de contêiner das etapas anteriores e um candidato de sua escolha para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --containers ['<container-definition1>, <container-definition2>, <container-definition3>]' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Criar uma configuração de endpoint**

   O exemplo de AWS CLI comando a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' \
                       --region '<region>'
   ```

1. **Criar o endpoint** 

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Verifique o progresso da implantação do seu endpoint usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. **Invocar o endpoint** 

   A estrutura de comando a seguir invoca o endpoint para inferência em tempo real.

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-data>' [--content-type] '<content-type>' <outfile>
   ```

# Relatório de explicabilidade
<a name="text-classification-explainability-report"></a>

O Amazon SageMaker Autopilot fornece um relatório de explicabilidade para ajudar a explicar como o melhor candidato a modelo faz previsões para problemas de classificação de texto. Esse relatório pode ajudar engenheiros de ML, gerentes de produto e outras partes interessadas internas a entender as características do modelo. Tanto os consumidores quanto os reguladores confiam na transparência de machine learning para confiar e interpretar as decisões tomadas com base nas predições de modelo. Você pode usar essas explicações para auditar e atender aos requisitos regulatórios, estabelecer confiança no modelo, apoiar a tomada de decisões humanas e depurar e melhorar o desempenho do modelo.

*A funcionalidade explicativa do Autopilot para classificação de texto usa o método de atribuição axiomática Integrated Gradients.* Essa abordagem se baseia em uma implementação de [Atribuição Axiomática para Rede Profunda](https://arxiv.org/pdf/1703.01365.pdf).

O Autopilot gera o relatório de explicabilidade como um arquivo JSON. O relatório inclui detalhes da análise com base no conjunto de dados de validação. Cada amostra usada para gerar o relatório contém as seguintes informações:
+ `text`: O conteúdo do texto de entrada explicado.
+ `token_scores`: A lista de pontuações para cada token no texto.
+ 
  + `attribution`: A pontuação que mostra a importância do token.
  + `description.partial_text`: a substring parcial que representa o token.
+ `predicted_label`: A classe de rótulo prevista pelo melhor candidato a modelo.
+ `probability`: A confiança com que o `predicted_label` foi previsto.

Você pode encontrar o prefixo Amazon S3 para os artefatos de explicabilidade gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

Veja a seguir um exemplo de conteúdo de análise que você pode encontrar nos artefatos de explicabilidade.

```
{
    "text": "It was a fantastic movie!",
    "predicted_label": 2,
    "probability": 0.9984835,
    "token_scores": [
        {
            "attribution": 0,
            "description": {
                "partial_text": "It"
            }
        },
        {
            "attribution": -0.022447118861679088,
            "description": {
                "partial_text": "was"
            }
        },
        {
            "attribution": -0.2164326456817965,
            "description": {
                "partial_text": "a"
            }
        },
        {
            "attribution": 0.675,
            "description": {
                "partial_text": "fantastic"
            }
        },
        {
            "attribution": 0.416,
            "description": {
                "partial_text": "movie!"
            }
        }
    ]
}
```

Neste exemplo do relatório JSON, a funcionalidade explicativa avalia o texto `It was a fantastic movie!` e pontua a contribuição de cada um de seus tokens para o rótulo geral previsto. O rótulo previsto é `2`, que é um forte sentimento positivo, com uma probabilidade de 99,85%. Em seguida, a amostra JSON detalha a contribuição de cada token individual para essa predição. Por exemplo, o token `fantastic` tem uma atribuição mais forte do que o token `was`. É o token que mais contribuiu para a predição final.

# Relatório de performance do modelo
<a name="text-classification-model-performance-report"></a>

Um relatório de qualidade do modelo Amazon SageMaker AI (também chamado de relatório de desempenho) fornece insights e informações de qualidade para o melhor candidato a modelo gerado por um trabalho no AutoML. Isso inclui informações sobre os detalhes do trabalho, o tipo de problema do modelo, a função objetivo e várias métricas. Esta seção detalha o conteúdo de um relatório de desempenho para problemas de classificação de texto e explica como acessar as métricas como dados brutos em um arquivo JSON.

Você pode encontrar o prefixo Amazon S3 para os artefatos do relatório de qualidade do modelo gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

O relatório de desempenho contém duas seções:
+ A primeira seção contém detalhes sobre o trabalho do Autopilot que produziu o modelo.
+  A segunda seção contém um relatório de qualidade do modelo com várias métricas de performance.

## Detalhes do trabalho do Autopilot
<a name="text-classification-performance-report-jobdetails"></a>

Esta primeira seção do relatório fornece algumas informações gerais sobre o trabalho do Autopilot que produziu o modelo. Esses detalhes incluem as seguintes informações:
+ Nome do candidato ao Autopilot: o nome do candidato do melhor modelo.
+ Nome do trabalho do Autopilot: o nome do trabalho.
+ Tipo de problema: o tipo de problema. No nosso caso, *classificação de texto*.
+ Métrica objetiva: a métrica objetiva usada para otimizar o desempenho do modelo. No nosso caso, *Precisão*.
+ Direção de otimização: indica se a métrica objetiva deve ser minimizada ou maximizada.

## Relatório de qualidade do modelo
<a name="text-classification-performance-report-modelquality"></a>

As informações de qualidade do modelo são geradas pelos insights de modelo do Autopilot. O conteúdo do relatório gerado depende do tipo de problema abordado. O relatório especifica o número de linhas que foram incluídas no conjunto de dados da avaliação e a hora em que a avaliação ocorreu.

### Tabelas de métricas
<a name="text-classification-model-quality-report-metrics"></a>

A primeira parte do relatório de qualidade do modelo contém tabelas de métricas. Eles são apropriados para o tipo de problema abordado pelo modelo.

A imagem a seguir é um exemplo de uma tabela de métricas gerada pelo Autopilot para um problema de classificação de imagens ou textos. Ele mostra o nome, o valor e o desvio padrão da métrica.

![\[Exemplo de relatório de métricas de classificação por imagem ou texto do Amazon SageMaker Autopilot model Insights.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-multiclass-metrics-report.png)


### Informações gráficas de performance do modelo
<a name="text-classification-model-quality-report-graphs"></a>

A segunda parte do relatório de qualidade do modelo contém informações gráficas para ajudá-lo a avaliar o desempenho do modelo. O conteúdo desta seção depende do tipo de problema selecionado.

#### Matriz de confusão
<a name="text-classification--model-insights-confusion-matrix"></a>

Uma matriz de confusão fornece uma maneira de visualizar a precisão das predições feitas por um modelo para classificação binária e multiclasse para problemas diferentes.

Um resumo dos componentes do gráfico da **taxa de falsos positivos** (FPR) e da **taxa de positivos verdadeiros** (TPR) é definido da seguinte forma:
+ Previsões corretas
  + **Positivo verdadeiro** (TP): o valor previsto é 1 e o valor verdadeiro é 1.
  + **Negativo verdadeiro** (TN): o valor previsto é 0 e o valor verdadeiro é 0.
+ Previsões incorretas
  + **Falso-positivo** (FP): o valor previsto é 1, mas o valor verdadeiro é 0.
  + **Falso-negativo** (FN): o valor previsto é 0, mas o valor verdadeiro é 1.

A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O número e a porcentagem de predições corretas e incorretas para os rótulos reais
+ O número e a porcentagem de predições precisas na diagonal do canto superior esquerdo ao canto inferior direito
+ O número e a porcentagem de predições imprecisas na diagonal do canto superior direito ao canto inferior esquerdo

As predições incorretas em uma matriz de confusão são os valores de confusão.

O diagrama a seguir é um exemplo de matriz de confusão para um problema de classificação multiclasse. A matriz de confusão no relatório de qualidade do modelo contém o seguinte:
+ O eixo vertical é dividido em três linhas contendo três rótulos reais diferentes.
+ O eixo horizontal é dividido em três colunas contendo rótulos que foram previstos pelo modelo.
+ A barra de cores atribui um tom mais escuro a um número maior de amostras para indicar visualmente o número de valores que foram classificados em cada categoria.

No exemplo abaixo, o modelo previu corretamente os valores reais de 354 para o rótulo **f**, 1094 valores para o rótulo **i** e 852 valores para o rótulo **m.** A diferença de tom indica que o conjunto de dados não está balanceado porque há muito mais rótulos para o valor **i** do que para **f** ou **m**.

![\[Exemplo de matriz de confusão multiclasse do Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-model-insights-confusion-matrix-multiclass.png)


A matriz de confusão no relatório de qualidade do modelo fornecido pode acomodar no máximo 15 rótulos para tipos de problemas de classificação multiclasse. Se uma linha correspondente a um rótulo mostrar um valor `Nan`, isso significa que o conjunto de dados de validação usado para verificar as predições de modelo não contém dados com esse rótulo.

# Crie um trabalho de AutoML para previsão de séries temporais com a API
<a name="autopilot-create-experiment-timeseries-forecasting"></a>

A previsão em machine learning se refere ao processo de prever resultados ou tendências futuras com base em dados e padrões históricos. Ao analisar dados de séries temporais anteriores e identificar padrões subjacentes, os algoritmos de machine learning podem fazer predições e fornecer informações valiosas sobre o comportamento futuro. Na previsão, o objetivo é desenvolver modelos que possam capturar com precisão a relação entre as variáveis de entrada e a variável alvo ao longo do tempo. Isso envolve examinar vários fatores, como tendências, sazonalidade e outros padrões relevantes nos dados. As informações coletadas são então usadas para treinar um modelo de Machine Learning. O modelo treinado é capaz de gerar predições pegando novos dados de entrada e aplicando os padrões e relacionamentos aprendidos. Ele pode fornecer previsões para uma ampla variedade de casos de uso, como projeções de vendas, tendências do mercado de ações, previsões meteorológicas, previsão de demanda e muito mais.

[As instruções a seguir mostram como criar um trabalho do Amazon SageMaker Autopilot como um experimento piloto para tipos de problemas de previsão de séries temporais usando SageMaker o API Reference.](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html)

**nota**  
Tarefas como classificação de texto e imagem, previsão de séries temporais e ajuste de grandes modelos de linguagem estão disponíveis exclusivamente na versão 2 da [API REST do AutoML](autopilot-reference.md). Se sua linguagem preferida for Python, você pode se referir diretamente ao [AWS SDK para Python (Boto3) MLV2 ](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)[objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.  
Os usuários que preferem a conveniência de uma interface de usuário podem usar o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acessar modelos pré-treinados e modelos básicos de IA generativos, ou criar modelos personalizados para textos específicos, classificação de imagens, necessidades de previsão ou IA generativa.

Você pode criar programaticamente um experimento de previsão de séries temporais do Autopilot chamando a [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API em qualquer linguagem suportada pelo Amazon Autopilot ou pelo. SageMaker AWS CLI

Para obter informações sobre como essa ação da API se traduz em uma função no idioma de sua escolha, consulte a seção [Consulte também](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` e escolha um SDK. Como exemplo, para usuários do Python, veja a sintaxe completa da solicitação de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` em AWS SDK para Python (Boto3).

O Autopilot treina vários candidatos a modelo com sua série temporal alvo e, em seguida, seleciona um modelo de previsão ideal para uma determinada métrica objetiva. Depois que seus candidatos modelo forem treinados, você poderá encontrar as melhores métricas de candidatos na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html#sagemaker-Type-CandidateProperties-CandidateMetrics)`.

As seções a seguir definem os parâmetros de solicitação de entrada obrigatórios e opcionais para a API `CreateAutoMLJobV2` usada na previsão de séries temporais.

**nota**  
Consulte o caderno [Time-Series Forecasting with Amazon SageMaker Autopilot](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/autopilot_time_series.ipynb) para ver um exemplo prático e prático de previsão de séries temporais. Neste notebook, você usa o Amazon SageMaker Autopilot para treinar um modelo de séries temporais e produzir previsões usando o modelo treinado. O caderno fornece instruções para recuperar um conjunto de dados pronto de dados históricos tabulares no Amazon S3.

## Pré-requisitos
<a name="autopilot-timeseries-forecasting-prerequisites"></a>

Antes de usar o piloto automático para criar um experimento de previsão de séries temporais em SageMaker IA, certifique-se de:
+ Preparar seu conjunto de dados de séries temporais. A preparação do conjunto de dados envolve coletar dados relevantes de várias fontes, limpá-los e filtrá-los para remover ruídos e inconsistências e organizá-los em um formato estruturado. Consulte [Formato de conjuntos de dados de séries temporais e métodos de preenchimento de valores ausentes](timeseries-forecasting-data-format.md) para saber mais sobre os requisitos de formatos de séries temporais no Autopilot. Opcionalmente, você pode complementar seu conjunto de dados com o calendário de feriados públicos do país de sua escolha para capturar os padrões associados. Para obter mais informações sobre calendários de feriados, consulte [Calendários de feriados nacionais](autopilot-timeseries-forecasting-holiday-calendars.md).
**nota**  
Recomendamos fornecer pelo menos 3 a 5 pontos de dados históricos para cada 1 ponto de dados futuro que você deseja prever. Por exemplo, para prever 7 dias à frente (horizonte de 1 semana) com base em dados diários, treine seu modelo com um mínimo de 21 a 35 dias de dados históricos. Certifique-se de fornecer dados suficientes para capturar padrões sazonais e recorrentes. 
+ Colocar seus dados de séries temporais em um bucket do Amazon S3.
+ Conceda acesso total ao bucket do Amazon S3 contendo seus dados de entrada para a função de execução de SageMaker IA usada para executar seu experimento. Feito isso, você pode usar o ARN desse perfil de execução nas solicitações da API do Autopilot.
  + Para obter informações sobre como recuperar sua função de execução de SageMaker IA, consulte[Obtenha um perfil de execução](sagemaker-roles.md#sagemaker-roles-get-execution-role).
  + Para obter informações sobre como conceder permissões de função de execução de SageMaker IA para acessar um ou mais buckets específicos no Amazon S3, *consulte Adicionar permissões adicionais do Amazon S3* a uma função de execução de IA em. SageMaker [Criar perfil de execução](sagemaker-roles.md#sagemaker-roles-create-execution-role)

## Parâmetros necessários
<a name="timeseries-forecasting-api-required-params"></a>

Ao chamar `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para criar um experimento de Autopilot para previsão de séries temporais, você deve fornecer os seguintes valores:
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar o nome do seu trabalho. O nome deve ser do tipo `string` e ter um comprimento mínimo de 1 caractere e um comprimento máximo de 32.
+ Pelo menos um `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` em `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)` no qual você especifica o nome do bucket do Amazon S3 que contém seus dados. Opcionalmente, você pode especificar o conteúdo (arquivos CSV ou Parquet) e os tipos de compactação (GZip).
+ Um `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` dos tipos `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` para definir as configurações do seu trabalho de previsão de séries temporais. Em particular, você deve especificar:
  + A **frequência** das predições, que se refere à granularidade desejada (por hora, diariamente, mensalmente etc.) de sua predição.

    Os intervalos válidos são um número inteiro seguido de `Y` (ano), `M` (mês), `W` (semana), `D` (dia), `H` (hora) e `min` (minuto). Por exemplo, `1D` indica todos os dias e `15min` indica a cada 15 minutos. O valor de uma frequência não deve se sobrepor à próxima frequência maior. Por exemplo, você deve usar uma frequência de `1H` em vez de `60min`.

    Os valores válidos para cada frequência são os seguintes:
    + Minuto: 1 a 59
    + Hora: 1 a 23
    + Dia: 1 a 6
    + Semana: 1 a 4
    + Mês: 1 a 11
    + Ano: 1
  + O **horizonte** das predições em sua predição, que se refere ao número de etapas de tempo que o modelo prevê. O horizonte de predição também é chamado de comprimento da predição. O horizonte máximo de previsão é o menor de 500 intervalos de tempo ou 1/4 dos intervalos de tempo no conjunto de dados.
  + Um [TimeSeriesConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html)no qual você define o esquema do seu conjunto de dados para mapear os cabeçalhos das colunas de acordo com sua previsão especificando:
    + R `TargetAttributeName`: A coluna que contém dados históricos do campo de destino a serem previstos.
    + R `TimestampAttributeName`: A coluna que contém um momento no qual o valor alvo de um determinado item é registrado.
    + R `ItemIdentifierAttributeName`: A coluna que contém os identificadores do item para o qual você deseja prever o valor alvo.

  Veja a seguir um exemplo desses parâmetros de solicitação. Neste exemplo, você está configurando uma previsão diária para a quantidade esperada ou o nível de demanda de itens específicos em um período de 20 dias.

  ```
  "AutoMLProblemTypeConfig": { 
          "ForecastFrequency": "D",
          "ForecastHorizon": 20,
          "TimeSeriesConfig": {
              "TargetAttributeName": "demand",
              "TimestampAttributeName": "timestamp",
              "ItemIdentifierAttributeName": "item_id"
          },
  ```
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN da função usada para acessar seus dados. Você pode usar o ARN da função de execução à qual concedeu acesso aos seus dados.

Todos os outros parâmetros são opcionais. Por exemplo, você pode definir quantis de previsão específicos, escolher um método de preenchimento para valores ausentes no conjunto de dados ou definir como agregar dados que não estejam alinhados com a frequência da previsão. Para aprender como definir esses parâmetros adicionais, consulte [Parâmetros opcionais](#timeseries-forecasting-api-optional-params).

## Parâmetros opcionais
<a name="timeseries-forecasting-api-optional-params"></a>

As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para seu trabalho AutoML de previsão de séries temporais.

### Como especificar algoritmos
<a name="timeseries-forecasting-algorithms-selection"></a>

Por padrão, seu trabalho de Autopilot treina uma lista predefinida de algoritmos em seu conjunto de dados. Entretanto, você pode fornecer um subconjunto da seleção padrão de algoritmos.

Para a previsão de séries temporais, você deve escolher `[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)` como o tipo de `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

Em seguida, você pode especificar uma matriz de selecionados `AutoMLAlgorithms` no `AlgorithmsConfig` atributo de [CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html).

Veja a seguir um exemplo de um atributo da `AlgorithmsConfig` listando exatamente três algoritmos (“cnn-qr”, “prophet”, “arima”) em seu campo `AutoMLAlgorithms`.

```
{
   "[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)": {
        "[TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)": {
          "[CandidateGenerationConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)": {
            "[AlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html#sagemaker-Type-CandidateGenerationConfig-AlgorithmsConfig)":[
               {"[AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)":["cnn-qr", "prophet", "arima"]}
            ]
         },
       },
     },
  }
```

Para ver a lista de algoritmos disponíveis para previsão de séries temporais, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html#sagemaker-Type-AutoMLAlgorithmConfig-AutoMLAlgorithms). Para obter detalhes sobre cada algoritmo, consulte [Compatibilidade com algoritmos para previsão de séries temporais](timeseries-forecasting-algorithms.md).

### Como especificar quantis personalizados
<a name="timeseries-forecasting-custom-quantiles"></a>

O Autopilot treina 6 candidatos a modelos com sua série temporal alvo e, em seguida, combina esses modelos usando um método de conjunto de empilhamento para criar um modelo de previsão ideal para uma determinada métrica objetiva. Cada modelo de previsão do Autopilot gera uma previsão probabilística produzindo previsões em quantis entre P1 e P99. Esses quantis são usados para contabilizar a incerteza da previsão. Por padrão, as previsões serão geradas para 0,1 (`p10`), 0,5 (`p50`) e 0,9 (`p90`). Você pode optar por especificar seus próprios quantis. 

No piloto automático, você pode especificar até cinco quantis de previsão de 0,01 (`p1`) a 0,99 (`p99`), por incrementos de 0,01 ou mais no atributo de. `ForecastQuantiles` [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)

Neste exemplo, você está configurando uma previsão diária das porcentagens 10, 25, 50, 75 e 90 para a quantidade ou nível de demanda esperado de itens específicos durante um período de 20 dias.

```
"AutoMLProblemTypeConfig": { 
        "ForecastFrequency": "D",
        "ForecastHorizon": 20,
        "ForecastQuantiles": ["p10", "p25", "p50", "p75", "p90"],
        "TimeSeriesConfig": {
            "TargetAttributeName": "demand",
            "TimestampAttributeName": "timestamp",
            "ItemIdentifierAttributeName": "item_id"
        },
```

### Como agregar dados para diferentes frequências de previsão
<a name="timeseries-forecasting-aggregation"></a>

Para criar um modelo de previsão (também conhecido como o melhor candidato de seu experimento), você deve especificar uma frequência de previsão. A frequência da predição determina a frequência das predições em suas predições. Por exemplo, previsões mensais de vendas. O melhor modelo do Autopilot pode gerar previsões para frequências de dados maiores do que a frequência na qual seus dados são registrados.

Durante o treinamento, o Autopilot agrega todos os dados que não estão alinhados com a frequência de previsão que você especifica. Por exemplo, você pode ter alguns dados diários, mas especificar uma frequência de previsão semanal. O Autopilot alinha os dados diários com base na semana em que eles pertencem. O Autopilot então o combina em um único registro para cada semana.

Durante a agregação, o método de transformação padrão é somar os dados. Você pode configurar a agregação ao criar sua tarefa AutoML no atributo `Transformations` de. [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) Os métodos de agregação compatíveis são `sum` (padrão), `avg`, `first`, `min`, `max`. A agregação só é compatível com a coluna de destino.

No exemplo a seguir, você configura a agregação para calcular a média das previsões promocionais individuais para fornecer os valores finais agregados da previsão.

```
"Transformations": {
            "Aggregation": {
                "promo": "avg"
            }
        }
```

### Como processar valores ausentes em seus conjuntos de dados de origem
<a name="timeseries-forecasting-fill-missing-values"></a>

O Autopilot fornece vários métodos de preenchimento para processar valores ausentes no alvo e em outras colunas numéricas de seus conjuntos de dados de séries temporais. Para obter informações sobre a lista de métodos de preenchimento compatíveis e sua lógica de preenchimento disponível, consulte [Processamento de valores ausentes](timeseries-forecasting-data-format.md#timeseries-missing-values).

Você configura sua estratégia de preenchimento no `Transformations` atributo de [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)ao criar sua tarefa de AutoML.

Para definir um método de preenchimento, você precisa fornecer um par de valores-chave:
+ A chave é o nome da coluna para a qual você deseja especificar o método de preenchimento.
+ O valor associado à chave é um objeto que define a estratégia de preenchimento dessa coluna.

Você pode especificar vários métodos de preenchimento para uma única coluna.

Para definir um valor específico para o método de preenchimento, você deve definir o parâmetro de preenchimento para o valor do método de preenchimento desejado (por exemplo `"backfill" : "value"`) e definir o valor real de preenchimento em um parâmetro adicional com o sufixo “\$1value”. Por exemplo, para definir `backfill` com o valor de `2`, você deve incluir dois parâmetros: `"backfill": "value"` e `"backfill_value":"2"`.

No seguinte exemplo, você especifica a estratégia de preenchimento para a coluna de dados incompleta, “preço”, da seguinte forma: Todos os valores ausentes entre o primeiro ponto de dados de um item e o último são definidos para `0` após o qual todos os valores ausentes são preenchidos com o valor `2` até a data final do conjunto de dados.

```
"Transformations": {
            "Filling": {
                "price": {
                        "middlefill" : "zero",
                        "backfill" : "value",
                        "backfill_value": "2"
                }
            }
        }
```

### Como especificar uma métrica objetiva
<a name="timeseries-forecasting-set-objective-metric"></a>

O Autopilot produz métricas de precisão para avaliar os candidatos ao modelo e ajudar você a escolher quais usar para gerar previsões. Ao realizar um experimento de previsão de séries temporais, você pode escolher o AutoML para permitir que o Autopilot otimize o preditor para você ou pode escolher manualmente um algoritmo para seu preditor.

Por padrão, o Autopilot usa a perda quantílica ponderada média. No entanto, você pode configurar a métrica do objetivo ao criar sua tarefa AutoML no `MetricName` atributo [MLJobAuto](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html) Objective.

Para ver a lista de algoritmos disponíveis, consulte [Compatibilidade com algoritmos para previsão de séries temporais](timeseries-forecasting-algorithms.md).

### Como incorporar informações de feriados nacionais ao seu conjunto de dados
<a name="timeseries-forecasting-add-holiday-calendar"></a>

No Autopilot, você pode incorporar um conjunto de dados projetado por atributos de informações de feriados nacionais à sua série temporal. O Autopilot fornece apoio nativo para os calendários de feriados de mais de 250 países. Depois de escolher um país, o Autopilot aplica o calendário de feriados desse país a cada item do seu conjunto de dados durante o treinamento. Isso permite que o modelo identifique padrões associados a feriados específicos.

Você pode ativar a caracterização de férias ao criar sua tarefa AutoML passando um [HolidayConfigAttributes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html)objeto para o atributo de. `HolidayConfig` [TimeSeriesForecastingJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html) O objeto `HolidayConfigAttributes` contém o atributo `CountryCode` de duas letras que determina o país do calendário público de feriados nacionais usado para aumentar seu conjunto de dados de séries temporais.

Consulte [Código do país](autopilot-timeseries-forecasting-holiday-calendars.md#holiday-country-codes) para obter a lista de calendários compatíveis e o código do país correspondente.

### Como habilitar a implantação automática
<a name="timeseries-forecasting-auto-model-deployment"></a>

O Autopilot permite que você implante automaticamente seu modelo de previsão em um endpoint. Para habilitar a implantação automática para o melhor candidato a modelo de um trabalho do AutoML, inclua um `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` na solicitação de trabalho do AutoML. Isso permite a implantação do melhor modelo em um endpoint de SageMaker IA. Abaixo estão as configurações disponíveis para personalização.
+ Para permitir que o Autopilot gere o nome do endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` como `True`.
+ Para fornecer seu próprio nome para o endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

### Como configurar o AutoML para iniciar um trabalho remoto no EMR Sem Servidor para grandes conjuntos de dados
<a name="autopilot-set-emr-serverless-api-forecasting"></a>

Você pode configurar o seu trabalho AutoML V2 para iniciar automaticamente um trabalho remoto no Amazon EMR Sem Servidor quando recursos computacionais adicionais forem necessários para processar grandes conjuntos de dados. Ao fazer a transição perfeita para o EMR Sem Servidor quando necessário, o trabalho do AutoML pode lidar com conjuntos de dados que, de outra forma, excederiam os recursos inicialmente provisionados, sem nenhuma intervenção manual de sua parte. O EMR Sem Servidor está disponível para os tipos de problemas tabulares e de séries temporais. Recomendamos configurar essa opção para conjuntos de dados de séries temporais maiores que 30 GB.

Para permitir que o seu trabalho de AutoML V2 faça a transição automática para o EMR Sem Servidor de um grande conjunto de dados, você precisa fornecer um objeto `EmrServerlessComputeConfig`, que inclua um campo `ExecutionRoleARN`, para a `AutoMLComputeConfig` da solicitação de entrada do trabalho de AutoML V2.

Esse `ExecutionRoleARN` é o ARN do perfil do IAM que concede ao trabalho de AutoML V2 as permissões necessárias para executar trabalhos do EMR Sem Servidor.

Esse perfil deve ter a seguinte relação de confiança:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "emr-serverless.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

E conceder as permissões para:
+ Criar, listar e atualizar aplicações do EMR Sem Servidor.
+ Iniciar, listar, obter ou cancelar execuções de trabalhos em uma aplicação do EMR Sem Servidor.
+ Marcar os recursos do EMR Sem Servidor.
+ Passar um perfil do IAM para o serviço do EMR Sem Servidor para execução.

  Ao conceder a permissão `iam:PassRole`, o trabalho de AutoML V2 pode assumir temporariamente o perfil `EMRServerlessRuntimeRole-*` e passá-lo para o serviço EMR Sem Servidor. Essas são as funções do IAM usadas pelos ambientes de execução de tarefas do EMR Serverless 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 catálogo de dados ou outros serviços com base em AWS Glue seus requisitos de carga de trabalho.

  Consulte [Perfis de runtime do trabalho para o Amazon EMR Sem Servidor](https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/security-iam-runtime-role.html) para obter detalhes sobre as permissões deste perfil.

A política do IAM definida no documento JSON fornecido concede essas permissões:

------
#### [ JSON ]

****  

```
{
    "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}"
                }
            }
         }
    ]
}
```

------

# Formato de conjuntos de dados de séries temporais e métodos de preenchimento de valores ausentes
<a name="timeseries-forecasting-data-format"></a>

Dados de séries temporais referem-se a uma coleção de observações ou medições registradas em intervalos regulares de tempo. Nesse tipo de dado, cada observação é associada a um registro de data e hora específico ou período de tempo, criando uma sequência de pontos de dados ordenados cronologicamente.

As colunas específicas que você inclui em seu conjunto de dados de séries temporais dependem dos objetivos de sua análise e dos dados disponíveis para você. No mínimo, os dados de séries temporais são compostos por uma tabela de 3 colunas em que:
+ Uma coluna contém identificadores exclusivos atribuídos a itens individuais para se referir ao seu valor em um momento específico.
+ Outra coluna representa o point-in-time valor ou a **meta** para registrar o valor de um determinado item em um momento específico. Depois que o modelo é treinado nesses valores-alvo, essa coluna de destino contém os valores que o modelo prevê em uma frequência especificada dentro de um horizonte definido.
+ E uma coluna de carimbo de data/hora é incluída para registrar a data e a hora em que o valor foi medido.
+ Colunas adicionais podem conter outros fatores que podem influenciar o desempenho da previsão. Por exemplo, em um conjunto de dados de série temporal para varejo em que a meta são as vendas ou a receita, você pode incluir atributos que forneçam informações sobre unidades vendidas, ID do produto, localização da loja, contagem de clientes, níveis de estoque, bem como indicadores covariáveis, como dados meteorológicos ou informações demográficas.

**nota**  
Você pode adicionar um conjunto de dados projetado por atributos de informações sobre feriados nacionais à sua série temporal. Ao incluir feriados em seu modelo de séries temporais, você pode capturar os padrões periódicos que os feriados criam. Isso ajuda suas previsões a refletir melhor a sazonalidade subjacente de seus dados. Para obter informações sobre os calendários disponíveis por país, consulte [Calendários de feriados nacionais](autopilot-timeseries-forecasting-holiday-calendars.md)

## Formato de conjuntos de dados para previsão de séries temporais
<a name="timeseries-format"></a>

O Autopilot é compatível com tipos de dados numéricos, categóricos, de texto e de data e hora. O tipo de dados da coluna de destino deve ser numérico.

O Autopilot é compatível com dados de séries temporais formatados como arquivos CSV (padrão) ou como arquivos Parquet.
+ **CSV** (comma-separated-values) é um formato de arquivo baseado em linhas que armazena dados em texto simples legível por humanos, o que é uma escolha popular para troca de dados, pois são suportados por uma ampla variedade de aplicativos.
+ O **Parquet** é um formato de arquivo baseado em colunas em que os dados são armazenados e processados com mais eficiência do que os formatos de arquivo baseados em linhas. Isso os torna uma opção melhor para problemas de big data.

Para obter mais informações sobre os limites de recursos em conjuntos de dados de séries temporais para previsão no Autopilot, consulte [Limites de recursos de previsão de séries temporais do Autopilot](timeseries-forecasting-limits.md).

## Processamento de valores ausentes
<a name="timeseries-missing-values"></a>

Um problema comum nos dados de previsão de séries temporais é a presença de valores ausentes. Seus dados podem conter valores ausentes por vários motivos, incluindo falhas de medição, problemas de formatação, erros humanos ou falta de informações para registro. Por exemplo, se você estiver prevendo a demanda de produtos para uma loja de varejo e um item estiver esgotado ou indisponível, não haverá dados de vendas para registrar enquanto esse item estiver esgotado. Se prevalentes o suficiente, os valores ausentes podem afetar significativamente a precisão de um modelo.

O Autopilot fornece vários métodos de preenchimento para processar valores ausentes, com abordagens distintas para a coluna de destino e outras colunas adicionais. Preenchimento é o processo de adicionar valores padronizados a entradas ausentes em seu conjunto de dados.

Consulte [Como processar valores ausentes em seus conjuntos de dados de origem](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-fill-missing-values) para saber como definir o método para preencher valores ausentes em seu conjunto de dados de séries temporais.

O Autopilot é compatível com os seguintes métodos de preenchimento:
+ **Preenchimento frontal**: preenche todos os valores ausentes entre o primeiro ponto de dados registrado entre todos os itens e o ponto inicial de cada item (cada item pode começar em um horário diferente). Isso garante que os dados de cada item estejam completos e se estendam desde o primeiro ponto de dados registrado até o respectivo ponto de partida.
+ **Preenchimento intermediário:** preenche todos os valores faltantes entre as datas de início e término dos itens no conjunto de dados.
+ **Preenchimento posterior**: preenche todos os valores ausentes entre o último ponto de dados de cada item (cada item pode parar em um horário diferente) e o último ponto de dados registrado entre todos os itens.
+ **Preenchimento futuro**: preenche todos os valores faltantes entre o último ponto de dados registrado entre todos os itens e o final do horizonte de previsão.

A imagem a seguir fornece uma representação visual dos diferentes métodos de preenchimento.

![\[Os diferentes métodos de preenchimento para previsão de séries temporais no Amazon SageMaker Autopilot.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/autopilot/autopilot-forecast-filling-methods.png)


### Escolha uma lógica de preenchimento
<a name="filling-logic"></a>

Ao escolher uma lógica de preenchimento, você deve considerar como a lógica será interpretada por seu modelo. Por exemplo, em um cenário de varejo, registrar 0 vendas de um item disponível é diferente de registrar 0 vendas de um item indisponível, pois esse último não implica em uma falta de interesse do cliente no item. Por isso, o preenchimento `0` na coluna da série temporal de destino pode fazer com que o previsor seja subtendencioso em suas predições, enquanto o preenchimento `NaN` pode ignorar ocorrências reais de 0 itens disponíveis que estão sendo vendidos e fazer com que o previsor seja excessivamente tendencioso.

### Lógica de preenchimento
<a name="filling-restrictions"></a>

Você pode realizar o preenchimento da coluna de destino e de outras colunas numéricas em seus conjuntos de dados. As colunas de destino têm diretrizes e restrições de preenchimento diferentes das demais colunas numéricas.

Diretrizes de preenchimento


| Tipo de coluna | Preencher por padrão? | Métodos de preenchimento compatíveis | Lógica de preenchimento padrão | Lógica de preenchimento aceita | 
| --- | --- | --- | --- | --- | 
| Coluna de destino | Sim | Preenchimento intermediário e retroativo | 0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 
| Outras colunas numéricas | Não | Preenchimento intermediário, retroativo e futuro | Sem padrão |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/timeseries-forecasting-data-format.html)  | 

**nota**  
Para as colunas de destino e outras colunas numéricas, `mean`, `median`, `min` e `max` são calculados com base em uma janela contínua das 64 entradas de dados mais recentes antes dos valores ausentes.

# Calendários de feriados nacionais
<a name="autopilot-timeseries-forecasting-holiday-calendars"></a>

O Autopilot oferece apoio a um conjunto de dados projetado por atributos de informações de feriados nacionais que fornece acesso aos calendários de feriados de mais de 250 países. Os atributos do calendário de feriados são especialmente úteis no domínio do varejo, onde os feriados podem afetar significativamente a demanda. A seção a seguir lista os códigos de país que você pode usar para acessar os calendários de feriados de cada país compatível.

Consulte [Como incorporar informações de feriados nacionais ao seu conjunto de dados](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-add-holiday-calendar) para saber como adicionar um calendário ao seu conjunto de dados.

## Código do país
<a name="holiday-country-codes"></a>

O Autopilot fornece apoio nativo para os calendários de feriados públicos dos seguintes países: Use o **Código do País** ao especificar um país com a API.


| País | Código do país | 
| --- | --- | 
|   Afeganistão   |   AF   | 
|   Ilhas Åland   |   AX   | 
|   Albânia   |   AL   | 
|   Argélia   |   DZ   | 
|   Samoa Americana   |   AS   | 
|   Andorra   |   AD   | 
|   Angola   |   AO   | 
|   Anguila   |   AI   | 
|   Antártica   |   AQ   | 
|   Antígua e Barbuda   |   AG   | 
|   Argentina   |   AR   | 
|   Armênia   |   AM   | 
|   Aruba   |   AW   | 
|   Austrália   |   AU   | 
|   Áustria   |   AT   | 
|   Azerbaijão   |   AZ   | 
|   Bahamas   |   BS   | 
|   Bahrein   |   BH   | 
|   Bangladesh   |   BD   | 
|   Barbados   |   BB   | 
|   Bielorrússia   |   BY   | 
|   Bélgica   |   BE   | 
|   Belize   |   BZ   | 
|   Benin   |   BJ   | 
|   Bermudas   |   BM   | 
|   Butão   |   BT   | 
|   Bolívia   |   BO   | 
|   Bósnia e Herzegovina   |   BA   | 
|   Botsuana   |   BW   | 
|   Ilha Bouvet   |   BV   | 
|   Brasil   |   BR   | 
|   Território Britânico do Oceano Índico   |   IO   | 
|   Ilhas Virgens Britânicas   |   VG   | 
|   Brunei Darussalam   |   BN   | 
|   Bulgária   |   BG   | 
|   Burkina Faso   |   BF   | 
|   Burundi   |   BI   | 
|   Camboja   |   KH   | 
|   Camarões   |   CM   | 
|   Canadá   |   CA   | 
|   Cabo Verde   |   CV   | 
|   Países Baixos Caribenhos   |   BQ   | 
|   Ilhas Cayman   |   KY   | 
|   República Centro-Africana   |   CF   | 
|   Chade   |   TD   | 
|   Chile   |   CL   | 
|   China   |   CN   | 
|   Ilha Christmas   |   CX   | 
|   Ilhas Cocos (Keeling)   |   CC   | 
|   Colômbia   |   CO   | 
|   Comores   |   KM   | 
|   Ilhas Cook   |   CK   | 
|   Costa Rica   |   CR   | 
|   Croácia   |   HR   | 
|   Cuba   |   CU   | 
|   Curaçau   |   CW   | 
|   Chipre   |   CY   | 
|   Tchéquia   |   CZ   | 
|   República Democrática do Congo   |   CD   | 
|   Dinamarca   |   DK   | 
|   Djibuti   |   DJ   | 
|   Dominica   |   DM   | 
|   República Dominicana   |   DO   | 
|   Equador   |   EC   | 
|   Egito   |   EG   | 
|   El Salvador   |   SV   | 
|   Guiné Equatorial   |   GQ   | 
|   Eritreia   |   ER   | 
|   Estônia   |   EE   | 
|   Essuatíni   |   SZ   | 
|   Etiópia   |   ET   | 
|   Ilhas Falkland   |   FK   | 
|   Ilhas Faroe   |   FO   | 
|   Fiji   |   FJ   | 
|   Finlândia   |   FI   | 
|   França   |   FR   | 
|   Guiana Francesa   |   GF   | 
|   Polinésia Francesa   |   PF   | 
|   Territórios Franceses do Sul   |   TF   | 
|   Gabão   |   GA   | 
|   Gâmbia   |   GM   | 
|   Geórgia   |   GE   | 
|   Alemanha   |   DE   | 
|   Gana   |   GH   | 
|   Gibraltar   |   GI   | 
|   Grécia   |   GR   | 
|   Groenlândia   |   GL   | 
|   Granada   |   GD   | 
|   Guadalupe   |   GP   | 
|   Guam   |   GU   | 
|   Guatemala   |   GT   | 
|   Guernsey   |   GG   | 
|   Guiné   |   GN   | 
|   Guiné-Bissau   |   GW   | 
|   Guiana   |   GY   | 
|   Haiti   |   HT   | 
|   Ilha Heard e McDonald Ilhas   |   HM   | 
|   Honduras   |   HN   | 
|   Hong Kong   |   HK   | 
|   Hungria   |   HU   | 
|   Islândia   |   IS   | 
|   Índia   |   IN   | 
|   Indonésia   |   ID   | 
|   Irã   |   IR   | 
|   Iraque   |   IQ   | 
|   Irlanda   |   IE   | 
|   Ilha de Man   |   IM   | 
|   Israel   |   IL   | 
|   Itália   |   IT   | 
|   Costa do Marfim   |   CI   | 
|   Jamaica   |   JM   | 
|   Japão   |   JP   | 
|   Jérsei   |   JE   | 
|   Jordânia   |   JO   | 
|   Cazaquistão   |   KZ   | 
|   Quênia   |   KE   | 
|   Quiribati   |   KI   | 
|   Kosovo   |   XK   | 
|   Kuwait   |   KW   | 
|   Quirguistão   |   KG   | 
|   Laos   |   LA   | 
|   Letônia   |   LV   | 
|   Líbano   |   LB   | 
|   Lesoto   |   LS   | 
|   Libéria   |   LR   | 
|   Líbia   |   LY   | 
|   Liechtenstein   |   LI   | 
|   Lituânia   |   LT   | 
|   Luxemburgo   |   LU   | 
|   Macau   |   MO   | 
|   Madagascar   |   MG   | 
|   Malawi   |   MW   | 
|   Malásia   |   MY   | 
|   Ilhas Maldivas   |   MV   | 
|   Mali   |   ML   | 
|   Malta   |   MT   | 
|   Ilhas Marshall   |   MH   | 
|   Martinica   |   MQ   | 
|   Mauritânia   |   MR   | 
|   Ilhas Maurício   |   MU   | 
|   Mayotte   |   YT   | 
|   México   |   MX   | 
|   Micronésia   |   FM   | 
|   Moldávia   |   MD   | 
|   Mônaco   |   MC   | 
|   Mongólia   |   MN   | 
|   Montenegro   |   ME   | 
|   Montserrat   |   MS   | 
|   Marrocos   |   MA   | 
|   Moçambique   |   MZ   | 
|   Mianmar   |   MM   | 
|   Namíbia   |   NA   | 
|   Nauru   |   NR   | 
|   Nepal   |   NP   | 
|   Holanda   |   NL   | 
|   Nova Caledônia   |   NC   | 
|   Nova Zelândia   |   NZ   | 
|   Nicarágua   |   NI   | 
|   Níger   |   NE   | 
|   Nigéria   |   NG   | 
|   Niue   |   NU   | 
|   Ilha Norfolk   |   NF   | 
|   Coreia do Norte   |   KP   | 
|   Macedônia do Norte   |   MK   | 
|   Ilhas Marianas do Norte   |   MP   | 
|   Noruega   |   NO   | 
|   Omã   |   OM   | 
|   Paquistão   |   PK   | 
|   Palau   |   PW   | 
|   Palestina   |   PS   | 
|   Panamá   |   PA   | 
|   Papua Nova Guiné   |   PG   | 
|   Paraguai   |   PY   | 
|   Peru   |   PE   | 
|   Filipinas   |   PH   | 
|   Ilhas Pitcairn   |   PN   | 
|   Polônia   |   PL   | 
|   Portugal   |   PT   | 
|   Porto Rico   |   PR   | 
|   Catar   |   QA   | 
|   República do Congo   |   CG   | 
|   Reunião   |   RE   | 
|   Romênia   |   RO   | 
|   Federação Russa   |   RU   | 
|   Ruanda   |   RW   | 
|   São Bartolomeu   |   BL   | 
|   "Santa Helena, Ascensão e Tristão da Cunha"   |   SH   | 
|   São Cristóvão e Nevis   |   KN   | 
|   Santa Lúcia   |   LC   | 
|   São Martinho   |   MF   | 
|   Saint Pierre e Miquelon   |   PM   | 
|   São Vicente e Granadinas   |   VC   | 
|   Samoa   |   WS   | 
|   São Marinho   |   SM   | 
|   São Tomé e Príncipe   |   ST   | 
|   Arábia Saudita   |   SA   | 
|   Senegal   |   SN   | 
|   Sérvia   |   RS   | 
|   Seichelles   |   SC   | 
|   Serra Leoa   |   SL   | 
|   Cingapura   |   SG   | 
|   Sint Maarten   |   SX   | 
|   Eslováquia   |   SK   | 
|   Eslovênia   |   SI   | 
|   Ilhas Salomão   |   SB   | 
|   Somália   |   SO   | 
|   África do Sul   |   ZA   | 
|   Ilhas Geórgia do Sul e Sandwich do Sul   |   GS   | 
|   Coreia do Sul   |   KR   | 
|   Sudão do Sul   |   SS   | 
|   Espanha   |   ES   | 
|   Sri Lanka   |   LK   | 
|   Sudão   |   SD   | 
|   Suriname   |   SR   | 
|   Svalbard e Jan Mayen   |   SJ   | 
|   Suécia   |   SE   | 
|   Suíça   |   CH   | 
|   República Árabe da Síria   |   SY   | 
|   Taiwan   |   TW   | 
|   Tajiquistão   |   TJ   | 
|   Tanzânia   |   TZ   | 
|   Tailândia   |   TH   | 
|   Timor-Leste   |   TL   | 
|   Togo   |   TG   | 
|   Toquelau   |   TK   | 
|   Tonga   |   TO   | 
|   Trinidad e Tobago   |   TT   | 
|   Tunísia   |   TN   | 
|   Turquia   |   TR   | 
|   Turcomenistão   |   TM   | 
|   Ilhas Turcas e Caicos   |   TC   | 
|   Tuvalu   |   TV   | 
|   Uganda   |   UG   | 
|   Ucrânia   |   UA   | 
|   Emirados Árabes Unidos   |   AE   | 
|   Reino Unido   |   UK   | 
|   Nações Unidas   |   UN   | 
|   Estados Unidos   |   US   | 
|   Ilhas Menores Distantes dos Estados Unidos   |   UM   | 
|   Ilhas Virgens Americanas   |   VI   | 
|   Uruguai   |   UY   | 
|   Uzbequistão   |   UZ   | 
|   Vanuatu   |   VU   | 
|   Cidade do Vaticano   |   VA   | 
|   Venezuela   |   VE   | 
|   Vietnã   |   VN   | 
|   Wallis e Futuna   |   WF   | 
|   Saara Ocidental   |   EH   | 
|   Iêmen   |   YE   | 
|   Zâmbia   |   ZM   | 
|   Zimbábue   |   ZW   | 

# Métricas objetivas
<a name="timeseries-objective-metric"></a>

O Autopilot produz métricas de precisão para avaliar os candidatos ao modelo e ajudar você a escolher quais usar para gerar previsões. Você pode deixar que o Autopilot otimize o preditor para você ou pode escolher manualmente um algoritmo para seu preditor. Por padrão, o Autopilot usa a perda quantílica ponderada média.

A lista a seguir contém os nomes das métricas atualmente disponíveis para medir o desempenho dos modelos para previsão de séries temporais.

**`RMSE`**  
Erro quadrático médio (RMSE): Mede a raiz quadrada da diferença quadrada entre os valores previstos e reais. É calculado como a média de todos os valores. É uma métrica importante para indicar a presença de grandes erros e valores atípicos no modelo. Os valores variam de zero (0) ao infinito, com números menores indicando um melhor ajuste do modelo aos dados. O RMSE depende da escala e não deve ser usado para comparar conjuntos de dados de tamanhos diferentes.

**`wQL`**  
Perda quantil ponderada (wQL): Avalia a precisão da previsão medindo as diferenças absolutas ponderadas entre os quantis P10, P50 e P90 previstos e reais, com valores mais baixos indicando melhor desempenho.

**`Average wQL (default)`**  
Média da perda quantil ponderada (wQL médio): Avalia a previsão calculando a média da precisão nos quantis P10, P50 e P90. Um valor mais baixo indica um modelo mais preciso.

**`MASE`**  
Erro médio absoluto em escala (MASE): O erro médio absoluto da previsão normalizado pelo erro médio absoluto de um método simples de previsão de linha de base. Um valor mais baixo indica um modelo mais preciso, onde MASE < 1 é estimado como melhor do que a linha de base e MASE > 1 é estimado como pior do que a linha de base.

**`MAPE`**  
Erro percentual absoluto médio (MAPE): O erro percentual (diferença percentual do valor médio previsto versus o valor real) calculado em média em todos os pontos temporais. Um valor menor indica um modelo mais preciso, onde MAPE = 0 é um modelo sem erros.

**`WAPE`**  
Erro percentual absoluto ponderado (WAPE): A soma do erro absoluto normalizado pela soma da meta absoluta, que mede o desvio geral dos valores previstos dos valores observados. Um valor mais baixo indica um modelo mais preciso.

# Compatibilidade com algoritmos para previsão de séries temporais
<a name="timeseries-forecasting-algorithms"></a>

O Autopilot treina os seis algoritmos integrados a seguir com sua série temporal alvo. Em seguida, usando um método de conjunto de empilhamento, ele combina esses candidatos a modelos para criar um modelo de previsão ideal para uma determinada métrica objetiva.
+ **Rede Neural Convolucional - Regressão Quantílica (CNN-QR) - CNN-QR** é um algoritmo de aprendizado de máquina proprietário para prever séries temporais usando redes neurais convolucionais causais (). CNNs O CNN-QR funciona melhor com grandes conjuntos de dados contendo centenas de séries temporais.
+ **DeepAr\$1** — O DeepAr\$1 é um algoritmo de aprendizado de máquina proprietário para prever séries temporais usando redes neurais recorrentes (). RNNs O DeepAR\$1 funciona melhor com grandes conjuntos de dados contendo centenas de séries temporais de atributos.
+ **Prophet**: [Prophet](https://facebook.github.io/prophet/) é um conhecido modelo local de séries temporais estruturais bayesianas baseado em um modelo aditivo em que as tendências não lineares se ajustam à sazonalidade anual, semanal e diária. O algoritmo Prophet do Autopilot usa a [classe Prophet](https://facebook.github.io/prophet/docs/quick_start.html#python-ap) da implementação do Python de Prophet. Funciona melhor com séries temporais com fortes efeitos sazonais e várias temporadas de dados históricos. 
+ **Non-Parametric Time Series (NPTS)**: O algoritmo proprietário do NPTS é um previsor de linha de base probabilístico e escalável. Ele prevê a distribuição de um valor futuro de uma determinada série temporal por amostragem de observações passadas. O NPTS é especialmente útil quando se trabalha com séries temporais esparsas ou intermitentes. 
+ **Autoregressive Integrated Moving Average (ARIMA)**: O ARIMA é um algoritmo de estatísticas locais comumente usado para previsões de série temporais. O algoritmo captura várias estruturas temporais padrão (organizações com padrão de tempo) no conjunto de dados de entrada. É especialmente útil para conjuntos de dados simples com menos de 100 séries temporais. 
+ **Exponential Smoothing (ETS)**: O ETS é um algoritmo de estatísticas locais comumente usado para previsão de séries temporais. O algoritmo é especialmente útil para conjuntos de dados simples com menos de 100 séries temporais e conjuntos de dados com padrões de sazonalidade. O ETS calcula uma média ponderada sobre todas as observações no conjunto de dados de séries temporais como sua predição, com ponderações que diminuem exponencialmente ao longo do tempo.

# Previsão de um modelo de Autopilot implantado
<a name="timeseries-forecasting-deploy-models"></a>

Depois de treinar os modelos com a API do AutoML, você pode implantá-los para previsões em tempo real ou baseadas em lotes. 

O API AutoML treina vários candidatos a modelo com os dados de séries temporais e seleciona um modelo de previsão ideal para uma determinada métrica objetiva. Depois que seus candidatos modelo forem treinados, você poderá encontrar o melhor candidato na resposta [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) em [BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-CandidateName).

Para obter predições usando esse modelo de melhor desempenho, você pode configurar um endpoint para obter predições de forma interativa ou usar a predição em lote para fazer predições em um lote das observações.

**Considerações**
+ Ao fornecer dados de entrada para previsão, o esquema de seus dados deve permanecer o mesmo usado para treinar seu modelo, incluindo o número de colunas, cabeçalhos de colunas e tipos de dados. Você pode prever um item novo ou existente IDs dentro do mesmo intervalo de timestamp ou de um intervalo de data e hora diferente para prever um período de tempo diferente.
+ Os modelos de previsão preveem os pontos do horizonte de previsão no futuro especificados na solicitação de entrada no treinamento, que vão da *data final alvo* até a *data final alvo \$1 horizonte de previsão*. Para usar o modelo para prever datas específicas, você deve fornecer os dados no mesmo formato dos dados de entrada originais, estendendo-se até uma *data final específica*. Nesse cenário, o modelo começará a prever a partir da nova data de término prevista.

  Por exemplo, se seu conjunto de dados tivesse dados mensais de janeiro a junho com um horizonte de previsão de 2, o modelo preveria o valor alvo para os próximos 2 meses, que seriam julho e agosto. Se em agosto você quiser prever para os próximos 2 meses, desta vez seus dados de entrada devem ser de janeiro a agosto e o modelo fará a previsão para os próximos 2 meses (setembro, outubro).
+ Ao prever pontos de dados futuros, não há um mínimo definido para a quantidade de dados históricos. Inclua dados suficientes para capturar padrões sazonais e recorrentes em suas séries temporais.

**Topics**
+ [Previsão em tempo real](timeseries-forecasting-realtime.md)
+ [Previsão em lote](timeseries-forecasting-batch.md)

# Previsão em tempo real
<a name="timeseries-forecasting-realtime"></a>

A previsão em tempo real é útil quando você precisa gerar previsões on-the-fly, como para aplicativos que exigem respostas imediatas ou ao fazer previsões para pontos de dados individuais.

Ao implantar o modelo AutoML como um endpoint em tempo real, você pode gerar predições sob demanda e minimizar a latência entre o recebimento de novos dados e a obtenção de predições. Isso torna a previsão em tempo real adequada para aplicações que exigem recursos de previsão imediatos, personalizados ou orientados por eventos.

Para previsão em tempo real, o conjunto de dados deve ser um subconjunto do conjunto de dados de entrada. O endpoint em tempo real tem um tamanho de dados de entrada de aproximadamente 6 MB e uma limitação de tempo limite de resposta de 60 segundos. Recomendamos trazer um ou alguns itens por vez.

Você pode usar SageMaker APIs para recuperar o melhor candidato de um trabalho do AutoML e, em seguida, criar SageMaker um endpoint de IA usando esse candidato.

Como alternativa, você pode escolher a opção de implantação automática ao criar seu experimento de Autopilot. Para obter informações sobre como configurar a implantação automática de modelos, consulte [Como habilitar a implantação automática](autopilot-create-experiment-timeseries-forecasting.md#timeseries-forecasting-auto-model-deployment).

**Para criar um endpoint de SageMaker IA usando seu melhor candidato a modelo:**

1. 

**Recupere os detalhes do trabalho de AutoML.**

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter detalhes da tarefa do AutoML, incluindo as informações sobre o melhor candidato a modelo.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**Extraia a definição do contêiner [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)para o melhor candidato a modelo.**

   Uma definição de contêiner é o ambiente em contêiner usado para hospedar o modelo de SageMaker IA treinado para fazer previsões.

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
     --auto-ml-job-name job-name 
     --region region \
     --query 'BestCandidate.InferenceContainers[0]' \
     --output json
   ```

   Esse comando extrai a definição do contêiner para o melhor candidato a modelo e a armazena na variável `BEST_CANDIDATE`.

1. 

**Crie um modelo de SageMaker IA usando a melhor definição de contêiner candidato.**

   Use as definições de contêiner das etapas anteriores para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API.

   ```
   aws sagemaker create-model \
               --model-name 'your-candidate-name>' \
               --primary-container "$BEST_CANDIDATE"
               --execution-role-arn 'execution-role-arn>' \
               --region 'region>
   ```

   O `--execution-role-arn` parâmetro especifica a função do IAM que a SageMaker IA assume ao usar o modelo para inferência. Para obter detalhes sobre as permissões necessárias para essa função, consulte [CreateModel API: Permissões da função de execução](https://docs.aws.amazon.com/).

1. 

**Crie uma configuração de endpoint de SageMaker IA usando o modelo.**

   O AWS CLI comando a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint.

   ```
   aws sagemaker create-endpoint-config \
     --production-variants file://production-variants.json \
     --region 'region'
   ```

   Onde o arquivo `production-variants.json` contém a configuração do modelo, incluindo o nome do modelo e o tipo de instância.
**nota**  
Recomendamos usar instâncias [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) para previsão em tempo real.

   ```
   [
       {
         "VariantName": "variant-name",
         "ModelName": "model-name",
         "InitialInstanceCount": 1,
         "InstanceType": "m5.12xlarge"
       }
     ]
   }
   ```

1. 

**Crie o endpoint de SageMaker IA usando a configuração do endpoint.**

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint \
               --endpoint-name 'endpoint-name>' \
               --endpoint-config-name 'endpoint-config-name' \
               --region 'region'
   ```

   Verifique o progresso da implantação do endpoint de inferência em tempo real usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint \
               --endpoint-name 'endpoint-name' \
               --region 'region'
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. 

**Invoque o endpoint de SageMaker IA para fazer previsões.**

   ```
   aws sagemaker invoke-endpoint \
               --endpoint-name 'endpoint-name' \ 
               --region 'region' \
               --body file://input-data-in-bytes.json \
               --content-type 'application/json' outfile
   ```

   Onde o arquivo `input-data-in-bytes.json` contém os dados de entrada para a predição.

# Previsão em lote
<a name="timeseries-forecasting-batch"></a>

A predição em lote, também conhecida como inferência offline, gera predições de modelo em um lote de observações. A inferência em lote é uma boa opção para grandes conjuntos de dados ou se você não precisar de uma resposta imediata a uma solicitação de predição de modelo.

Por outro lado, a inferência online (inferência em tempo real) gera predições em tempo real. 

Você pode usar SageMaker APIs para recuperar o melhor candidato de um trabalho do AutoML e, em seguida, enviar um lote de dados de entrada para inferência usando esse candidato.

1. 

**Recupere os detalhes do trabalho de AutoML.**

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter detalhes da tarefa do AutoML, incluindo as informações sobre o melhor candidato a modelo.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. 

**Extraia a definição do contêiner [InferenceContainers](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html#sagemaker-Type-AutoMLCandidate-InferenceContainers)para o melhor candidato a modelo.**

   Uma definição de contêiner é o ambiente em contêiner usado para hospedar o modelo de SageMaker IA treinado para fazer previsões.

   ```
   BEST_CANDIDATE=$(aws sagemaker describe-auto-ml-job-v2 \
         --auto-ml-job-name job-name 
         --region region \
         --query 'BestCandidate.InferenceContainers[0]' \
         --output json
   ```

   Esse comando extrai a definição do contêiner para o melhor candidato a modelo e a armazena na variável `BEST_CANDIDATE`.

1. 

**Crie um modelo de SageMaker IA usando a melhor definição de contêiner candidato.**

   Use as definições de contêiner das etapas anteriores para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API.

   ```
   aws sagemaker create-model \
         --model-name 'model-name' \
         --primary-container "$BEST_CANDIDATE"
         --execution-role-arn 'execution-role-arn>' \
         --region 'region>
   ```

   O `--execution-role-arn` parâmetro especifica a função do IAM que a SageMaker IA assume ao usar o modelo para inferência. Para obter detalhes sobre as permissões necessárias para essa função, consulte [CreateModel API: Permissões da função de execução](https://docs.aws.amazon.com/).

1. 

**Crie um trabalho transformador em lote.**

   O exemplo a seguir cria um trabalho de transformação usando a [CreateTransformJob](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-transform-job.html)API. 

   ```
   aws sagemaker create-transform-job \ 
          --transform-job-name 'transform-job-name' \
          --model-name 'model-name'\
          --transform-input file://transform-input.json \
          --transform-output file://transform-output.json \
          --transform-resources file://transform-resources.json \
          --region 'region'
   ```

   Os detalhes de entrada, saída e recursos são definidos em arquivos JSON separados:
   + `transform-input.json`:

     ```
     {
       "DataSource": {
         "S3DataSource": {
           "S3DataType": "S3Prefix",
           "S3Uri": "s3://my-input-data-bucket/path/to/input/data"
         }
       },
       "ContentType": "text/csv",
       "SplitType": "None"
     }
     ```
   + `transform-output.json`:

     ```
     {
       "S3OutputPath": "s3://my-output-bucket/path/to/output",
       "AssembleWith": "Line"
     }
     ```
   + `transform-resources.json`:
**nota**  
Para previsão em lote, use instâncias [m5.12xlarge](https://aws.amazon.com/ec2/instance-types/m5/) para workloads de uso geral e instâncias `m5.24xlarge` para tarefas de previsão de big data.

     ```
     {
       "InstanceType": "instance-type",
       "InstanceCount": 1
     }
     ```

1. 

**Monitore o progresso do seu trabalho de transformação usando a [DescribeTransformJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTransformJob.html)API.**

   Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-transform-job \
         --transform-job-name 'transform-job-name' \
         --region region
   ```

1. 

**Recuperação da saída da transformação em lote.**

   Depois de concluído o trabalho, o resultado previsto estará disponível em `S3OutputPath`. 

   O nome do arquivo resultante tem o seguinte formato: `input_data_file_name.out`. Por exemplo, se seu arquivo de entrada for `text_x.csv`, o nome de saída será `text_x.csv.out`.

   ```
   aws s3 ls s3://my-output-bucket/path/to/output/
   ```

Os exemplos de código a seguir ilustram o uso do AWS SDK para Python (boto3) e do SDK para previsão em lote. AWS CLI 

------
#### [ AWS SDK for Python (boto3) ]

 O exemplo a seguir usa o **AWS SDK para Python (boto3)** para fazer predições em lotes.

```
import sagemaker 
import boto3

session = sagemaker.session.Session()

sm_client = boto3.client('sagemaker', region_name='us-west-2')
role = 'arn:aws:iam::1234567890:role/sagemaker-execution-role'
output_path = 's3://test-auto-ml-job/output'
input_data = 's3://test-auto-ml-job/test_X.csv'

best_candidate = sm_client.describe_auto_ml_job_v2(AutoMLJobName=job_name)['BestCandidate']
best_candidate_containers = best_candidate['InferenceContainers']
best_candidate_name = best_candidate['CandidateName']

# create model
reponse = sm_client.create_model(
    ModelName = best_candidate_name,
    ExecutionRoleArn = role,
    Containers = best_candidate_containers 
)

# Lauch Transform Job
response = sm_client.create_transform_job(
    TransformJobName=f'{best_candidate_name}-transform-job',
    ModelName=model_name,
    TransformInput={
        'DataSource': {
            'S3DataSource': {
                'S3DataType': 'S3Prefix',
                'S3Uri': input_data
            }
        },
        'ContentType': "text/csv",
        'SplitType': 'None'
    },
    TransformOutput={
        'S3OutputPath': output_path,
        'AssembleWith': 'Line',
    },
    TransformResources={
        'InstanceType': 'ml.m5.2xlarge',
        'InstanceCount': 1,
    },
)
```

O trabalho de inferência em lote retorna uma resposta no formato a seguir.

```
{'TransformJobArn': 'arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-transform-job',
 'ResponseMetadata': {'RequestId': '659f97fc-28c4-440b-b957-a49733f7c2f2',
  'HTTPStatusCode': 200,
  'HTTPHeaders': {'x-amzn-requestid': '659f97fc-28c4-440b-b957-a49733f7c2f2',
   'content-type': 'application/x-amz-json-1.1',
   'content-length': '96',
   'date': 'Thu, 11 Aug 2022 22:23:49 GMT'},
  'RetryAttempts': 0}}
```

------
#### [ AWS Command Line Interface (AWS CLI) ]

1. **Obtenha as definições do melhor contêiner candidato**.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name 'test-automl-job' --region us-west-2
   ```

1. **Crie o modelo**.

   ```
   aws sagemaker create-model --model-name 'test-sagemaker-model'
   --containers '[{
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz",
       "Environment": {
           "AUTOML_SPARSE_ENCODE_RECORDIO_PROTOBUF": "1",
           "AUTOML_TRANSFORM_MODE": "feature-transform",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "application/x-recordio-protobuf",
           "SAGEMAKER_PROGRAM": "sagemaker_serve",
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code"
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.3-1-cpu-py3",
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/tuning/flicdf10v2-dpp0-xgb/test-job1E9-244-7490a1c0/output/model.tar.gz",
       "Environment": {
           "MAX_CONTENT_LENGTH": "20971520",
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv",
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,probabilities" 
       }
   }, {
       "Image": "348316444620.dkr.ecr.us-west-2.amazonaws.com/sagemaker-sklearn-automl:2.5-1-cpu-py3", 
       "ModelDataUrl": "s3://amzn-s3-demo-bucket/out/test-job1/data-processor-models/test-job1-dpp0-1-e569ff7ad77f4e55a7e549a/output/model.tar.gz", 
       "Environment": { 
           "AUTOML_TRANSFORM_MODE": "inverse-label-transform", 
           "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT": "text/csv", 
           "SAGEMAKER_INFERENCE_INPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_OUTPUT": "predicted_label", 
           "SAGEMAKER_INFERENCE_SUPPORTED": "predicted_label,probability,labels,probabilities", 
           "SAGEMAKER_PROGRAM": "sagemaker_serve", 
           "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code" 
       } 
   }]' \
   --execution-role-arn 'arn:aws:iam::1234567890:role/sagemaker-execution-role' \
   --region 'us-west-2'
   ```

1. **Criação de um trabalho de transformação**.

   ```
   aws sagemaker create-transform-job --transform-job-name 'test-tranform-job'\
    --model-name 'test-sagemaker-model'\
    --transform-input '{
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "SplitType": "None"
       }'\
   --transform-output '{
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line"
       }'\
   --transform-resources '{
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       }'\
   --region 'us-west-2'
   ```

1. **Verificação do progresso do trabalho de transformação**. 

   ```
   aws sagemaker describe-transform-job --transform-job-name  'test-tranform-job' --region us-west-2
   ```

   A seguir está a resposta do trabalho de transformação.

   ```
   {
       "TransformJobName": "test-tranform-job",
       "TransformJobArn": "arn:aws:sagemaker:us-west-2:1234567890:transform-job/test-tranform-job",
       "TransformJobStatus": "InProgress",
       "ModelName": "test-model",
       "TransformInput": {
           "DataSource": {
               "S3DataSource": {
                   "S3DataType": "S3Prefix",
                   "S3Uri": "s3://amzn-s3-demo-bucket/data.csv"
               }
           },
           "ContentType": "text/csv",
           "CompressionType": "None",
           "SplitType": "None"
       },
       "TransformOutput": {
           "S3OutputPath": "s3://amzn-s3-demo-bucket/output/",
           "AssembleWith": "Line",
           "KmsKeyId": ""
       },
       "TransformResources": {
           "InstanceType": "ml.m5.2xlarge",
           "InstanceCount": 1
       },
       "CreationTime": 1662495635.679,
       "TransformStartTime": 1662495847.496,
       "DataProcessing": {
           "InputFilter": "$",
           "OutputFilter": "$",
           "JoinSource": "None"
       }
   }
   ```

   Depois de `TransformJobStatus` ser alterado para `Completed`, você pode verificar o resultado da inferência no `S3OutputPath`.

------

# Notebook de exploração de dados Amazon SageMaker Autopilot
<a name="timeseries-forecasting-data-exploration-notebook"></a>

O Amazon SageMaker Autopilot limpa e pré-processa automaticamente seu conjunto de dados. Para ajudar os usuários a entender seus dados, descobrir padrões, relacionamentos e anomalias sobre a série temporal, o SageMaker Amazon Autopilot gera **um relatório estático de exploração de dados na forma de um** caderno para referência dos usuários.

O caderno de exploração de dados é gerado para cada trabalho do Autopilot. O relatório é armazenado em um bucket do Amazon S3 e pode ser acessado pelo caminho de saída do trabalho.

Você pode encontrar o prefixo Amazon S3 para o caderno de exploração de dados na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[AutoMLJobArtifacts.DataExplorationNotebookLocation](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#sagemaker-DescribeAutoMLJobV2-response-AutoMLJobArtifacts)`.

# Relatórios gerados pelo Amazon SageMaker Autopilot
<a name="timeseries-forecasting-reports"></a>

Além do caderno de exploração de dados, o Autopilot gera vários relatórios para o melhor candidato a modelo de cada experimento.
+ Um relatório de explicabilidade fornece informações sobre como o modelo faz previsões. 
+ Um relatório de desempenho fornece uma avaliação quantitativa das capacidades de predição de modelo.
+ Um relatório dos resultados do backtest é gerado após testar o desempenho do modelo em dados históricos. 

## Relatório de explicabilidade
<a name="timeseries-forecasting-explainability-report"></a>

O relatório de explicabilidade do Autopilot ajuda você a entender melhor como os atributos em seus conjuntos de dados afetam as previsões para séries temporais específicas (combinações de itens e dimensões) e pontos temporais. O Autopilot usa uma métrica chamada *Pontuações de impacto* para quantificar o impacto relativo de cada atributo e determinar se eles aumentam ou diminuem os valores previstos.

Por exemplo, considere um cenário de previsão em que o alvo é `sales` e há dois atributos relacionados: `price` e `color`. O Autopilot pode descobrir que a cor do item tem um alto impacto nas vendas de determinados itens, mas um efeito insignificante em outros itens. Também pode descobrir que uma promoção no verão tem um alto impacto nas vendas, mas uma promoção no inverno tem pouco efeito.

O relatório de explicabilidade é gerado somente quando:
+ O conjunto de dados da série temporal inclui colunas de atributos adicionais ou está associado a um calendário de feriados.
+ Os modelos básicos CNN-QR e DeepAR\$1 estão incluídos no conjunto final.

### Interpretar as pontuações de impacto
<a name="timeseries-forecasting-explainability-impact-scores"></a>

As pontuações de impacto medem o impacto relativo que os atributos têm nos valores previstos. Por exemplo, se o `price` atributo tiver uma pontuação de impacto duas vezes maior que o `store location` atributo, você poderá concluir que o preço de um item tem o dobro do impacto nos valores previstos do que a localização da loja.

As pontuações de impacto também fornecem informações sobre se os atributos aumentam ou diminuem os valores previstos.

As pontuações de impacto variam de -1 a 1, onde o sinal indica a direção do impacto. Uma pontuação de 0 indica nenhum impacto, enquanto pontuações próximas a 1 ou -1 indicam um impacto significativo.

É importante observar que as pontuações de impacto medem o impacto relativo dos atributos, não o impacto absoluto. Portanto, as pontuações de impacto não podem ser usadas para determinar se atributos específicos melhoram a precisão do modelo. Se um atributo tiver uma pontuação de impacto baixa, isso não significa necessariamente que ele tenha um baixo impacto nos valores previstos; significa que ele tem um impacto menor nos valores previstos do que outros atributos usados pelo preditor.

### Encontre o relatório de explicabilidade
<a name="timeseries-forecasting-explainability-report-location"></a>

Você pode encontrar o prefixo Amazon S3 para os artefatos de explicabilidade gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.Explainability](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-Explainability)`.

## Relatório de desempenho do modelo
<a name="timeseries-forecasting-model-performance-report"></a>

O relatório de qualidade do modelo do Autopilot (também conhecido como relatório de desempenho) fornece insights e informações de qualidade para o melhor candidato a modelo (melhor preditor) gerado por um trabalho do AutoML. Isso inclui informações sobre os detalhes do trabalho, a função objetiva e as métricas de precisão (`wQL`, `MAPE`, `WAPE`, `RMSE`, `MASE`).

Você pode encontrar o prefixo Amazon S3 para os artefatos do relatório de qualidade do modelo gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.ModelInsights](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-ModelInsights)`.

## Relatório de resultados de backtests
<a name="timeseries-forecasting-model-backtest-report"></a>

Os resultados dos backtests fornecem informações sobre o desempenho de um modelo de previsão de séries temporais, avaliando sua precisão e confiabilidade preditivas. Ele ajuda analistas e cientistas de dados a avaliar seu desempenho em dados históricos e ajuda a entender seu desempenho potencial em dados futuros e invisíveis.

O Autopilot usa backtesting para ajustar parâmetros e produzir métricas de precisão. Durante o backtesting, o Autopilot divide automaticamente seus dados de séries temporais em dois conjuntos, um conjunto de treinamento e um conjunto de testes. O conjunto de treinamento é usado para treinar um modelo que é então usado para gerar previsões para pontos de dados no conjunto de testes. O Autopilot usa esse conjunto de dados de teste para avaliar a precisão do modelo comparando os valores previstos com os valores observados no conjunto de testes.

Você pode encontrar o prefixo Amazon S3 para os artefatos do relatório de qualidade do modelo gerados para o melhor candidato na resposta a `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)` em `[BestCandidate.CandidateProperties.CandidateArtifactLocations.BacktestResults](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html#sagemaker-Type-CandidateArtifactLocations-BacktestResults)`.

# Limites de recursos de previsão de séries temporais do Autopilot
<a name="timeseries-forecasting-limits"></a>

A tabela a seguir lista os limites de recursos para trabalhos de previsão de séries temporais no Amazon SageMaker Autopilot e se você pode ou não ajustar cada limite.


| **Limites de recurso** | **Limite padrão** | **Ajustável** | 
| --- | --- | --- | 
|  Tamanho do conjunto de dados de entrada  |  30 GB  |  Sim  | 
|  Tamanho de um único arquivo do Parquet  |  2 GB  |  Não  | 
|  O número máximo de linhas em um conjunto de dados  |  3 bilhões  |  Sim  | 
|  Número máximo de colunas de agrupamento  |  5  |  Não  | 
|  Número máximo de atributos numéricos  |  13  |  Não  | 
|  Número máximo de atributos categóricos  |  10  |  Não  | 
|  Número máximo de séries temporais (combinações exclusivas de itens e colunas de agrupamento) por conjunto de dados  |  5,000,000  |  Sim  | 
|  Horizonte de Maximum Forecast  |  500  |  Sim  | 

# Crie uma tarefa do AutoML para ajustar os modelos de geração de texto usando a API
<a name="autopilot-create-experiment-finetune-llms"></a>

Modelos de linguagem grandes (LLMs) se destacam em várias tarefas generativas, incluindo geração de texto, resumo, conclusão, resposta a perguntas e muito mais. Seu performance pode ser atribuído ao tamanho significativo e ao treinamento extensivo em diversos conjuntos de dados e várias tarefas. No entanto, domínios específicos, como serviços financeiros e de saúde, podem exigir ajustes personalizados para se adaptarem a dados e casos de uso exclusivos. Ao adaptar seu treinamento ao seu domínio específico, LLMs pode melhorar seu desempenho e fornecer resultados mais precisos para aplicações específicas.

O Autopilot oferece a capacidade de ajustar uma seleção de modelos de texto generativo pré-treinados. Em particular, o Autopilot suporta o **ajuste fino baseado em instruções** de uma seleção de modelos de linguagem grande de uso geral () alimentados por. LLMs JumpStart

**nota**  
Os modelos de geração de texto que suportam o ajuste fino no piloto automático estão atualmente acessíveis exclusivamente nas regiões suportadas pelo Canvas. SageMaker Consulte a documentação do SageMaker Canvas para obter a [lista completa de suas regiões suportadas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html).

O ajuste fino de um modelo pré-treinado requer um conjunto de dados específico de instruções claras que orientem o modelo sobre como gerar resultados ou se comportar para essa tarefa. O modelo aprende com o conjunto de dados, ajustando seus parâmetros de acordo com as instruções fornecidas. O ajuste de acordo com as instruções envolve o uso de exemplos rotulados formatados como pares de resposta a prompt e expressos como instruções. Para obter mais informações sobre o ajuste, consulte [Ajuste de um modelo de base](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-foundation-models-fine-tuning.html).

[As diretrizes a seguir descrevem o processo de criação de um trabalho do Amazon SageMaker Autopilot como um experimento piloto para ajustar a geração de texto LLMs usando a API Reference. SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html)

**nota**  
Tarefas como classificação de texto e imagem, previsão de séries temporais e ajuste de grandes modelos de linguagem estão disponíveis exclusivamente na versão 2 da [API REST do AutoML](autopilot-reference.md). Se sua linguagem preferida for Python, você pode se referir diretamente ao [AWS SDK para Python (Boto3) MLV2 ](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_auto_ml_job_v2.html)[objeto Auto](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.  
Os usuários que preferem a conveniência de uma interface de usuário podem usar o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas-getting-started.html) para acessar modelos pré-treinados e modelos básicos de IA generativos, ou criar modelos personalizados para textos específicos, classificação de imagens, necessidades de previsão ou IA generativa.

Para criar um experimento de piloto automático programaticamente para ajustar um LLM, você pode chamar a [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)API em qualquer linguagem compatível com o Amazon Autopilot ou o. SageMaker AWS CLI

Para obter informações sobre como essa ação da API se traduz em uma função no idioma de sua escolha, consulte a seção [Ver também](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_SeeAlso) de `CreateAutoMLJobV2` e escolha um SDK. Como exemplo, para usuários do Python, veja a sintaxe completa da solicitação de `[create\$1auto\$1ml\$1job\$1v2](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_auto_ml_job_v2)` em AWS SDK para Python (Boto3).

**nota**  
O Autopilot ajusta grandes modelos de linguagem sem exigir que vários candidatos sejam treinados e avaliados. Em vez disso, usando seu conjunto de dados, o Autopilot ajusta diretamente seu modelo de destino para aprimorar uma métrica objetiva padrão, a perda de entropia cruzada. O ajuste fino dos modelos de linguagem no Autopilot não requer a configuração do campo `AutoMLJobObjective`.

Depois que seu LLM estiver ajustado, você poderá avaliar o seu desempenhado acessando várias pontuações ROUGE por meio do `[BestCandidate](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html#sagemaker-Type-CandidateProperties-CandidateMetrics)` ao fazer uma chamada de API `[DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)`. O modelo também fornece informações sobre seu treinamento e perda de validação, bem como sobre sua perplexidade. Para obter uma lista abrangente de métricas para avaliar a qualidade do texto gerado pelos modelos ajustados, consulte [Métricas para ajustar modelos de linguagem grandes no Autopilot](autopilot-llms-finetuning-metrics.md).

## Pré-requisitos
<a name="autopilot-llms-finetuning-api-prerequisites"></a>

Antes de usar o piloto automático para criar um experimento de ajuste fino em SageMaker IA, siga as seguintes etapas:
+ (Opcional) Escolha o modelo pré-treinado que você deseja ajustar.

  Para ver a lista de modelos pré-treinados disponíveis para ajuste fino no Amazon SageMaker Autopilot, consulte. [Modelos de linguagem de grande porte compatíveis para ajuste fino](autopilot-llms-finetuning-models.md) *A seleção de um modelo não é obrigatória; se nenhum modelo for especificado, o Autopilot automaticamente assume como padrão o modelo Falcon7. BInstruct*
+ Criar um conjunto de dados de instruções. Consulte [Tipos de arquivo de conjunto de dados e formato de dados de entrada](autopilot-llms-finetuning-data-format.md) para saber mais sobre os requisitos de formato do seu conjunto de dados de acordo com as instruções.
+ Coloque seus conjuntos de dados em um bucket do Amazon S3.
+ Conceda acesso total ao bucket do Amazon S3 contendo seus dados de entrada para a função de execução de SageMaker IA usada para executar seu experimento.
  + Para obter informações sobre como recuperar sua função de execução de SageMaker IA, consulte[Obtenha um perfil de execução](sagemaker-roles.md#sagemaker-roles-get-execution-role).
  + Para obter informações sobre como conceder permissões de função de execução de SageMaker IA para acessar um ou mais buckets específicos no Amazon S3, *consulte Adicionar permissões adicionais do Amazon S3* a uma função de execução de IA em. SageMaker [Criar perfil de execução](sagemaker-roles.md#sagemaker-roles-create-execution-role)
+ Além disso, você deve fornecer à sua função de execução as permissões necessárias para acessar o bucket de armazenamento padrão do Amazon S3 usado pelo. JumpStart Esse acesso é necessário para armazenar e recuperar artefatos de modelo pré-treinados em. JumpStart Para conceder acesso a esse bucket do Amazon S3, você deve criar uma nova política personalizada em linha em seu perfil de execução.

  Aqui está uma política de exemplo que você pode usar em seu editor JSON ao configurar trabalhos de ajuste do AutoML em `us-west-2`:

  *JumpStartOs nomes dos buckets seguem um padrão predeterminado que depende do Regiões da AWS. Você deve ajustar o nome do bucket adequadamente.* 

  ```
  {
      "Sid": "Statement1",
      "Effect": "Allow",
      "Action": [
          "s3:GetObject",
          "s3:PutObject",
          "s3:ListBucket"
      ],
      "Resource": [
          "arn:aws:s3:::jumpstart-cache-prod-us-west-2",
          "arn:aws:s3:::jumpstart-cache-prod-us-west-2/*"
      ]
  }
  ```

Feito isso, você pode usar o ARN desse perfil de execução nas solicitações da API do Autopilot.

## Parâmetros necessários
<a name="autopilot-llms-finetuning-api-required-params"></a>

Ao chamar `[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)` para criar um experimento de Autopilot para ajuste de LLM, você deve fornecer os seguintes valores:
+ Um `[AutoMLJobName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#API_CreateAutoMLJobV2_RequestSyntax)` para especificar o nome do seu trabalho. O nome deve ser do tipo `string` e ter um comprimento mínimo de 1 caractere e um comprimento máximo de 32.
+ Pelo menos um `[AutoMLJobChannel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)` do `training` tipo dentro do `[AutoMLJobInputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)`. Esse canal especifica o nome do bucket do Amazon S3 onde seu conjunto de dados de ajuste fino está localizado. Você tem a opção de definir um canal `validation`. Se nenhum canal de validação for fornecido e um `ValidationFraction` estiver configurado no [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html), essa fração será utilizada para dividir aleatoriamente o conjunto de dados de treinamento em conjuntos de treinamento e validação. Além disso, você pode especificar o tipo de conteúdo (arquivos CSV ou Parquet) para o conjunto de dados.
+ Um `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)` do tipo `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` para definir as configurações do seu trabalho de treinamento.

  Em particular, você pode especificar o nome do modelo de base a ser ajustado no campo `BaseModelName`. Para ver a lista de modelos pré-treinados disponíveis para ajuste fino no Amazon SageMaker Autopilot, consulte. [Modelos de linguagem de grande porte compatíveis para ajuste fino](autopilot-llms-finetuning-models.md)
+ Um `[OutputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)` para especificar o caminho de saída do Amazon S3 para armazenar os artefatos do seu trabalho do AutoML.
+ Um `[RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html#sagemaker-CreateAutoMLJob-request-RoleArn)` para especificar o ARN do perfil usada para acessar seus dados.

Veja a seguir um exemplo do formato de solicitação completo usado ao fazer uma chamada de API para `CreateAutoMLJobV2` para ajustar um modelo (`Falcon7BInstruct`).

```
{
   "AutoMLJobName": "<job_name>",
   "AutoMLJobInputDataConfig": [ 
      { 
         "ChannelType": "training",
         "CompressionType": "None",
         "ContentType": "text/csv", 
         "DataSource": { 
            "S3DataSource": { 
               "S3DataType": "S3Prefix",
               "S3Uri": "s3://<bucket_name>/<input_data>.csv"
            }
         }
      }
   ],
  "OutputDataConfig": {
      "S3OutputPath": "s3://<bucket_name>/output",
      "KmsKeyId": "arn:aws:kms:<region>:<account_id>:key/<key_value>"
   },
   "RoleArn":"arn:aws:iam::<account_id>:role/<sagemaker_execution_role_name>",
   "AutoMLProblemTypeConfig": {
        "TextGenerationJobConfig": {
            "BaseModelName": "Falcon7BInstruct"
       }
   }
}
```

Todos os outros parâmetros são opcionais.

## Parâmetros opcionais
<a name="autopilot-llms-finetuning-api-optional-params"></a>

As seções a seguir fornecem detalhes de alguns parâmetros opcionais que você pode passar para o seu trabalho AutoML de ajuste.

### Como especificar os conjuntos de dados de treinamento e validação de um trabalho do AutoML
<a name="autopilot-llms-finetuning-data-training-or-validation"></a>

Você pode fornecer seu próprio conjunto de dados da validação e taxa de divisão de dados personalizada, ou deixar o Autopilot dividir o conjunto de dados automaticamente.

Cada [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)objeto (consulte o parâmetro obrigatório [Auto MLJob InputDataConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLJobInputDataConfig)) tem um`ChannelType`, que pode ser definido como um `training` ou `validation` valores que especificam como os dados devem ser usados ao criar um modelo de aprendizado de máquina.

Pelo menos uma fonte de dados deve ser fornecida e no máximo duas fontes de dados são permitidas: uma para dados de treinamento e outra para dados de validação. A forma como você divide os dados em conjuntos de dados de treinamento e validação depende de você ter uma ou duas fontes de dados. 
+ Se você tiver apenas **uma fonte de dados**, a será `ChannelType` definida como `training` padrão e deverá ter esse valor.
  + Se o valor `ValidationFraction` em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html) não estiver definido, 0,2 (20%) dos dados dessa fonte serão usados para a validação por padrão. 
  + Se `ValidationFraction` for definido como um valor entre 0 e 1, o conjunto de dados será dividido com base no valor especificado, em que o valor especifica a fração do conjunto de dados usada para validação.
+ Se você tiver **duas fontes de dados**, a `ChannelType` de um dos objetos `AutoMLJobChannel` deverá ser definida como `training`, o valor padrão. A `ChannelType` da outra fonte de dados deve ser definida como `validation`. As duas fontes de dados devem ter o mesmo formato, CSV ou Parquet, e o mesmo esquema. Nesse caso, você não deve definir o valor para o `ValidationFraction` porque todos os dados de cada fonte são usados para treinamento ou validação. Definir esse valor causa um erro.

### Como habilitar a implantação automática
<a name="autopilot-llms-finetuning-auto-model-deployment"></a>

O Autopilot permite que você implante automaticamente seu modelo ajustado em um endpoint. Para habilitar a implantação automática para seu modelo ajustado, inclua um `[ModelDeployConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-ModelDeployConfig)` na solicitação de trabalho do AutoML. Isso permite a implantação de seu modelo ajustado em um SageMaker endpoint de IA. Abaixo estão as configurações disponíveis para personalização.
+ Para permitir que o Autopilot gere o nome do endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)` como `True`.
+ Para fornecer seu próprio nome para o endpoint, defina `[AutoGenerateEndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents) to False and provide a name of your choice in [EndpointName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html#API_ModelDeployConfig_Contents)`.

### Como definir a aceitação do EULA ao ajustar um modelo usando a API de AutoML
<a name="autopilot-llms-finetuning-set-eula"></a>

Para modelos que exigem a aceitação de um contrato de licença de usuário final antes do ajuste, você pode aceitar o EULA definindo o atributo `AcceptEula` do `[ModelAccessConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelAccessConfig.html)` a `True` em `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` ao configurar seu `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

### Como definir hiperparâmetros para otimizar o processo de aprendizado de um modelo
<a name="autopilot-llms-finetuning-set-hyperparameters"></a>

Você pode otimizar o processo de aprendizado do seu modelo de geração de texto definindo valores de hiperparâmetros no atributo `TextGenerationHyperParameters` de `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` ao configurar seu `[AutoMLProblemTypeConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html#sagemaker-CreateAutoMLJobV2-request-AutoMLProblemTypeConfig)`.

O Autopilot permite a configuração de quatro hiperparâmetros comuns em todos os modelos.
+ `epochCount`: Seu valor deve ser uma string contendo um valor inteiro dentro do intervalo de `1` até `10`.
+ `batchSize`: Seu valor deve ser uma string contendo um valor inteiro dentro do intervalo de `1` até `64`.
+ `learningRate`: Seu valor deve ser uma string contendo um valor de ponto flutuante dentro do intervalo de `0` até `1`.
+ `learningRateWarmupSteps`: Seu valor deve ser uma string contendo um valor inteiro dentro do intervalo de `0` até `250`.

Para obter mais detalhes sobre cada hiperparâmetro, consulte [Hiperparâmetros para otimizar o processo de aprendizado de seus modelos de geração de texto](autopilot-llms-finetuning-hyperparameters.md).

O exemplo de JSON a seguir mostra um `TextGenerationHyperParameters` campo passado para o TextGenerationJobConfig onde todos os quatro hiperparâmetros estão configurados.

```
"AutoMLProblemTypeConfig": {
  "TextGenerationJobConfig": {
    "BaseModelName": "Falcon7B",
    "TextGenerationHyperParameters": {"epochCount":"5", "learningRate":"0.000001", "batchSize": "32", "learningRateWarmupSteps": "10"}
  }
}
```

# Modelos de linguagem de grande porte compatíveis para ajuste fino
<a name="autopilot-llms-finetuning-models"></a>

Usando a API Autopilot, os usuários podem ajustar grandes modelos de linguagem (LLMs) que são desenvolvidos pela Amazon. SageMaker JumpStart

**nota**  
Para modelos de ajuste que exigem a aceitação de um contrato de licença de usuário final, você deve declarar explicitamente a aceitação do EULA ao criar o seu trabalho AutoML. Observe que após o ajuste de um modelo pré-treinado, os pesos do modelo original são alterados, portanto, você não precisa aceitar um EULA depois da implantação do modelo ajustado.  
Para obter informações sobre como aceitar o EULA ao criar um trabalho de ajuste usando a API AutoML, consulte [Como definir a aceitação do EULA ao ajustar um modelo usando a API de AutoML](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-set-eula).

Você pode encontrar os detalhes completos de cada modelo pesquisando sua **ID do JumpStart modelo** na [tabela de modelos](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table) a seguir e, em seguida, seguindo o link na coluna **Fonte**. Esses detalhes podem incluir as linguagens compatíveis com o modelo, os vieses que pode apresentar, os conjuntos de dados empregados para ajuste, e muito mais.

A tabela a seguir lista os JumpStart modelos compatíveis que você pode ajustar com uma tarefa do AutoML.


| JumpStart ID do modelo | `BaseModelName` na solicitação de API | Description | 
| --- | --- | --- | 
| huggingface-textgeneration-dolly-v2-3b-bf16 | Dolly3B |  Dolly 3B é um grande modelo de linguagem que segue instruções de 2,8 bilhões de parâmetros, baseado em [pythia-2.8b](https://huggingface.co/EleutherAI/pythia-2.8b#pythia-28b). Ele é treinado no conjunto de dados de ajuste instruction/response fino [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) e pode realizar tarefas como brainstorming, classificação, perguntas e respostas, geração de texto, extração de informações e resumo.  | 
| huggingface-textgeneration-dolly-v2-7b-bf16 | Dolly7B |  Dolly 7B é um grande modelo de linguagem que segue instruções de 6,9 bilhões de parâmetros, baseado em [pythia-6.9b](https://huggingface.co/EleutherAI/pythia-6.9b). Ele é treinado no conjunto de dados de ajuste instruction/response fino [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) e pode realizar tarefas como brainstorming, classificação, perguntas e respostas, geração de texto, extração de informações e resumo.  | 
| huggingface-textgeneration-dolly-v2-12b-bf16 | Dolly12B |  Dolly 12B é um grande modelo de linguagem que segue instruções de 12 bilhões de parâmetros, baseado em [pythia-12b](https://huggingface.co/EleutherAI/pythia-12b). Ele é treinado no conjunto de dados de ajuste instruction/response fino [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) e pode realizar tarefas como brainstorming, classificação, perguntas e respostas, geração de texto, extração de informações e resumo.  | 
| huggingface-llm-falcon-7b-bf16 | Falcon7B |  O Falcon 7B é um grande modelo de linguagem causal de 7 bilhões de parâmetros treinados em 1.500 bilhões de tokens aprimorados com corpora selecionados. O Falcon-7B é treinado apenas com dados em inglês e francês e não tende a generalizar adequadamente em outros idiomas. Como o modelo foi treinado em grandes quantidades de dados da web, ele carrega os estereótipos e vieses comumente encontrados online.  | 
| huggingface-llm-falcon-7b-instruct-bf16 | Falcon7BInstruct |  O Falcon 7B Instruct é um modelo de grande linguagem causal de 7 bilhões de parâmetros construído no Falcon 7B e ajustado em uma mistura de 250 milhões de tokens de conjuntos de dados. chat/instruct O Falcon 7B Instruct é treinado principalmente em dados em inglês e não tende a generalizar adequadamente em outros idiomas. Além disso, por ser treinado em uma corpora representativa em grande escala da web, ele carrega os estereótipos e preconceitos comumente encontrados online.  | 
| huggingface-llm-falcon-40b-bf16 | Falcon40B |  O Falcon 40B é um grande modelo de linguagem causal de 40 bilhões de parâmetros treinados em 1 trilhão de tokens aprimorados com corpora selecionados. É treinado principalmente em inglês, alemão, espanhol e francês, com capacidades limitadas em italiano, português, polonês, holandês, romeno, tcheco e sueco. Não tende a generalizar adequadamente em outros idiomas. Além disso, por ser treinado em uma corpora representativa em grande escala da web, ele carrega os estereótipos e preconceitos comumente encontrados online.  | 
| huggingface-llm-falcon-40b-instruct-bf16 | Falcon40BInstruct |  O Falcon 40B Instruct é um grande modelo de linguagem causal de 40 bilhões de parâmetros, baseado no Falcon40B e ajustado em uma mistura de Baize. Ele é treinado principalmente em dados em inglês e francês e não se generaliza adequadamente em outros idiomas. Além disso, por ser treinado em uma corpora representativa em grande escala da web, ele carrega os estereótipos e preconceitos comumente encontrados online.   | 
| huggingface-text2text-flan-t5-large | FlanT5L |  A família de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) é um conjunto de grandes modelos de linguagem que são ajustados em várias tarefas e podem ser treinados posteriormente. Esses modelos são adequados para tarefas como tradução de idiomas, geração de texto, conclusão de frases, desambiguação de sentido de palavras, resumo ou resposta a perguntas. O Flan T5 L é um grande modelo de linguagem de 780 milhões de parâmetros treinados em vários idiomas. [Você pode encontrar a lista dos idiomas suportados pelo Flan T5 L nos detalhes do modelo recuperados de sua pesquisa por ID do modelo na tabela JumpStart do modelo.](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| huggingface-text2text-flan-t5-xl | FlanT5XL |  A família de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) é um conjunto de grandes modelos de linguagem que são ajustados em várias tarefas e podem ser treinados posteriormente. Esses modelos são adequados para tarefas como tradução de idiomas, geração de texto, conclusão de frases, desambiguação de sentido de palavras, resumo ou resposta a perguntas. O Flan T5 XL é um grande modelo de linguagem de 3 bilhões de parâmetros treinados em vários idiomas. [Você pode encontrar a lista dos idiomas suportados pelo Flan T5 XL nos detalhes do modelo recuperados de sua pesquisa por ID do modelo na JumpStart tabela do modelo.](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| huggingface-text2text-flan-t5-xxll | FlanT5XXL |  A família de modelos [https://huggingface.co/docs/transformers/model_doc/t5](https://huggingface.co/docs/transformers/model_doc/t5) é um conjunto de grandes modelos de linguagem que são ajustados em várias tarefas e podem ser treinados posteriormente. Esses modelos são adequados para tarefas como tradução de idiomas, geração de texto, conclusão de frases, desambiguação de sentido de palavras, resumo ou resposta a perguntas. O Flan T5 XXL é um modelo de 11 bilhões de parâmetros. [Você pode encontrar a lista dos idiomas suportados pelo Flan T5 XXL nos detalhes do modelo recuperados de sua pesquisa por ID do modelo na JumpStart tabela do modelo.](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html#built-in-algorithms-with-pre-trained-model-table)  | 
| meta-textgeneration-llama-2-7b | Llama2-7B |  O Llama 2 é uma coleção de modelos de texto generativo pré-treinados e ajustados, que variam em escala de 7 bilhões a 70 bilhões de parâmetros. O Llama2-7B é o modelo de 7 bilhões de parâmetros destinados ao uso em inglês e pode ser adaptado para uma variedade de tarefas de geração de linguagem natural.  | 
| meta-textgeneration-llama-2-7b-f | Llama2-7BChat |  O Llama 2 é uma coleção de modelos de texto generativo pré-treinados e ajustados, que variam em escala de 7 bilhões a 70 bilhões de parâmetros. O Llama2-7B é o modelo de chat de 7 bilhões de parâmetros otimizados para casos de uso de diálogo.  | 
| meta-textgeneration-llama-2-13b | Llama2-13B |  O Llama 2 é uma coleção de modelos de texto generativo pré-treinados e ajustados, que variam em escala de 7 bilhões a 70 bilhões de parâmetros. O Llama2-13B é o modelo de 13 bilhões de parâmetros destinados ao uso em inglês e pode ser adaptado para uma variedade de tarefas de geração de linguagem natural.  | 
| meta-textgeneration-llama-2-13b-f | Llama2-13BChat |  O Llama 2 é uma coleção de modelos de texto generativo pré-treinados e ajustados, que variam em escala de 7 bilhões a 70 bilhões de parâmetros. O Llama2-13B é o modelo de chat de 13 bilhões de parâmetros otimizados para casos de uso de diálogo.  | 
| huggingface-llm-mistral-7b | Mistral7B |  O Mistral 7B é um código de sete bilhões de parâmetros e um modelo de geração de texto em inglês de uso geral. Pode ser usado em vários casos de uso, incluindo resumo de texto, classificação, preenchimento de texto ou preenchimento de código.  | 
| huggingface-llm-mistral-7b-instruct | Mistral7BInstruct |  O Mistral 7B Instruct é a versão do Mistral 7B ajustada para casos de uso de conversação. Especializado, com o uso de uma variedade de conjuntos de dados de conversação disponíveis publicamente em inglês.  | 
| huggingface-textgeneration1-mpt-7b-bf16 | MPT7B |  O MPT 7B é um grande modelo de linguagem transformador no estilo decodificador com 6,7 bilhões de parâmetros, pré-treinados do zero em 1 trilhão de tokens de texto e código em inglês. Preparado para lidar com longos comprimentos de contexto.  | 
| huggingface-textgeneration1-mpt-7b-instruct-bf16 | MPT7BInstruct |  O MPT 7B Instruct é um modelo para instruções curtas após tarefas. Construído ajustando o MPT 7B em um conjunto de dados derivado dos conjuntos de dados [databricks-dolly-15k](https://huggingface.co/datasets/databricks/databricks-dolly-15k) e dos conjuntos de dados [Anthropic Helpful and Harmless (HH-RLHF)](https://huggingface.co/datasets/Anthropic/hh-rlhf).  | 

# Tipos de arquivo de conjunto de dados e formato de dados de entrada
<a name="autopilot-llms-finetuning-data-format"></a>

O ajuste fino baseado em instruções usa conjuntos de dados rotulados para melhorar o desempenho de tarefas pré-treinadas LLMs em tarefas específicas de processamento de linguagem natural (PNL). Os exemplos rotulados são formatados como prompts, pares de respostas a prompt e expressos como instruções.



Para saber mais sobre os tipos de arquivo de conjunto de dados compatíveis, consulte [Tipos de arquivos compatíveis do conjunto de dados compatíveis](#autopilot-llms-finetuning-dataset-format).

Para saber mais sobre o formato de dados de entrada, consulte [Formato de dados de entrada para ajuste fino baseado em instruções](#autopilot-llms-finetuning-input-format).

## Tipos de arquivos compatíveis do conjunto de dados compatíveis
<a name="autopilot-llms-finetuning-dataset-format"></a>

O Autopilot é compatível com conjuntos de dados de ajuste de acordo com as instruções formatados como arquivos CSV (padrão) ou como arquivos Parquet.
+ **CSV** (valores separados por vírgula) é um formato de arquivo em linhas que armazena dados em texto simples legível por humanos, o que é uma escolha frequente para troca de dados, pois é compatível com uma ampla variedade de aplicações.
+ O **Parquet** é um formato de arquivo em colunas, binário, no qual os dados são armazenados e processados com mais eficiência do que em formatos de arquivo de leitura humana como o CSV. Isso os torna uma opção melhor para problemas de big data.

**nota**  
O conjunto de dados pode consistir em vários arquivos, cada um dos quais deve seguir um modelo específico. Para obter informações sobre como formatar seus dados de entrada, consulte [Formato de dados de entrada para ajuste fino baseado em instruções](#autopilot-llms-finetuning-input-format).

## Formato de dados de entrada para ajuste fino baseado em instruções
<a name="autopilot-llms-finetuning-input-format"></a>

Cada arquivo do conjunto de dados deve seguir o seguinte formato:
+ O conjunto de dados deve conter exatamente duas colunas separadas por vírgula e nomeadas, `input` e `output`. O Autopilot não permite colunas adicionais. 
+ As colunas `input` contêm os prompts e as `output` correspondentes contêm a resposta esperada. Tanto o `input` quanto `output` estão no formato de string.

O exemplo a seguir ilustra o formato de dados de entrada para o ajuste fino baseado em instruções no Autopilot.

```
input,output
"<prompt text>","<expected generated text>"
```

**nota**  
Recomendamos usar conjuntos de dados com no mínimo 1.000 linhas para garantir o aprendizado e o performance ideais do modelo.

Além disso, o Autopilot define um limite máximo para o número de linhas no conjunto de dados e o tamanho do contexto com base no tipo de modelo que está sendo usado.
+ Os limites do número de linhas em um conjunto de dados se aplicam à contagem cumulativa de linhas em todos os arquivos dentro do conjunto de dados, incluindo vários arquivos. Se houver dois [tipos de canais](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html) definidos (um para treinamento e outro para validação), o limite se aplicará ao número total de linhas em todos os conjuntos de dados em ambos os canais. Quando o número de linhas excede o limite, o trabalho falha com um erro de validação.
+ Quando o comprimento da entrada ou saída de uma linha no conjunto de dados excede o limite definido no contexto do modelo de linguagem, ele é automaticamente truncado. Se mais de 60% das linhas no conjunto de dados estiverem truncadas, seja na entrada ou na saída, o Autopilot falhará no trabalho com um erro de validação.

A tabela a seguir apresenta esses limites para cada modelo.


| JumpStart ID do modelo | `BaseModelName` na solicitação de API | Limite de linhas | Limite de comprimento do contexto | 
| --- | --- | --- | --- | 
| huggingface-textgeneration-dolly-v2-3b-bf16 | Dolly3B | 10.000 linhas | 1.024 tokens | 
| huggingface-textgeneration-dolly-v2-7b-bf16 | Dolly7B | 10.000 linhas | 1.024 tokens | 
| huggingface-textgeneration-dolly-v2-12b-bf16 | Dolly12B | 10.000 linhas | 1.024 tokens | 
| huggingface-llm-falcon-7b-bf16 | Falcon7B | 1.000 linhas | 1.024 tokens | 
| huggingface-llm-falcon-7b-instruct-bf16 | Falcon7BInstruct | 1.000 linhas | 1.024 tokens | 
| huggingface-llm-falcon-40b-bf16 | Falcon40B | 10.000 linhas | 1.024 tokens | 
| huggingface-llm-falcon-40b-instruct-bf16 | Falcon40BInstruct | 10.000 linhas | 1.024 tokens | 
| huggingface-text2text-flan-t5-large | FlanT5L | 10.000 linhas | 1.024 tokens | 
| huggingface-text2text-flan-t5-xl | FlanT5XL | 10.000 linhas | 1.024 tokens | 
| huggingface-text2text-flan-t5-xxll | FlanT5XXL | 10.000 linhas | 1.024 tokens | 
| meta-textgeneration-llama-2-7b | Llama2-7B | 10.000 linhas | 2.048 tokens | 
| meta-textgeneration-llama-2-7b-f | Llama2-7BChat | 10.000 linhas | 2.048 tokens | 
| meta-textgeneration-llama-2-13b | Llama2-13B | 7.000 linhas | 2.048 tokens | 
| meta-textgeneration-llama-2-13b-f | Llama2-13BChat | 7.000 linhas | 2.048 tokens | 
| huggingface-llm-mistral-7b | Mistral7B | 10.000 linhas | 2.048 tokens | 
| huggingface-llm-mistral-7b-instruct | Mistral7BInstruct | 10.000 linhas | 2.048 tokens | 
| huggingface-textgeneration1-mpt-7b-bf16 | MPT7B | 10.000 linhas | 1.024 tokens | 
| huggingface-textgeneration1-mpt-7b-instruct-bf16 | MPT7BInstruct | 10.000 linhas | 1.024 tokens | 

# Hiperparâmetros para otimizar o processo de aprendizado de seus modelos de geração de texto
<a name="autopilot-llms-finetuning-hyperparameters"></a>

Você pode otimizar o processo de aprendizado do seu modelo básico ajustando qualquer combinação dos seguintes hiperparâmetros: Esses parâmetros já estão disponíveis para todos os modelos.
+ **Contagem de Época**: o hiperparâmetro `epochCount` determina quantas vezes o modelo passa por todo o conjunto de dados de treinamento. Ela influencia a duração do treinamento e pode evitar o sobreajuste quando configurada adequadamente. Um grande número de épocas pode aumentar o runtime geral dos trabalhos de ajuste. Recomendamos definir um grande `MaxAutoMLJobRuntimeInSeconds` dentro do `CompletionCriteria` de `[TextGenerationJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)` para evitar que os trabalhos de ajuste sejam interrompidos prematuramente.
+ **Tamanho do Lote**: o hiperparâmetro `batchSize` define o número de amostras de dados usadas em cada iteração do treinamento. Isso pode afetar a velocidade de convergência e o uso da memória. Com um lote grande, o risco de erros de falta de memória (OOM) aumenta, o que pode surgir como um erro interno do servidor no Autopilot. Para verificar esse erro, verifique o grupo de logs `/aws/sagemaker/TrainingJobs` dos trabalhos de treinamento iniciados pelo trabalho do Autopilot. Você pode acessar esses CloudWatch logins no console AWS de gerenciamento. Escolha **Logs** e depois escolha `/aws/sagemaker/TrainingJobs` **grupo de logs**. Para corrigir erros do OOM, reduza o tamanho do lote.

  Recomendamos começar com um tamanho de lote de 1 e aumentá-lo incrementalmente até surgir algum erro por falta de memória. Como referência, 10 épocas normalmente levam até 72h para serem concluídas.
+ **Taxa de Aprendizado**: o hiperparâmetro `learningRate` controla o tamanho da etapa na qual os parâmetros do modelo são atualizados durante o treinamento. Determina a rapidez ou a lentidão os parâmetros do modelo são atualizados durante o treinamento. Uma alta taxa de aprendizado significa que os parâmetros são atualizados em uma etapa grande, o que pode levar a uma convergência mais rápida, no entanto, também pode fazer com que o processo de otimização ultrapasse a solução ideal e torne-se instável. Uma taxa de aprendizado baixa significa que os parâmetros são atualizados em etapas pequenas, o que pode levar a uma convergência mais estável, no entanto, ao custo de um aprendizado mais lento.
+ **Etapas de aquecimento da taxa de aprendizado**: O hiperparâmetro `learningRateWarmupSteps` especifica o número de etapas de treinamento nas quais a taxa de aprendizado aumenta gradualmente antes de atingir sua meta ou valor máximo. Isso ajuda o modelo a convergir com mais eficiência e evitar problemas como divergência ou convergência lenta que podem surgir com uma taxa de aprendizado inicialmente alta.

Para saber como ajustar os hiperparâmetros do experimento de ajuste no Autopilot e descobrir seus valores possíveis, consulte [Como definir hiperparâmetros para otimizar o processo de aprendizado de um modelo](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-set-hyperparameters).

# Métricas para ajustar modelos de linguagem grandes no Autopilot
<a name="autopilot-llms-finetuning-metrics"></a>

A seção a seguir descreve as métricas que você pode usar para entender seus modelos de linguagem grandes e ajustados (). LLMs Usando seu conjunto de dados, o Autopilot ajusta diretamente seu LLM alvo para aprimorar uma métrica objetiva padrão, a perda de entropia cruzada.

A perda de entropia cruzada é uma métrica amplamente usada para avaliar a dissimilaridade entre a distribuição de probabilidade prevista e a distribuição real das palavras nos dados de treinamento. Ao minimizar a perda de entropia cruzada, o modelo aprende a fazer predições mais precisas e contextualmente relevantes, principalmente em tarefas relacionadas à geração de texto.

Depois de ajustar um LLM, você pode avaliar a qualidade do texto gerado usando uma variedade de pontuações do ROUGE. Além disso, você pode analisar as perdas de treinamento e validação de perplexidade e entropia cruzada como parte do processo de avaliação.
+ A perda de perplexidade mede o quão bem o modelo pode prever a próxima palavra em uma sequência de texto, com valores mais baixos indicando uma melhor compreensão do idioma e do contexto. 
+ O Recall-Oriented Understudy for Gisting Evaluation (ROUGE) é um conjunto de métricas usadas no campo do processamento de linguagem natural (PLN) e de machine learning para avaliar a qualidade do texto gerado por máquina, como resumo de texto ou geração de texto. Ele avalia principalmente as semelhanças entre o texto gerado e o texto de referência da verdade básica (escrito por humanos) de um conjunto de dados de validação. As medidas do ROUGE são projetadas para avaliar vários aspectos da similaridade de texto, incluindo a precisão e a recordação de n-gramas (sequências contíguas de palavras) nos textos gerados pelo sistema e de referência. O objetivo é avaliar o quão bem um modelo captura as informações presentes no texto de referência.

  Existem várias variantes das métricas do ROUGE, dependendo do tipo de n-gramas usados e dos aspectos específicos da qualidade do texto em avaliação.

  A lista a seguir contém o nome e a descrição das métricas do ROUGE disponíveis após o ajuste de grandes modelos de linguagem no Autopilot.  
**`ROUGE-1`, `ROUGE-2`**  
ROUGE-N, a métrica principal ROUGE, mede a sobreposição de n-gramas entre os textos gerados pelo sistema e os textos de referência. ROUGE-N pode ser ajustado para diferentes valores de `n` (aqui `1` ou `2`) para avaliar o quão bem o texto gerado pelo sistema captura os n-gramas do texto de referência.  
**`ROUGE-L`**  
ROUGE-L (ROUGE-Longest Common Subsequence) calcula a maior subsequência comum entre o texto gerado pelo sistema e o texto de referência. Essa variante considera a ordem das palavras, além da sobreposição de conteúdo.  
**`ROUGE-L-Sum`**  
ROUGE-L-SUM (Longest Common Subsequence for Summarization) foi projetado para a avaliação de sistemas de resumo de texto. Ele se concentra em medir a maior subsequência comum entre o resumo gerado pela máquina e o resumo de referência. ROUGE-L-SUM leva em consideração a ordem das palavras no texto, o que é importante nas tarefas de resumo do texto.

# Implantação e predições de modelo do Autopilot
<a name="autopilot-llms-finetuning-deploy-models"></a>

Depois de ajustar um grande modelo de linguagem (LLM), você pode implantar o modelo para geração de texto em tempo real configurando um endpoint para obter predições interativas.

**nota**  
Recomendamos executar trabalhos de inferência em tempo real `ml.g5.12xlarge` para obter melhores performances. Como alternativa, as instâncias `ml.g5.8xlarge` são adequadas para tarefas de geração de texto Falcon-7B-Instruct e MPT-7B-Instruct.  
Você pode encontrar as especificidades dessas instâncias na categoria [Computação acelerada](https://aws.amazon.com/ec2/instance-types/) na seleção de tipos de instância fornecidos pelo Amazon EC2.

## Geração de texto em tempo real
<a name="autopilot-llms-finetuning-realtime"></a>

Você pode usar SageMaker APIs para implantar manualmente seu modelo ajustado em um endpoint de [inferência em tempo real do SageMaker AI Hosting e, em seguida, começar a fazer previsões invocando o endpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints.html) da seguinte maneira.

**nota**  
Como alternativa, você pode escolher a opção de implantação automática o criar seu experimento de ajuste fino no Autopilot. Para obter informações sobre como configurar a implantação automática de modelos, consulte [Como habilitar a implantação automática](autopilot-create-experiment-finetune-llms.md#autopilot-llms-finetuning-auto-model-deployment).   
Você também pode usar o SDK do SageMaker Python e a `JumpStartModel` classe para realizar inferências com modelos ajustados pelo Autopilot. Isso pode ser feito especificando um local personalizado para o artefato do modelo no Amazon S3. Para obter informações sobre como definir seu modelo como JumpStart modelo e implantar seu modelo para inferência, consulte [Implantação de baixo código com](https://sagemaker.readthedocs.io/en/stable/overview.html#deploy-a-pre-trained-model-directly-to-a-sagemaker-endpoint) a classe. JumpStartModel 

1. **Obtenha as definições do contêiner de inferência candidato**

   Você pode encontrar o `InferenceContainerDefinitions` interior do `BestCandidate` objeto recuperado da resposta à chamada da API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html#API_DescribeAutoMLJobV2_ResponseSyntax). Uma definição de contêiner para inferência refere-se ao ambiente em contêineres projetado para implantar e executar seu modelo treinado para fazer predições.

   O exemplo de AWS CLI comando a seguir usa a API [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) para obter as definições de contêiner recomendadas para o nome do seu trabalho.

   ```
   aws sagemaker describe-auto-ml-job-v2 --auto-ml-job-name job-name --region region
   ```

1. **Crie um modelo de SageMaker IA**

   Use as definições de contêiner da etapa anterior para criar um modelo de SageMaker IA usando a [CreateModel](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. Veja o AWS CLI comando a seguir como exemplo. Use o `CandidateName` para o nome do modelo.

   ```
   aws sagemaker create-model --model-name '<your-candidate-name>' \
                       --primary-container '<container-definition' \
                       --execution-role-arn '<execution-role-arn>' --region '<region>
   ```

1. **Criar uma configuração de endpoint**

   O exemplo de AWS CLI comando a seguir usa a [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API para criar uma configuração de endpoint.
**nota**  
Para evitar que a criação do endpoint atinja o tempo limite devido a um longo download do modelo, recomendamos configurar `ModelDataDownloadTimeoutInSeconds = 3600` e `ContainerStartupHealthCheckTimeoutInSeconds = 3600`.

   ```
   aws sagemaker create-endpoint-config --endpoint-config-name '<your-endpoint-config-name>' \
                       --production-variants '<list-of-production-variants>' ModelDataDownloadTimeoutInSeconds=3600 ContainerStartupHealthCheckTimeoutInSeconds=3600 \
                       --region '<region>'
   ```

1. **Criar o endpoint** 

   O AWS CLI exemplo a seguir usa a [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API para criar o endpoint.

   ```
   aws sagemaker create-endpoint --endpoint-name '<your-endpoint-name>' \
                       --endpoint-config-name '<endpoint-config-name-you-just-created>' \
                       --region '<region>'
   ```

   Verifique o progresso da implantação do seu endpoint usando a [DescribeEndpoint](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html)API. Veja o AWS CLI comando a seguir como exemplo.

   ```
   aws sagemaker describe-endpoint —endpoint-name '<endpoint-name>' —region <region>
   ```

   Depois que `EndpointStatus` muda para `InService`, o endpoint está pronto para ser usado para inferência em tempo real.

1. **Invocar o endpoint** 

   O comando a seguir invoca o endpoint para inferência em tempo real. Seu prompt precisa ser codificado em bytes.
**nota**  
O formato do seu prompt de entrada depende do modelo de linguagem. Para obter mais informações sobre o formato de promtps de geração de texto, consulte [Formato de solicitação para inferência em tempo real de modelos de geração de texto](#autopilot-llms-finetuning-realtime-prompt-examples). 

   ```
   aws sagemaker invoke-endpoint --endpoint-name '<endpoint-name>' \ 
                     --region '<region>' --body '<your-promt-in-bytes>' [--content-type] 'application/json' <outfile>
   ```

## Formato de solicitação para inferência em tempo real de modelos de geração de texto
<a name="autopilot-llms-finetuning-realtime-prompt-examples"></a>

Diferentes modelos de linguagem grande (LLMs) podem ter dependências específicas de software, ambientes de execução e requisitos de hardware que influenciam o contêiner recomendado pelo Autopilot para hospedar o modelo para inferência. Adicionalmente, cada modelo determina o formato de dados de entrada necessário e o formato esperado para predições e resultados.

Aqui estão exemplos de entradas para alguns modelos e contêineres recomendados.
+ Para modelos Falcon com o contêiner `huggingface-pytorch-tgi-inference:2.0.1-tgi1.0.3-gpu-py39-cu118-ubuntu20.04` recomendado:

  ```
  payload = {
      "inputs": "Large language model fine-tuning is defined as",
      "parameters": {
          "do_sample": false,
          "top_p": 0.9,
          "temperature": 0.1,
          "max_new_tokens": 128,
          "stop": ["<|endoftext|>", "</s>"]
      }
  }
  ```
+ Para outros modelos com o contêiner `djl-inference:0.22.1-fastertransformer5.3.0-cu118` recomendado:

  ```
  payload= {
      "text_inputs": "Large language model fine-tuning is defined as"
  }
  ```

# Crie um experimento de Regressão ou de Classificação do Autopilot com os dados tabulares usando a interface do usuário do Studio Classic
<a name="autopilot-automate-model-development-create-experiment-ui"></a>

**Importante**  
Em 30 de novembro de 2023, a interface do usuário do Autopilot está migrando para o [Amazon SageMaker Canvas](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) como parte da experiência atualizada do [Amazon SageMaker Studio](studio-updated.md). SageMaker O Canvas fornece aos analistas e cientistas de dados cidadãos recursos sem código para tarefas como preparação de dados, engenharia de recursos, seleção de algoritmos, treinamento e ajuste, inferência e muito mais. Os usuários podem aproveitar visualizações integradas e análises hipotéticas para explorar seus dados e diferentes cenários, com predições automatizadas que permitem que eles produzam facilmente seus modelos. O Canvas é compatível com uma variedade de casos de uso, incluindo visão computacional, previsão de demanda, pesquisa inteligente e IA generativa.  
 Os usuários do [Amazon SageMaker Studio Classic](studio.md), a experiência anterior do [Studio](studio-updated.md), podem continuar usando a interface do usuário do Autopilot no Studio Classic. Usuários com experiência em programação podem continuar usando todas as [referências de API](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-reference.html) em qualquer SDK compatível para implementação técnica.  
Se você usa o Autopilot no Studio Classic até agora e deseja migrar para o SageMaker Canvas, talvez seja necessário conceder permissões adicionais ao seu perfil de usuário ou função do IAM para poder criar e usar o aplicativo SageMaker Canvas. Para obter mais informações, consulte [(Opcional) Migrar do piloto automático no Studio Classic para o Canvas SageMaker](studio-updated-migrate-ui.md#studio-updated-migrate-autopilot).  
[Todas as instruções relacionadas à interface do usuário neste guia se referem aos recursos autônomos do Autopilot antes da migração para o Amazon Canvas. SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/canvas.html) Os usuários que seguem essas instruções devem usar o [Studio Classic](studio.md).

Você pode usar a interface do usuário do Amazon SageMaker Studio Classic para criar experimentos de piloto automático para problemas de classificação ou regressão em dados tabulares. A interface do usuário ajuda a especificar o nome do seu experimento, fornecer locais para os dados de entrada e saída e especificar quais dados de destino deve prever. Opcionalmente, você também pode especificar o tipo de problema que deseja resolver (regressão, classificação, classificação multiclasse), escolha a estratégia de modelagem (*conjuntos empilhados* ou *otimização de hiperparâmetros*), selecione a lista de algoritmos usados pelo trabalho do Autopilot para treinar os dados e muito mais. 

A interface do usuário tem descrições, opções de alternância, menus suspensos, botões de opção e muito mais para ajudá-lo a navegar na criação de seus candidatos a modelo. Depois de executado o 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. Opcionalmente, você tem a opção de baixar seus relatórios de [explicabilidade](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-explainability.html) e [desempenho](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-insights.html). Use os [cadernos](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-notebook-output.html ) fornecidos para ver os resultados da exploração automatizada de dados ou as definições do modelo candidato.

 Alternativamente, é possível usar a API de Autopilot AutoML em [Crie trabalhos de regressão ou classificação para dados tabulares com a API do AutoML](autopilot-automate-model-development-create-experiment.md).

# Configurar os parâmetros padrão de um experimento do Autopilot (para administradores)
<a name="autopilot-set-default-parameters-create-experiment"></a>

O Autopilot suporta a definição de valores padrão para simplificar a configuração do Amazon SageMaker Autopilot quando você cria um experimento do Autopilot usando a interface do Studio Classic. Os administradores podem usar [as configurações de ciclo de vida](studio-lcc.md) (LCC) do Studio Classic para definir valores de infraestrutura, rede e segurança nos arquivos de configuração e preencher previamente as [configurações avançadas](autopilot-automate-model-development-create-experiment-ui.md#advanced-settings) dos trabalhos `AutoML`.

Ao fazer isso, eles podem controlar totalmente a conectividade de rede e as permissões de acesso aos recursos associados ao Amazon SageMaker Studio Classic, incluindo instâncias de SageMaker IA, fontes de dados, dados de saída e outros serviços relacionados. Especificamente, os administradores podem configurar a arquitetura de rede desejada, como Amazon VPC, sub-redes e grupos de segurança, para um domínio do Studio Classic ou perfis de usuário individuais. Os cientistas de dados podem se concentrar nos parâmetros específicos da ciência de dados ao criar seus experimentos do Autopilot usando a interface do usuário do Studio Classic. Além disso, os administradores podem gerenciar a criptografia de dados na instância em que os experimentos do Autopilot são executados definindo chaves de criptografia padrão.

**nota**  
Este atributo está disponível nas regiões Ásia-Pacífico (Hong Kong) e Oriente Médio (Bahrein).

Nas seções a seguir, você pode encontrar a lista completa de parâmetros que dão compatibilidade com a configuração de padrões na criação de um experimento do Autopilot com a interface do usuário do Studio Classic e aprender a definir esses valores padrão.

**Topics**
+ [Lista de parâmetros padrão compatíveis](#autopilot-list-default-parameters-create-experiment)
+ [Defina os parâmetros padrão do experimento do Autopilot](#autopilot-set-default-parameters-create-experiment-howto)

## Lista de parâmetros padrão compatíveis
<a name="autopilot-list-default-parameters-create-experiment"></a>

Os parâmetros a seguir oferecem apoio à definição de valores padrão com um arquivo de configuração para a criação de um experimento do Autopilot usando a interface do usuário do Studio Classic. Após definidos, os valores preenchem automaticamente o campo correspondente na guia **Criar Experimento** do Autopilot na interface do usuário do Studio Classic. Consulte [Configurações avançadas (opcional)](autopilot-automate-model-development-create-experiment-ui.md#advanced-settings) para obter uma descrição completa de cada campo.
+ **Segurança:** Amazon VPC, sub-redes e grupos de segurança.
+ **Acesso:** função AWS do IAM ARNs.
+ **Criptografia:** AWS KMS chave IDs.
+ **Tags:** pares de valores-chave usados para rotular e organizar recursos de SageMaker IA.

## Defina os parâmetros padrão do experimento do Autopilot
<a name="autopilot-set-default-parameters-create-experiment-howto"></a>

Os administradores podem definir valores padrão em um arquivo de configuração e, em seguida, colocá-lo manualmente em um local recomendado no ambiente Studio Classic de usuários específicos, ou podem passar o arquivo para um script de configuração do ciclo de vida (LCC) para automatizar a personalização do ambiente Studio Classic para um determinado domínio ou perfil de usuário.
+ Para configurar o arquivo de configuração, comece  preenchendo seus parâmetros padrão.

  Para configurar qualquer um ou todos os valores padrão listados em [Lista de parâmetros padrão compatíveis](#autopilot-list-default-parameters-create-experiment), os administradores podem criar um arquivo de configuração chamado `config.yaml`, cuja estrutura deve seguir esse [exemplo de arquivo de configuração](https://sagemaker.readthedocs.io/en/stable/overview.html#configuration-file-structure). O trecho a seguir mostra um exemplo de arquivo de configuração com todos os parâmetros `AutoML` compatíveis. Para obter mais informações sobre o formato desse arquivo, consulte o [esquema completo](https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/config/config_schema.py).

  ```
  SchemaVersion: '1.0'
  SageMaker:
    AutoMLJob:
      # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html
      AutoMLJobConfig:
        SecurityConfig:
          EnableInterContainerTrafficEncryption: true
          VolumeKmsKeyId: 'kms-key-id'
          VpcConfig:
            SecurityGroupIds:
              - 'security-group-id-1'
              - 'security-group-id-2'
            Subnets:
              - 'subnet-1'
              - 'subnet-2'
      OutputDataConfig:
        KmsKeyId: 'kms-key-id'
      RoleArn: 'arn:aws:iam::111222333444:role/Admin'
      Tags:
      - Key: 'tag_key'
        Value: 'tag_value'
  ```
+ Em seguida, coloque o arquivo de configuração no local recomendado [copiando manualmente o arquivo](#autopilot-intelligent-defaults-manual-setup) para os caminhos recomendados ou usando uma [configuração de ciclo de vida](#autopilot-intelligent-defaults-lcc-setup) (LCC).

  O arquivo de configuração precisa estar presente em pelo menos um dos seguintes locais no ambiente Studio Classic do usuário: Por padrão, a SageMaker IA procura um arquivo de configuração em dois locais:
  + Primeiro, em `/etc/xdg/sagemaker/config.yaml`. Nós nos referimos a esse arquivo como o arquivo de *configuração do administrador*.
  + Então, em `/root/.config/sagemaker/config.yaml`. Nós nos referimos a esse arquivo como o *arquivo de configuração do usuário*.

  Usando o arquivo de configuração do *administrador*, os administradores podem definir um conjunto de valores padrão. Opcionalmente, eles podem usar o arquivo de configuração do *usuário* para substituir os valores definidos no arquivo de configuração do *administrador* ou definir valores adicionais de parâmetros padrão.

  O trecho a seguir mostra um exemplo de script que grava o arquivo de configuração de parâmetros padrão no local do *administrador* no ambiente Studio Classic do usuário. É possível substituir `/etc/xdg/sagemaker` por `/root/.config/sagemaker` para gravar o arquivo no local do *usuário*.

  ```
  ## Sample script with AutoML intelligent defaults
  #!/bin/bash
  
  sudo mkdir -p /etc/xdg/sagemaker
  
  echo "SchemaVersion: '1.0'
  CustomParameters:
    AnyStringKey: 'AnyStringValue'
  SageMaker:
    AutoMLJob:
      # https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html
      AutoMLJobConfig:
        SecurityConfig:
          EnableInterContainerTrafficEncryption: true
          VolumeKmsKeyId: 'kms-key-id'
          VpcConfig:
            SecurityGroupIds:
              - 'security-group-id-1'
              - 'security-group-id-2'
            Subnets:
              - 'subnet-1'
              - 'subnet-2'
      OutputDataConfig:
        KmsKeyId: 'kms-key-id'
      RoleArn: 'arn:aws:iam::111222333444:role/Admin'
      Tags:
      - Key: 'tag_key'
        Value: 'tag_value'
  " | sudo tee /etc/xdg/sagemaker/config.yaml
  ```
  + **Copiar os arquivos manualmente**: Para copiar os arquivos de configuração manualmente, execute o [script](#autopilot-intelligent-defaults-manual-setup) criado na etapa anterior em um terminal do Studio Classic. Nesse caso, o perfil de usuário que executou o script pode criar experimentos de Autopilot com os valores padrão aplicáveis somente a eles.
  + **Crie uma configuração de ciclo de vida de SageMaker IA** — Como alternativa, você pode usar uma [configuração de ciclo](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html) de vida (LCC) para automatizar a personalização do seu ambiente Studio Classic. LCC são scripts de shell acionados por eventos do ciclo de vida do Amazon SageMaker Studio Classic, como iniciar um aplicativo Studio Classic. Essa personalização inclui a instalação de pacotes personalizados, a configuração de extensões do caderno, o pré-carregamento de conjuntos de dados, a configuração de repositórios de código-fonte ou, no nosso caso, o preenchimento prévio dos parâmetros padrão. Os administradores podem anexar a LCC a um domínio do Studio Classic para automatizar a configuração dos valores padrão para cada perfil de usuário dentro desse domínio.

    As seções a seguir detalham como criar uma configuração de ciclo de vida para que os usuários possam carregar automaticamente os parâmetros padrão do Autopilot ao iniciar o Studio Classic. Você pode escolher criar uma LCC usando o SageMaker AI Console ou o. AWS CLI

------
#### [ Create a LCC from the SageMaker AI Console ]

    Use as etapas a seguir para criar uma LCC contendo seus parâmetros padrão, anexar a LCC a um domínio ou perfil de usuário e, em seguida, iniciar um aplicativo Studio Classic pré-preenchido com os parâmetros padrão definidos pela LCC usando o AI Console. SageMaker 
    + **Para criar uma configuração de ciclo de vida que execute o [script](#autopilot-intelligent-defaults-script) contendo seus valores padrão usando o SageMaker AI Console**
      + Abra o console de SageMaker IA em[https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).
      + No lado esquerdo, navegue até **Configurações do administrador** e, em seguida, **Configurações de ciclo de vida**.
      + Na página de **Configurações de ciclo de vida**, navegue até a guia Studio Classic e escolha **Criar configuração**.
      + Em **Nome**, digite um nome usando caracteres alfanuméricos e “-”, mas sem espaços. Um rótulo pode ter no máximo 63 caracteres.
      + Cole seu [script](#autopilot-intelligent-defaults-script) na seção **Scripts**.
      + Escolha **Criar configuração** para criar a configuração do ciclo de vida. Isso cria uma LCC do tipo `Kernel gateway app`.
    +  **Para anexar a configuração do ciclo de vida a um domínio do Studio Classic, a um espaço ou a um perfil de usuário**

      Siga as etapas em [Anexar a configuração do ciclo de vida ao domínio do Studio ou ao perfil do usuário](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-console.html#studio-lcc-create-console-step2) para anexar a LCC a um domínio do Studio ou a um perfil de usuário específico.
    +  **Para iniciar a aplicação Studio Classic com a configuração do ciclo de vida**

      Depois que a LCC é anexado a um domínio ou perfil de usuário, os usuários afetados podem iniciar a aplicação Studio Classic a partir da página inicial do Studio Classic para obter os padrões definidos pela LCC automaticamente. Isso preenche automaticamente a interface do usuário do Studio Classic ao criar um experimento do Autopilot.

------
#### [ Create a LCC from the AWS CLI ]

    Use os trechos a seguir para iniciar uma aplicação do Studio Classic que executa o [script](#autopilot-intelligent-defaults-manual-setup) usando a AWS CLI. Observe que esse `lifecycle_config.sh` é o nome dado ao seu script neste exemplo.

    Antes de começar:
    + Verifique se você atualizou e configurou AWS CLI preenchendo os pré-requisitos descritos em [Criar uma configuração de ciclo](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-cli.html) de vida a partir do. AWS CLI
    + Instale a [documentação do OpenSSL](https://www.openssl.org/source/). O AWS CLI comando usa a biblioteca de código aberto *OpenSSL* para codificar seu script no formato Base64. Esse requisito evita erros que ocorram devido à codificação de espaçamento e quebra de linha.

    Agora você pode seguir estas três etapas:
    +  **Criar uma nova configuração de ciclo de vida referenciando o script de configuração `lifecycle_config.sh`**

      ```
      LCC_CONTENT=`openssl base64 -A -in lifecycle_config.sh`
      
      ## Create a new lifecycle config 
      aws sagemaker create-studio-lifecycle-config --region region \
      --studio-lifecycle-config-name lcc-name \
      --studio-lifecycle-config-content $LCC_CONTENT \
      --studio-lifecycle-config-app-type default
      ```

      Anote o ARN da configuração de ciclo de vida recém-criada que é retornada. Esse ARN é necessário para anexar a configuração do ciclo de vida ao seu aplicativo.
    +  **Anexe a configuração do ciclo de vida ao seu `JupyterServerApp`**

      O exemplo a seguir mostra como criar um novo perfil de usuário com uma configuração de ciclo de vida anexada. Para atualizar um perfil de usuário existente, use o AWS CLI [update-user-profile](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-user-profile.html)comando. Para criar ou atualizar um domínio, consulte [create-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-domain.html) e [update-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-domain.html). Adicione o ARN da configuração do ciclo de vida da etapa anterior às configurações do tipo de aplicação `JupyterServerAppSettings`. É possível adicionar várias configurações de ciclo de vida ao mesmo tempo usando uma lista de configurações de ciclo de vida.

      ```
      # Create a new UserProfile
      aws sagemaker create-user-profile --domain-id domain-id \
      --user-profile-name user-profile-name \
      --region region \
      --user-settings '{
      "JupyterServerAppSettings": {
        "LifecycleConfigArns":
          ["lifecycle-configuration-arn"]
        }
      }'
      ```

      Depois que a LCC é anexada a um domínio ou perfil de usuário, os usuários afetados podem desligar e atualizar seu aplicativo Studio Classic existente seguindo as etapas em [Desligar e atualizar o Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-tasks-update-studio.html), ou iniciar um novo aplicativo Studio Classic a partir do AWS console para obter automaticamente os padrões definidos pela LCC. Isso preenche automaticamente a interface do usuário do Studio Classic ao criar um experimento do Autopilot. Como alternativa, eles podem iniciar um novo aplicativo Studio Classic usando o AWS CLI seguinte.
    +  **Inicie seu aplicativo Studio Classic com a configuração do ciclo de vida usando o AWS CLI**

      ```
      # Create a Jupyter Server application
      aws sagemaker create-app --domain-id domain-id \
      --user-profile-name user-profile-name \
      --region region \
      --app-type JupyterServer \
      --resource-spec LifecycleConfigArn=lifecycle-configuration-arn \
      --app-name default
      ```

      Para obter mais informações sobre como criar uma configuração de ciclo de vida usando o AWS CLI, consulte [Criar uma configuração de ciclo de vida a partir do AWS CLI](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc-create-cli.html).

------

**Para criar um experimento do Autopilot usando a interface do usuário do Studio Classic**

1. Faça login em [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/), escolha **Studio** no painel de navegação esquerdo, selecione seu domínio e perfil de usuário e, em seguida, **abra o Studio**.

1. No Studio, escolha o ícone do Studio Classic no painel de navegação superior esquerdo. Isso abre uma aplicação Studio Classic.

1. Execute ou abra a aplicação Studio Classic no espaço que você quiser ou **Crie um espaço do Studio Classic**. Na guia **Início**, escolha o cartão **AutoML**. Isso abre uma nova guia **AutoML**.

1. Escolha **Criar um experimento AutoML**. Isso abre uma nova guia **Criar experimento**.

1. Na seção **Detalhes do experimento e dos dados**, insira as seguintes informações:

   1. **Nome do experimento** — deve ser exclusivo da sua conta atual Região da AWS e conter no máximo 63 caracteres alfanuméricos. Pode incluir hifens (-), mas não espaços.

   1. **Dados de entrada**: Forneça a localização do bucket do Amazon Simple Storage Service (Amazon S3) dos seus dados de entrada. Esse bucket do S3 deve estar na sua Região da AWS. O URL deve estar em um `s3://` formato em que a Amazon SageMaker AI tenha permissões de gravação. O arquivo deve estar no formato CSV ou Parquet e conter pelo menos 500 linhas. Selecione **Procurar** para percorrer os caminhos disponíveis e **Visualizar** para ver uma amostra dos dados de entrada.

   1. **Sua entrada do S3 é um arquivo de manifesto?** : Um arquivo de manifesto inclui metadados com seus dados de entrada. Os metadados especificam a localização dos seus dados no Amazon S3. Ele também especifica como os dados são formatados e quais atributos do conjunto de dados devem ser usados ao treinar seu modelo. É possível usar um arquivo de manifesto como alternativa ao pré-processamento quando seus dados rotulados estão sendo transmitidos no modo `Pipe`.

   1. **Divisão automática de dados?** : O Autopilot pode dividir seus dados em uma divisão de 80- 20% para dados de treinamento e validação. Se preferir uma divisão personalizada, você pode escolher a opção **Especificar proporção de divisão**. Para usar um conjunto de dados personalizado para validação, escolha **Fornecer um conjunto de validação**.

   1. **Local dos dados de saída (bucket do S3)**: O nome do local do bucket do S3 em que você deseja armazenar os dados de saída. O URL desse bucket deve estar no formato Amazon S3 em que o Amazon SageMaker AI tenha permissões de gravação. O bucket do S3 deve estar na atual Região da AWS. O Autopilot também pode criar isso para você no mesmo local dos dados de entrada. 

1. Escolha **Avançar: Alvo e atributos**. A guia **Alvo e atributos** é aberta.

1. Na seção **Alvo e atributos**:
   + Selecione uma coluna para definir como meta para as predições de modelo.
   + Opcionalmente, você pode passar o nome de uma coluna de pesos amostrais na seção **Peso amostral** para solicitar que as linhas do conjunto de dados sejam ponderadas durante o treinamento e a avaliação. Para obter mais informações sobre as métricas objetivas disponíveis, consulte [Métricas ponderadas do Autopilot](autopilot-metrics-validation.md#autopilot-weighted-metrics).
**nota**  
O compatibilidade com pesos de amostra está disponível somente no [modo de agrupamento.](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html#autopilot-training-mode)
   + Você também pode selecionar atributos para treinamento e alterar o tipo de dados. Os seguintes tipos de dados estão disponíveis: `Text`, `Numerical`, `Categorical`, `Datetime`, `Sequence` e `Auto`. Todos os atributos são selecionados por padrão.

1. Escolha **Avançar: Método de treinamento**. A guia **Método de treinamento** é aberta.

1. Na seção **Método de treinamento**, selecione sua opção de treinamento: **Agrupamento**, **Otimização de hiperparâmetros (HPO)** ou **Auto** para permitir que o Autopilot escolha o método de treinamento automaticamente com base no tamanho do conjunto de dados. Cada modo de treinamento executa um conjunto predefinido de algoritmos em seu conjunto de dados para treinar candidatos a modelos. Por padrão, o Autopilot pré-seleciona todos os algoritmos disponíveis para o modo de treinamento específico. É possível realizar um experimento de treinamento do Autopilot com todos os algoritmos ou escolher seu próprio subconjunto.

   Para obter mais informações sobre os modos de treinamento e os algoritmos disponíveis, consulte a seção **Modos de treinamento do Autopilot** na página [Modos de treinamento e algoritmos](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html).

1. Escolha **Avançar: Implantação e configurações avançadas** para abrir a guia **Implantação e configurações avançadas**. As configurações incluem o nome do endpoint de exibição automática, o tipo de problema de machine learning e opções adicionais para executar seu experimento.

   1. **Configurações de implantação**: O Autopilot pode criar automaticamente um endpoint e implantar seu modelo para você.

      Para implantar automaticamente em um endpoint gerado automaticamente ou para fornecer um nome de endpoint para implantação personalizada, defina a opção como **Sim** em **Implantação automática?** Se você estiver importando dados do Amazon Data Wrangler, você tem opções adicionais para implantar automaticamente o melhor modelo com ou sem as transformações do SageMaker Data Wrangler.
**nota**  
Se o fluxo do Data Wrangler contiver operações de várias linhas como, ou `groupby`, `join` ou `concatenate`, você não poderá implantar automaticamente essas transformações. Para obter mais informações, consulte [Treinar modelos automaticamente em seu fluxo de dados](https://docs.aws.amazon.com/sagemaker/latest/dg/data-wrangler-autopilot.html).

   1. **Configurações avançadas (opcional)**: O Autopilot fornece controles adicionais para definir manualmente parâmetros experimentais, como definir o tipo de problema, restrições de tempo no trabalho e nos testes do Autopilot, configurações de segurança e criptografia.
**nota**  
O Autopilot é compatível com a configuração de valores padrão para simplificar a configuração dos experimentos do Autopilot usando a interface do usuário do Studio Classic. Os administradores podem usar [as configurações de ciclo de vida](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html) (LCC) do Studio Classic para definir valores de infraestrutura, rede e segurança nos arquivos de configuração e preencher previamente as *configurações avançadas* dos trabalhos `AutoML`.  
Para saber mais sobre como os administradores podem automatizar a personalização de um experimento do Autopilot, consulte [Configurar os parâmetros padrão de um experimento do Autopilot (para administradores)](autopilot-set-default-parameters-create-experiment.md).

      1. **Tipo de problema de machine learning**: O Autopilot pode inferir automaticamente o tipo de problema de aprendizado supervisionado a partir do seu conjunto de dados. Se preferir escolhê-lo manualmente, você pode usar o menu suspenso **Selecionar o tipo de problema de machine learning**. **Observe que o padrão é Auto.** Em alguns casos, a SageMaker IA não consegue inferir com precisão. Quando isso acontece, você deve fornecer o valor para que o trabalho seja bem-sucedido. Em particular, é possível escolher entre os seguintes tipos:
         + **Classificação binária**: A classificação binária atribui dados de entrada a uma das duas classes predefinidas e mutuamente exclusivas, com base em seus atributos, como diagnóstico médico baseado em resultados de testes diagnósticos que determinam se alguém tem uma doença.
         + **Regressão**: A regressão estabelece uma relação entre as variáveis de entrada (também conhecidas como variáveis independentes ou atributos) e a variável alvo (também conhecida como variável dependente). Essa relação é capturada por meio de uma função ou modelo matemático que mapeia as variáveis de entrada para uma saída contínua. É comumente usado para tarefas como prever preços de casas com base em atributos como metragem quadrada e número de banheiros, tendências do mercado de ações ou estimativa de números de vendas.
         + **Classificação multiclasse**: A classificação multiclasse atribui dados de entrada a uma das várias classes com base em seus atributos, como a predição do tópico mais relevante para um documento de texto, como política, finanças ou filosofia.

      1. **Runtime**: É possível definir um limite máximo de tempo. Ao atingir o limite de tempo, os testes e trabalhos que excedem a restrição de tempo são interrompidos automaticamente.

      1. **Acesso** — Você pode escolher a função que o Amazon SageMaker Studio Classic assume para obter acesso temporário Serviços da AWS (em particular, SageMaker AI e Amazon S3) em seu nome. Se nenhuma função for definida explicitamente, o Studio Classic usará automaticamente a função de execução de SageMaker IA padrão anexada ao seu perfil de usuário.

      1. **Criptografia**: Para aumentar a segurança de seus dados em repouso e protegê-los contra acesso não autorizado, você pode especificar chaves de criptografia para criptografar dados em seus buckets do Amazon S3 e no volume do Amazon Elastic Block Store (Amazon EBS) anexado ao seu domínio do Studio Classic.

      1. **Segurança** — Você pode escolher a nuvem privada virtual (Amazon VPC) na qual seu trabalho de SageMaker IA é executado. Certifique-se de que o Amazon VPC tenha acesso aos seus buckets de entrada e saída do Amazon S3.

      1. **Projeto** — especifique o nome do projeto de SageMaker IA a ser associado a esse experimento do piloto automático e às saídas do modelo. Quando você especifica um projeto, o Autopilot marca o projeto como um experimento. Isso permite que você saiba quais saídas do modelo estão associadas a este projeto.

      1. **Etiquetas**: As etiquetas são um array de pares de chave-valor. Use tags para categorizar seus recursos Serviços da AWS, como finalidade, proprietário ou ambiente.

   1. Escolha **Avançar: Revise e crie** para obter um resumo do seu experimento do Autopilot antes de criá-lo. 

1. Selecione **Criar experimento**. A criação do experimento inicia um trabalho de piloto automático na SageMaker IA. O Autopilot fornece o status do experimento, informações sobre o processo de exploração de dados e candidatos a modelos em cadernos, uma lista dos modelos gerados e seus relatórios e o perfil de trabalho usado para criá-los.

   Para obter informações sobre os cadernos gerados por uma tarefa do Autopilot, consulte [Cadernos do Autopilot gerados para gerenciar tarefas de AutoML](autopilot-automate-model-development-notebook-output.md). Para ter informações sobre os detalhes de cada opção de modelo e os respectivos relatórios, consulte [visualizar detalhes do modelo](autopilot-models-details.md) e [Visualizar um relatório de desempenho do modelo do Autopilot](autopilot-model-insights.md).

**nota**  
Para evitar cobranças desnecessárias: se você implantar um modelo que não é mais necessário, exclua os endpoints e os recursos que foram criados durante a implantação. Informações sobre instâncias de preços por região estão disponíveis na [Amazon SageMaker Pricing](https://aws.amazon.com/sagemaker/pricing/).

# Cadernos de exemplo do Amazon SageMaker Autopilot
<a name="autopilot-example-notebooks"></a>

Os cadernos s a seguir servem como exemplos práticos que abordam vários casos de uso do Autopilot.

Você pode encontrar todos os cadernos do Autopilot no [diretório `autopilot`](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot) do repositório de exemplos do SageMaker AI no GitHub.

Recomendamos clonar o repositório Git completo no Studio Classic para acessar e executar os cadernos diretamente. Para obter informações sobre como clonar um repositório Git no Studio Classic, consulte [Clone um repositório Git no SageMaker Amazon Studio Classic](studio-tasks-git.md).


| **Caso de uso** | **Descrição** | 
| --- | --- | 
| [Inferência sem servidor](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/autopilot-serverless-inference) |  Por padrão, o Autopilot permite a implantação de modelos gerados em endpoints de inferência em tempo real. Nesse repositório, o caderno ilustra como implantar modelos do Autopilot treinados com `ENSEMBLING` e `HYPERPARAMETER OPTIMIZATION (HPO)` modos em endpoints sem servidor. Os endpoints sem servidor iniciam automaticamente os recursos de computação e os escalam para dentro e para baixo, dependendo do tráfego, eliminando a necessidade de escolher tipos de instância ou gerenciar políticas de escalabilidade.  | 
|  [Seleção de atributos personalizados](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/custom-feature-selection)  |  O Autopilot inspeciona seu conjunto de dados e executa vários candidatos para descobrir a combinação ideal de etapas de pré-processamento de dados, algoritmos de machine learning e hiperparâmetros. Você pode implantar facilmente em um endpoint em tempo real ou para processamento em lote. Em alguns casos, você pode desejar ter a flexibilidade de trazer um código de processamento de dados personalizado para o Autopilot. Por exemplo, seus conjuntos de dados podem conter um grande número de variáveis independentes, e talvez você queira incorporar uma etapa personalizada de seleção de atributos para remover primeiro as variáveis irrelevantes. O conjunto de dados menor resultante pode então ser usado para iniciar um trabalho de Autopilot. Por fim, você também gostaria de incluir o código de processamento personalizado e os modelos do Autopilot para processamento em tempo real ou em lote.  | 
|  [Exemplo de pipeline](https://github.com/aws/amazon-sagemaker-examples/tree/main/autopilot/sagemaker-autopilot-pipelines)  |  Enquanto o Autopilot simplifica o processo de criação de modelos de ML, os engenheiros do MLOps ainda são responsáveis por criar, automatizar e gerenciar fluxos de trabalho de ML de ponta a ponta na produção. O SageMaker Pipelines pode ajudar na automação de várias etapas do ciclo de vida do ML, como pré-processamento de dados, treinamento de modelos, ajuste de hiperparâmetros, avaliação de modelos e implantação. Esse caderno serve como uma demonstração de como incorporar o Autopilot em um fluxo de trabalho completo de treinamento em AutoML do SageMaker Pipelines. Para iniciar um experimento de Autopilot no Pipelines, você deve criar um fluxo de trabalho de criação de modelos escrevendo um código de integração personalizado usando as etapas [Lambda](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-lambda) ou de [Processamento](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-processing) do Pipelines. Para obter mais informações, consulte [Mova os modelos de ML do Amazon SageMaker Autopilot da experimentação para a produção usando o Amazon SageMaker Pipelines](https://aws.amazon.com/blogs/machine-learning/move-amazon-sagemaker-autopilot-ml-models-from-experimentation-to-production-using-amazon-sagemaker-pipelines/). Como alternativa, ao usar o Autopilot no [modo de Agrupamento](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-model-support-validation.html), você pode consultar o exemplo do caderno que demonstra como usar a etapa nativa do AutoML na etapa nativa do AutoML do [SageMaker Pipeline](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/sagemaker-autopilot-pipelines/autopilot_pipelines_demo_notebook.ipynb). Com o Autopilot compatível como uma etapa nativa nos Pipelines, agora você pode adicionar uma etapa de treinamento automatizada ([AutoMLStep](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-automl)) aos seus Pipelines e invocar um experimento de Autopilot no modo de agrupamento.  | 
| [Marketing direto com o Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/sagemaker_autopilot_direct_marketing.html) |  Este caderno demonstra como usar o [Conjunto de dados de marketing bancário](https://archive.ics.uci.edu/ml/datasets/bank+marketing) para prever se um cliente se inscreverá em um depósito a prazo em um banco. Você pode usar o Autopilot nesse conjunto de dados para obter o pipeline de ML mais preciso, explorando as opções contidas em vários pipelines candidatos. O Autopilot gera cada candidato em um procedimento de duas etapas. A primeira etapa executa a engenharia de atributos automatizada no conjunto de dados. A segunda etapa treina e ajusta um algoritmo para produzir um modelo. O caderno contém instruções sobre como treinar o modelo e como implantar o modelo para realizar inferência em lote usando o melhor candidato.  | 
| [Previsão de rotatividade de clientes com o Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/autopilot_customer_churn.html) |  Este caderno descreve o uso de machine learning para a identificação automatizada de clientes insatisfeitos, o que também é conhecido como predição de rotatividade do cliente. O exemplo mostra como analisar um conjunto de dados disponível publicamente e executar nele a engenharia de atributos. Depois, ele mostra como ajustar um modelo selecionando o pipeline de melhor desempenho juntamente com os hiperparâmetros ideais para o algoritmo de treinamento. Finalmente, ele mostra como implantar o modelo em um endpoint hospedado e como avaliar suas predições com o Ground Truth. No entanto, os modelos de ML raramente fornecem predições perfeitas. É por isso que este caderno também mostra como incorporar os custos relativos de erros de predição ao determinar o resultado financeiro do uso de ML.  | 
| [Previsão de rotatividade de clientes dos principais candidatos com o Amazon SageMaker Autopilot e Transformação em Lote (Python SDK)](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/autopilot_customer_churn_high_level_with_evaluation.html) |  Este caderno descreve o uso de machine learning para a identificação automatizada de clientes insatisfeitos, o que também é conhecido como predição de rotatividade do cliente. Este caderno demonstra como configurar o modelo para obter a probabilidade de inferência, selecionar os principais modelos N e fazer a Transformação do Processamento em Lote em um conjunto de testes para avaliação.   Este caderno funciona com o SageMaker Python SDK >= 1.65.1, lançado em 19/06/2020.   | 
| [Trazendo o seu próprio código de processamento de dados para o Amazon SageMaker Autopilot](https://sagemaker-examples.readthedocs.io/en/latest/autopilot/custom-feature-selection/Feature_selection_autopilot.html) |  Este caderno demonstra como incorporar e implantar códigos de processamento de dados personalizados ao usar o Amazon SageMaker Autopilot. Ele adiciona uma etapa personalizada de seleção de atributos para remover variáveis irrelevantes de um trabalho do Autopilot. Em seguida, mostra como implantar o código de processo personalizado e os modelos gerados pelo Autopilot em um endpoint em tempo real e, alternativamente, para processamento em lote.   | 
| Mais cadernos | Você pode encontrar mais cadernos ilustrando outros casos de uso, como [transformação em lote](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/ap-batch-transform.ipynb), [previsão de séries temporais](https://github.com/aws/amazon-sagemaker-examples/blob/main/autopilot/autopilot_time_series.ipynb) e muito mais no diretório raiz. | 

# Vídeos: Usar o Autopilot para automatizar e explorar o processo de machine learning
<a name="autopilot-videos"></a>

Aqui está uma série de vídeos que fornece um tour pelos recursos do Amazon SageMaker Autopilot usando o Studio Classic. Eles mostram como iniciar um trabalho de AutoML, analisar e pré-processar dados, como fazer a engenharia de atributos e a otimização de hiperparâmetros em modelos candidatos e como visualizar e comparar as métricas do modelo resultante.

**Topics**
+ [Comece um trabalho do AutoML com o Amazon Autopilot SageMaker](#autopilot-video-start-automl-job)
+ [Analise a exploração de dados e a engenharia de atributos automatizadas no Autopilot.](#autopilot-video-generated-notebooks)
+ [Ajustar modelos para otimizar o desempenho](#autopilot-video-optimizing-model-performance)
+ [Escolher e implantar o melhor modelo](#autopilot-video-choose-and-deploy-the-best-model)
+ [Tutorial do Amazon SageMaker Autopilot](#autopilot-walkthrough)

## Comece um trabalho do AutoML com o Amazon Autopilot SageMaker
<a name="autopilot-video-start-automl-job"></a>

Este vídeo mostra como iniciar um trabalho de AutoML com o Autopilot. (Duração: 8:41)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/qMEtqJPhqpA/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/qMEtqJPhqpA)


## Analise a exploração de dados e a engenharia de atributos automatizadas no Autopilot.
<a name="autopilot-video-generated-notebooks"></a>

Este vídeo mostra como analisar os cadernos de exploração de dados e definição de candidatos gerados pelo Amazon SageMaker Autopilot. (Duração: 10:04)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/WsfRAeGzgm8/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/WsfRAeGzgm8)


## Ajustar modelos para otimizar o desempenho
<a name="autopilot-video-optimizing-model-performance"></a>

Este vídeo mostra como otimizar o desempenho do modelo durante o treinamento usando o ajuste de hiperparâmetros. (Duração: 4:59)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/KZSTsWrDGXs/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/KZSTsWrDGXs)


## Escolher e implantar o melhor modelo
<a name="autopilot-video-choose-and-deploy-the-best-model"></a>

Este vídeo mostra como usar métricas de trabalho para escolher o melhor modelo e como implantá-lo. (Duração: 5:20)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/vRHyX3kDstI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/vRHyX3kDstI)


## Tutorial do Amazon SageMaker Autopilot
<a name="autopilot-walkthrough"></a>

Este vídeo mostra uma demonstração completa em que primeiro criamos automaticamente um modelo de classificação binária com o Amazon SageMaker Autopilot. Vemos como os modelos candidatos foram criados e otimizados usando cadernos gerados automaticamente. Também analisamos os melhores candidatos com o Amazon SageMaker Experiments. Por fim, implantamos o melhor candidato (com base em XGBoost) e configuramos a captura de dados com o SageMaker Model Monitor.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/DRjOOaR2prQ/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/DRjOOaR2prQ)


# Cotas do Autopilot
<a name="autopilot-quotas"></a>

Há cotas que limitam os recursos disponíveis para você ao usar o Amazon SageMaker Autopilot. Alguns desses limites podem ser aumentados e outros não. 

**nota**  
As cotas de recursos documentadas nas seções a seguir são válidas para as versões do Amazon SageMaker Studio Classic 3.22.2 e posteriores. Para obter informações sobre como atualizar sua versão do SageMaker Studio Classic, consulte [Desligue e atualize o Amazon SageMaker Studio Classic e os aplicativos](studio-tasks-update.md).

**Topics**
+ [Cotas que podem ser aumentadas](#autopilot-quotas-limits-increasable)
+ [Cotas de recurso](#autopilot-quotas-resource-limits)

## Cotas que podem ser aumentadas
<a name="autopilot-quotas-limits-increasable"></a>

A tabela a seguir contém os limites de recursos para cotas que você pode aumentar:


| Recurso | Regiões | Limites padrão | Pode ser aumentado até | 
| --- | --- | --- | --- | 
| Tamanho do conjunto de dados de entrada | Todos | 100 GB | Centenas de GBs | 
| Tamanho de um único arquivo do Parquet\$1 | Todos | 2 GB | N/D | 
| Tamanho do conjunto de dados de destino para subamostragem\$1\$1 | Todos | 5 GB | Centenas de GBs | 
| Número de trabalhos simultâneos de Autopilot | us-east-1, us-east-2,us-west-2, ap-northeast-1, eu-west-1, eu-central-1 | 4 | Centenas | 
| Número de trabalhos simultâneos de Autopilot | ap-northeast-2, ap-southeast-2, eu-west-2, ap-southeast-1 | 2 | Centenas | 
| Número de trabalhos simultâneos de Autopilot | Todas as outras regiões | 1 | Dezenas | 

**nota**  
\$1Esse limite de tamanho de 2 GB é para um único arquivo Parquet compactado. Você pode fornecer um conjunto de dados do Parquet que inclua vários arquivos compactados do Parquet no tamanho máximo do conjunto de dados de entradas. Depois que os arquivos forem descompactados, cada um deles pode se expandir para um tamanho maior.  
\$1\$1O Autopilot subamostra de forma automática os conjuntos de dados de entrada que são maiores do que o tamanho do conjunto de dados de destino, ao mesmo tempo em que considera o desequilíbrio de classes e preserva rótulos de classes raras.

**Para solicitar um aumento da cota:**

1. Abra o [console do Service Quotas](https://console.aws.amazon.com/servicequotas/home/services/sagemaker/quotas).

1. Para solicitar um aumento de cota, escolha **Solicitar aumento no nível da conta**.

1. Em **Aumentar valor da cota**, insira o novo valor limite que você está solicitando.

1. Escolha **Solicitar**.

## Cotas de recurso
<a name="autopilot-quotas-resource-limits"></a>

A tabela a seguir contém os limites de recursos de runtime para uma tarefa do Amazon SageMaker Autopilot em um Região da AWS.


| Recurso | Limite por tarefa do Autopilot | 
| --- | --- | 
| Runtime máximo para uma tarefa do Autopilot | 30 dias | 

# Guia de referência da API do Autopilot
<a name="autopilot-reference"></a>

Esta seção fornece um subconjunto das APIs REST do serviço HTTP para criar e gerenciar recursos do Amazon SageMaker Autopilot (trabalhos do AutoML) de forma programática.

Se sua linguagem preferida for Python, você pode consultar diretamente o [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html) ou o [objeto AutoMLV2](https://sagemaker.readthedocs.io/en/stable/api/training/automlv2.html#sagemaker.automl.automlv2.AutoMLV2) do Amazon SageMaker Python SDK.

## Ações da API do AutoML
<a name="autopilot-api-actions"></a>

Essa lista detalha as operações disponíveis na API de referência para gerenciar tarefas do AutoML de forma programática.
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListAutoMLJobs.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListAutoMLJobs.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListCandidatesForAutoMLJob.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopAutoMLJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopAutoMLJob.html)

**nota**  
[CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJobV2.html) e [DescribeAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJobV2.html) são novas versões de [CreateAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAutoMLJob.html) e [DescribeAutoMLJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeAutoMLJob.html) que 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.  
Encontre diretrizes sobre como migrar um `CreateAutoMLJob` para `CreateAutoMLJobV2` em [Migrar um CreateAutoMLJob para CreateAutoMLJobV2](https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-create-experiment.html#autopilot-create-experiment-api-migrate-v1-v2).

## Tipos de dados da API do AutoML
<a name="autopilot-api-data-types"></a>

Essa lista detalha os objetos AutoML da API usados pelas ações acima como solicitações de entrada ou respostas de saída.
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLAlgorithmConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidate.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateGenerationConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateStep.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLCandidateStep.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLChannel.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLContainerDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLContainerDefinition.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSource.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSource.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLDataSplitConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLInferenceContainerDefinitions.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLInferenceContainerDefinitions.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobArtifacts.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobChannel.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobInputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobInputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobObjective.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobStepMetadata.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobStepMetadata.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobCompletionCriteria.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLJobSummary.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLOutputDataConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLPartialFailureReason.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLPartialFailureReason.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLProblemTypeResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLSecurityConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLSecurityConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AutoMLS3DataSource.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateArtifactLocations.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateGenerationConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CandidateProperties.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_FinalAutoMLJobObjectiveMetric.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_FinalAutoMLJobObjectiveMetric.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HolidayConfigAttributes.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageClassificationJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDatum.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployConfig.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployResult.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ModelDeployResult.html) 
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularResolvedAttributes.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TabularResolvedAttributes.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationResolvedAttribute.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TextGenerationResolvedAttribute.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesForecastingJobConfig.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesTransformations.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TimeSeriesTransformations.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TuningJobCompletionCriteria.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TuningJobCompletionCriteria.html)