调整 Sequence-to-Sequence模型 - Amazon SageMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

调整 Sequence-to-Sequence模型

自动模型优化(也称作超参数优化)通过运行很多在数据集上测试一系列超参数的作业来查找模型的最佳版本。您可以选择可优化超参数、每个超参数的值范围和一个目标指标。您可以从算法计算的指标中选择目标指标。自动模型优化将搜索所选超参数以找到导致优化目标指标的模型的值组合。

有关模型优化的更多信息,请参阅自动调整模型 SageMaker

Sequence-to-Sequence算法计算的指标

序列到序列算法报告在训练期间所计算的三个指标。在优化超参数值时,选择其中之一作为优化的目标。

指标名称 描述 优化方向
validation:accuracy

在验证数据集上计算的准确率。

最大化

validation:bleu

在验证数据集上计算的 Bleu 分数。由于BLEU计算成本很高,因此您可以选择在验证数据集的随机子样本BLEU上进行计算,以加快整个训练过程。使用 bleu_sample_size 参数指定子样本。

最大化

validation:perplexity

困惑度,是在验证数据集上计算的损失函数。困惑度评估经验样本与模型预测分布之间的交叉熵,这可用于评估模型预测样本值的效果有多好。能够很好地预测样本的模型具有低困惑度。

最小化

可调超参数 Sequence-to-Sequence

您可以调整 SageMaker 序列到序列算法的以下超参数。对序列到序列目标指标影响最大的超参数包括:batch_sizeoptimizer_typelearning_ratenum_layers_encodernum_layers_decoder

参数名称 参数类型 建议的范围
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

对于 xavier 类型 MinValue:2.0, MaxValue:3.0 对于制服类型::-1.0, MinValue MaxValue:1.0

learning_rate

ContinuousParameterRange

MinValue: 0.00005,: 0.2 MaxValue

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

仅适用于循环神经网络 (RNNs)。[128,256,512,1024,2048]

cnn_num_hidden

CategoricalParameterRange

仅适用于卷积神经网络 () 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]