Ajustar um Sequence-to-Sequence modelo - Amazon SageMaker

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

Ajustar um Sequence-to-Sequence modelo

O ajuste automático de modelos, também conhecido como ajuste de hiperparâmetros, localiza a melhor versão de um modelo executando vários trabalhos que testam uma série de hiperparâmetros no seu conjunto de dados. Você escolhe os hiperparâmetros ajustáveis, um intervalo de valores para cada um e uma métrica objetiva. Você escolhe a métrica objetiva entre as métricas que o algoritmo calcula. O ajuste de modelo automático pesquisa os hiperparâmetros escolhidos para encontrar a combinação de valores que resultam no modelo que otimiza a métrica objetiva.

Para mais informações sobre o ajuste de modelos, consulte Ajuste automático do modelo com SageMaker.

Métricas calculadas pelo algoritmo Sequence-to-Sequence

O algoritmo Seq2Seq relata três métricas que são calculadas durante o treinamento. Escolha um deles como um objetivo para otimizar ao ajustar os valores dos hiperparâmetros.

Nome da métrica Descrição Direção de otimização
validation:accuracy

Precisão calculada no conjunto de dados de validação.

Maximizar

validation:bleu

Pontuação Bleu calculada no conjunto de dados de validação. Como BLEU a computação é cara, você pode optar por computar BLEU em uma subamostra aleatória do conjunto de dados de validação para acelerar o processo geral de treinamento. Use o parâmetro bleu_sample_size para especificar a subamostra.

Maximizar

validation:perplexity

Perplexidade, é uma função de perda calculada no conjunto de dados de validação. A perplexidade mede a entropia cruzada entre uma amostra empírica e a distribuição prevista por um modelo e, assim, fornece uma medida de quão bem um modelo prediz os valores da amostra. Modelos que são bons em predizer uma amostra têm baixa perplexidade.

Minimizar

Hiperparâmetros ajustáveis Sequence-to-Sequence

Você pode ajustar os seguintes hiperparâmetros para o algoritmo SageMaker Sequence to Sequence. Os hiperparâmetros que têm o maior impacto nas métricas objetivas de Seq2Seq são: batch_size, optimizer_type, learning_rate, num_layers_encoder e num_layers_decoder.

Nome do parâmetro Tipo de parâmetro Intervalos recomendados
num_layers_encoder

IntegerParameterRange

[1-10]

num_layers_decoder

IntegerParameterRange

[1-10]

batch_size

CategoricalParameterRange

[16,32,64,128,256,512,1024,2048]

optimizer_type

CategoricalParameterRange

['adam', 'sgd', 'rmsprop']

weight_init_type

CategoricalParameterRange

['xavier', 'uniform']

weight_init_scale

ContinuousParameterRange

Para o tipo xavier: MinValue: 2.0, MaxValue: 3.0 Para o tipo uniforme: MinValue: -1.0, MaxValue: 1.0

learning_rate

ContinuousParameterRange

MinValue: 0,00005, MaxValue 0,2

weight_decay

ContinuousParameterRange

MinValue: 0,0, MaxValue 0,1

momentum

ContinuousParameterRange

MinValue: 0,5, MaxValue 0,9

clip_gradient

ContinuousParameterRange

MinValue: 1,0, MaxValue 5,0

rnn_num_hidden

CategoricalParameterRange

Aplicável somente a redes neurais recorrentes (RNNs). [128,256,512,1024,2048]

cnn_num_hidden

CategoricalParameterRange

Aplicável somente a redes neurais convolucionais (). CNNs [128,256,512,1024,2048]

num_embed_source

IntegerParameterRange

[256-512]

num_embed_target

IntegerParameterRange

[256-512]

embed_dropout_source

ContinuousParameterRange

MinValue: 0,0, MaxValue 0,5

embed_dropout_target

ContinuousParameterRange

MinValue: 0,0, MaxValue 0,5

rnn_decoder_hidden_dropout

ContinuousParameterRange

MinValue: 0,0, MaxValue 0,5

cnn_hidden_dropout

ContinuousParameterRange

MinValue: 0,0, MaxValue 0,5

lr_scheduler_type

CategoricalParameterRange

['plateau_reduce', 'fixed_rate_inv_t', 'fixed_rate_inv_sqrt_t']

plateau_reduce_lr_factor

ContinuousParameterRange

MinValue: 0,1, MaxValue 0,5

plateau_reduce_lr_threshold

IntegerParameterRange

[1-5]

fixed_rate_lr_half_life

IntegerParameterRange

[10-30]