

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

# Definir métricas de treinamento
<a name="define-train-metrics"></a>

SageMaker A IA analisa automaticamente os registros de trabalhos de treinamento e envia métricas de treinamento para o. CloudWatch Por padrão, a SageMaker IA envia métricas de utilização de recursos do sistema listadas em [SageMaker AI Jobs e Endpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/monitoring-cloudwatch.html#cloudwatch-metrics-jobs) Metrics. Se você quiser que a SageMaker IA analise registros e envie métricas personalizadas de um trabalho de treinamento com seu próprio algoritmo CloudWatch, você precisa especificar as definições de métricas passando o nome das métricas e expressões regulares ao configurar uma solicitação de trabalho de treinamento de SageMaker IA.

Você pode especificar as métricas que deseja monitorar usando o console de SageMaker IA, o [SDK do SageMaker AI Python](https://github.com/aws/sagemaker-python-sdk) ou a API de IA de baixo nível SageMaker .

Se estiver usando seu próprio algoritmo, faça o seguinte:
+ Certifique-se de que o algoritmo grave as métricas que você deseja capturar nos logs.
+ Defina uma expressão regular que pesquise com precisão os registros para capturar os valores das métricas para as quais você deseja enviar CloudWatch.

Por exemplo, suponhamos que o seu algoritmo emita as seguintes métricas de erro de treinamento e de validação:

```
Train_error=0.138318;  Valid_error=0.324557;
```

Se você quiser monitorar essas duas métricas CloudWatch, o dicionário para as definições de métricas deve ser semelhante ao exemplo a seguir:

```
[
    {
        "Name": "train:error",
        "Regex": "Train_error=(.*?);"
    },
    {
        "Name": "validation:error",
        "Regex": "Valid_error=(.*?);"
    }    
]
```

No regex da métrica `train:error` definida no exemplo anterior, a primeira parte do regex localiza o texto exato "Train\$1error=", e a expressão `(.*?);` captura todos os caracteres até que o primeiro ponto e vírgula apareça. Nessa expressão, os parênteses informam ao regex para capturar o que está dentro deles, `.` significa qualquer caractere, `*` significa zero ou mais, e `?` significa capturar apenas até a primeira instância do caractere `;`.

## Defina métricas usando o SageMaker SDK AI Python
<a name="define-train-metrics-sdk"></a>

Defina as métricas para as quais você deseja enviar CloudWatch especificando uma lista de nomes de métricas e expressões regulares como `metric_definitions` argumento ao inicializar um `Estimator` objeto. Por exemplo, se você quiser monitorar as `validation:error` métricas `train:error` e em CloudWatch, sua `Estimator` inicialização seria semelhante ao exemplo a seguir:

```
import sagemaker
from sagemaker.estimator import Estimator

estimator = Estimator(
    image_uri="your-own-image-uri",
    role=sagemaker.get_execution_role(), 
    sagemaker_session=sagemaker.Session(),
    instance_count=1,
    instance_type='ml.c4.xlarge',
    metric_definitions=[
       {'Name': 'train:error', 'Regex': 'Train_error=(.*?);'},
       {'Name': 'validation:error', 'Regex': 'Valid_error=(.*?);'}
    ]
)
```

[Para obter mais informações sobre treinamento usando estimadores do [Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable), consulte Sagemaker Python SDK on.](https://github.com/aws/sagemaker-python-sdk#sagemaker-python-sdk-overview) GitHub 

## Defina métricas usando o console de SageMaker IA
<a name="define-train-metrics-console"></a>

Se você escolher a opção **Seu próprio contêiner de algoritmo no ECR** como sua fonte de algoritmo no console de SageMaker IA ao criar um trabalho de treinamento, adicione as definições de **métricas na seção Métricas**. A captura de tela a seguir mostra como ela deve ficar depois de adicionar os nomes das métricas de exemplo e as expressões regulares correspondentes.

![\[Exemplo de formulário de Opções de algoritmo no console.\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/training-metrics-using-smconsole.png)


## Defina métricas usando a API de SageMaker IA de baixo nível
<a name="define-train-metrics-api"></a>

Defina as métricas para as quais você deseja enviar CloudWatch especificando uma lista de nomes de métricas e expressões regulares no `MetricDefinitions` campo do parâmetro de [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html)entrada que você passa para a [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html)operação. Por exemplo, se você quiser monitorar as `validation:error` métricas `train:error` e em CloudWatch, você `AlgorithmSpecification` teria a seguinte aparência:

```
"AlgorithmSpecification": {
    "TrainingImage": your-own-image-uri,
    "TrainingInputMode": "File",
    "MetricDefinitions" : [
        {
            "Name": "train:error",
            "Regex": "Train_error=(.*?);"
        },
        {
            "Name": "validation:error",
            "Regex": "Valid_error=(.*?);"
        }
    ]
}
```

Para obter mais informações sobre como definir e executar um trabalho de treinamento usando a API de SageMaker IA de baixo nível, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html).