

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

# Usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros
<a name="sagemaker-mkt-algo-tune"></a>

A seção a seguir explica como usar um recurso de algoritmo para executar um trabalho de ajuste de hiperparâmetros na Amazon SageMaker AI. Um trabalho de ajuste de hiperparâmetros localiza a melhor versão de um modelo, executando muitos trabalhos de treinamento no seu conjunto de dados com o uso do algoritmo e de intervalos de hiperparâmetros que você especifica. Em seguida, ele escolhe os valores de hiperparâmetros que resultam no modelo de melhor desempenho, conforme avaliado por uma métrica que você escolhe. Para obter mais informações, consulte [Ajuste automático do modelo com SageMaker IA](automatic-model-tuning.md).

Você pode criar e usar um recurso de algoritmo para criar um trabalho de ajuste de hiperparâmetros usando o console do Amazon SageMaker AI, a SageMaker API de baixo nível da Amazon ou o SDK do Amazon [Python SageMaker ](https://sagemaker.readthedocs.io/en/stable).

**Topics**
+ [Usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros (console)](#sagemaker-mkt-algo-tune-console)
+ [Usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros (API)](#sagemaker-mkt-algo-tune-api)
+ [Use um algoritmo para executar um trabalho de ajuste de hiperparâmetros ([Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable))](#sagemaker-mkt-algo-tune-sdk)

## Usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros (console)
<a name="sagemaker-mkt-algo-tune-console"></a>

**Para usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros (console)**

1. Abra o console de SageMaker IA em [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Escolha **Algoritmos**.

1. Escolha um algoritmo que você criou a partir da listagem na guia **Meus algoritmos** ou escolha um algoritmo que você assinou na guia **assinaturas AWS Marketplace **.

1. Escolha **Criar trabalho de ajuste de hiperparâmetros**.

   O algoritmo escolhido será automaticamente selecionado.

1. Na página **Criar trabalho de ajuste de hiperparâmetros**, forneça as seguintes informações:

   1. Para **Inicialização a quente**, escolha **Habilitar inicialização a quente** para usar as informações de trabalhos de ajuste de hiperparâmetros anteriores como ponto de partida para este trabalho de ajuste de hiperparâmetros. Para obter mais informações, consulte [Executar um trabalho de ajuste de hiperparâmetros de inicialização a quente](automatic-model-tuning-warm-start.md).

      1. Escolha **Algoritmo e dados idênticos** se os dados de entrada forem os mesmos que os dados de entrada dos trabalhos pais desse trabalho de ajuste de hiperparâmetros, ou escolha **Transferir aprendizado** para usar dados de entrada adicionais ou diferentes para esse trabalho de ajuste de hiperparâmetros.

      1. Para **Trabalhos de ajuste de hiperparâmetros principais**, escolha até 5 trabalhos de ajuste de hiperparâmetros a serem usados como pais nesse trabalho de ajuste de hiperparâmetros.

   1. Para **Nome do trabalho de ajuste de hiperparâmetros**, digite um nome para o trabalho de ajuste.

   1. Para a **função IAM**, escolha uma função do IAM que tenha as permissões necessárias para executar trabalhos de ajuste de hiperparâmetros na SageMaker IA ou escolha **Criar uma nova função** para permitir que a SageMaker IA crie uma função que tenha a política `AmazonSageMakerFullAccess` gerenciada anexada. Para mais informações, consulte [Como usar funções de execução de SageMaker IA](sagemaker-roles.md).

   1. Para **VPC**, escolha uma Amazon VPC que você deseja permitir que os trabalhos de treinamento iniciados pelo trabalho ajuste acessem. Para obter mais informações, consulte [Dê aos trabalhos de treinamento de SageMaker IA acesso aos recursos em sua Amazon VPC](train-vpc.md).

   1. Escolha **Próximo**.

   1. Para **Métrica objetiva**, escolha a métrica usada pelo trabalho de ajuste de hiperparâmetros para determinar a melhor combinação de hiperparâmetros e escolha se deseja minimizar ou maximizar essa métrica. Para obter mais informações, consulte [Visualizar o melhor trabalho de treinamento](automatic-model-tuning-ex-tuning-job.md#automatic-model-tuning-best-training-job).

   1. Para **Configuração dos hiperparâmetros**, escolha intervalos para os hiperparâmetros ajustáveis que você deseja que o trabalho de ajuste pesquise e defina valores estáticos para os hiperparâmetros que devem permanecer constantes em todos os trabalhos de treinamento iniciados pelo trabalho de ajuste de hiperparâmetros. Para obter mais informações, consulte [Definir intervalos de hiperparâmetros](automatic-model-tuning-define-ranges.md).

   1. Escolha **Próximo**.

   1. Para **Configuração dos dados de entrada**, especifique os seguintes valores para cada canal de dados de entrada a ser usado para o trabalho de ajuste de hiperparâmetros: Você pode ver quais são os canais compatíveis pelo algoritmo usado para ajuste de hiperparâmetros, o tipo de conteúdo, o tipo de compactação compatível e os modos de entrada compatível com cada canal, na seção **Especificação do canal** da página **Resumo do algoritmo** do algoritmo.

      1. Para **Nome do canal**, digite o nome do canal de entrada.

      1. Para **Tipo de conteúdo**, digite o tipo de conteúdo dos dados que o algoritmo espera para o canal.

      1. Para **Tipo de compactação**, escolha o tipo de compactação de dados a ser usado, se houver.

      1. Para **Wrapper de registro**, escolha `RecordIO` se o algoritmo espera dados no formato `RecordIO`.

      1. Para **Tipo de dados do S3**, **Tipo de distribuição de dados do S3** e **Localização do S3**, especifique os valores apropriados. Para obter informações sobre o significado desses valores, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_S3DataSource.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_S3DataSource.html).

      1. Para **Modo de entrada**, escolha **Arquivo** para fazer download dos dados do volume de armazenamento de ML provisionado e montar o diretório em um volume do Docker. Escolha **Pipe** para transmitir dados diretamente do Amazon S3 para o contêiner.

      1. Para adicionar outro canal de entrada, escolha **Adicionar canal**. Se você terminou de adicionar canais de entrada, escolha **Concluído**.

   1. Para a localização da **Saída**, especifique os seguintes valores:

      1. Para **Caminho de saída do S3**, escolha a localização do S3 na qual os trabalhos de treinamento iniciados por esse trabalho de ajuste de hiperparâmetros armazenam a saída, como artefatos de modelo.
**nota**  
Você usa os artefatos de modelo armazenados nessa localização para criar um modelo ou um pacote de modelos a partir desse trabalho de ajuste de hiperparâmetros.

      1. Para a **chave de criptografia**, se você quiser que a SageMaker IA use uma AWS KMS chave para criptografar os dados de saída em repouso no local do S3.

   1. Para **Configuração de recursos**, forneça as seguintes informações:

      1. Para **Tipo de instância**, escolha o tipo de instância a ser usado para cada trabalho de treinamento iniciado pelo trabalho de ajuste de hiperparâmetros.

      1. Para **Contagem de instâncias**, digite o número de instâncias de ML a serem usadas para cada trabalho de treinamento iniciada pelo trabalho de ajuste de hiperparâmetros.

      1. Para **Volume adicional por instância (GB)**, digite o tamanho do volume de armazenamento de ML no qual você deseja provisionar cada trabalho de treinamento iniciado pelo trabalho de ajuste de hiperparâmetros. Volumes de armazenamento de ML armazenam artefatos de modelo e estados incrementais.

      1. Para a **chave de criptografia**, se você quiser que a Amazon SageMaker AI use uma AWS chave do Key Management Service para criptografar dados no volume de armazenamento de ML anexado às instâncias de treinamento, especifique a chave.

   1. Para **Limites de recursos**, forneça as seguintes informações:

      1. Para **Máximo de trabalhos de treinamento**, especifique o número máximo de trabalhos de treinamento que você deseja que o trabalho de ajuste de hiperparâmetros inicie. Um trabalho de ajuste de hiperparâmetros pode iniciar no máximo 500 trabalhos de treinamento.

      1. Para **Máximo de trabalhos de treinamento paralelos**, especifique o número máximo de trabalhos de treinamento simultâneos que o trabalho de ajuste de hiperparâmetros pode iniciar. Um trabalho de ajuste de hiperparâmetros pode iniciar no máximo 10 trabalhos de treinamento simultâneos.

      1. Para **Condição de interrupção**, especifique o tempo máximo em segundos, minutos, horas ou dias durante o qual você deseja que cada trabalho de treinamento iniciado pelo trabalho de ajuste de hiperparâmetros seja executado.

   1. Para **Tags**, especifique uma ou mais tags para gerenciar o trabalho de ajuste de hiperparâmetros. Cada tag consiste em uma chave e um valor opcional. Chaves de tags devem ser exclusivas por recurso.

   1. Escolha **Criar trabalhos** para executar o trabalho de ajuste de hiperparâmetros.

## Usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros (API)
<a name="sagemaker-mkt-algo-tune-api"></a>

Para usar um algoritmo para executar um trabalho de ajuste de hiperparâmetros usando a SageMaker API, especifique o nome ou o Amazon Resource Name (ARN) do algoritmo como o campo `AlgorithmName` do objeto para [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html)o qual você passa. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHyperParameterTuningJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHyperParameterTuningJob.html) Para obter informações sobre o ajuste de hiperparâmetros na SageMaker IA, consulte[Ajuste automático do modelo com SageMaker IA](automatic-model-tuning.md).

## Use um algoritmo para executar um trabalho de ajuste de hiperparâmetros ([Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable))
<a name="sagemaker-mkt-algo-tune-sdk"></a>

Use um algoritmo que você criou ou assinou AWS Marketplace para criar um trabalho de ajuste de hiperparâmetros, criar um `AlgorithmEstimator` objeto e especificar o Amazon Resource Name (ARN) ou o nome do algoritmo como o valor do argumento. `algorithm_arn` Em seguida, inicialize um objeto `HyperparameterTuner` com o `AlgorithmEstimator` que você criou como o valor do argumento `estimator`. Por fim, chame o método `fit` do `AlgorithmEstimator`. Por exemplo:

```
from sagemaker import AlgorithmEstimator
from sagemaker.tuner import HyperparameterTuner

data_path = os.path.join(DATA_DIR, 'marketplace', 'training')

algo = AlgorithmEstimator(
            algorithm_arn='arn:aws:sagemaker:us-east-2:764419575721:algorithm/scikit-decision-trees-1542410022',
            role='SageMakerRole',
            instance_count=1,
            instance_type='ml.c4.xlarge',
            sagemaker_session=sagemaker_session,
            base_job_name='test-marketplace')

train_input = algo.sagemaker_session.upload_data(
    path=data_path, key_prefix='integ-test-data/marketplace/train')

algo.set_hyperparameters(max_leaf_nodes=10)
tuner = HyperparameterTuner(estimator=algo, base_tuning_job_name='some-name',
                                objective_metric_name='validation:accuracy',
                                hyperparameter_ranges=hyperparameter_ranges,
                                max_jobs=2, max_parallel_jobs=2)

tuner.fit({'training': train_input}, include_cls_metadata=False)
tuner.wait()
```