모델 조정 Sequence-to-Sequence - Amazon SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

모델 조정 Sequence-to-Sequence

하이퍼파라미터 튜닝이라고도 하는 자동 모델 튜닝은 데이터 세트에 대한 광범위한 하이퍼파라미터를 테스트하는 여러 작업을 실행하여 최적의 모델 버전을 찾습니다. 튜닝 가능한 하이퍼파라미터, 각 하이퍼파라미터에 대한 값 범위 및 목표 지표를 선택합니다. 알고리즘에서 계산하는 지표 중에서 목표 지표를 선택합니다. 자동 모델 튜닝은 선택한 하이퍼파라미터를 검색하여 목표 지표를 최적화하는 모델을 만드는 값 조합을 찾습니다.

모델 튜닝에 대한 추가 정보는 를 사용한 자동 모델 튜닝 SageMaker 단원을 참조하세요.

알고리즘으로 Sequence-to-Sequence 계산된 지표

Sequence-to-Sequence 알고리즘은 훈련 중 계산되는 3가지 지표를 보고합니다. 하이퍼파라미터 값을 튜닝하는 경우 최적화하려면 이러한 지표 중 하나를 목표 지표로 선택해야 합니다.

지표 이름 설명 최적화 방향
validation:accuracy

검증 데이터 세트에 대해 계산된 정확도

최대화

validation:bleu

검증 세트에 대해 계산된 Bleu 점수 BLEU 계산 비용이 많이 들기 때문에 검증 데이터 세트의 BLEU 무작위 하위 샘플을 계산하여 전체 훈련 프로세스를 가속화할 수 있습니다. bleu_sample_size 파라미터를 사용하여 하위 샘플을 지정합니다.

최대화

validation:perplexity

Perplexity는 검증 데이터 세트에 대해 계산되는 손실 함수입니다. Perplexity는 경험적 샘플과 모델이 예측한 분포 간 교차 엔트로피를 측정하고, 모델이 샘플 값을 얼마나 잘 예측했는지를 측정합니다. 샘플을 정확하게 예측하는 모델은 perplexity가 낮습니다.

최소화

조정 가능한 Sequence-to-Sequence 하이퍼파라미터

SageMaker 시퀀스 대 시퀀스 알고리즘에 대해 다음 하이퍼파라미터를 조정할 수 있습니다. Sequence to Sequence 목표 지표에 가장 큰 영향을 미치는 하이퍼파라미터는 batch_size, optimizer_type, learning_rate, num_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 유니폼 유형: 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

반복 신경망에만 적용됩니다(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]