더북(TheBook)

7만 5000번 동안 반복하여 모델을 훈련합니다.

코드 10-35 모델 훈련

lang1 = 'eng' ------ 입력으로 사용할 영어
lang2 = 'fra' ------ 출력으로 사용할 프랑스어
input_lang, output_lang, pairs = process_data(lang1, lang2)

randomize = random.choice(pairs)
print('random sentence {}'.format(randomize))

input_size = input_lang.n_words
output_size = output_lang.n_words
print('Input : {} Output : {}'.format(input_size, output_size)) ------ 입력과 출력에 대한 단어 수 출력

embed_size = 256
hidden_size = 512
num_layers = 1
num_iteration = 75000 ------ 7만 5000번 반복하여 모델 훈련

encoder = Encoder(input_size, hidden_size, embed_size, num_layers) ------ 인코더에 훈련 데이터셋을 입력하고 모든 출력과 은닉 상태를 저장
decoder = Decoder(output_size, hidden_size, embed_size, num_layers) ------ 디코더의 첫 번째 입력으로 <SOS> 토큰이 제공되고, 인코더의 마지막 은닉 상태가 디코더의 첫 번째 은닉 상태로 제공됩니다.
model = Seq2Seq(encoder, decoder, device).to(device) ------ 인코더-디코더 모델(seq2seq)의 객체 생성

print(encoder)
print(decoder)

model = trainModel(model, input_lang, output_lang, pairs, num_iteration) ------ 모델 학습
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.