파트 2: 전체 모델 정의하기
Google Neural Machine Translator의 한 변형을 영어-프랑스어 번역 작업만으로 학습시키는 데 약 6일과 96개의 GPU가 필요했다는 사실을 알고 계셨나요?
이번 연습에서는 이와 유사하지만 훨씬 단순한 인코더-디코더 기반 신경 기계 번역 모델을 정의해 보겠습니다. 구체적으로, 이전에 정의한 입력과 출력을 사용해 Keras Model 객체를 만들고, 주어진 손실 함수와 옵티마이저로 컴파일합니다.
여기에는 이전에 정의한 en_inputs(인코더 입력 레이어), en_out 및 en_state(인코더 GRU 출력), de_out(디코더 GRU 출력), de_pred(디코더 예측)가 제공됩니다.
이 연습은 강의의 일부입니다
Keras로 배우는 Machine Translation
연습 안내
en_inputs를 입력으로, 디코더 예측(de_pred)을 출력으로 받는 KerasModel을 정의하세요.- 정의한 모델에 대해
<model>.compile을 호출하여'adam'옵티마이저, 교차 엔트로피 손실, 정확도(acc)를 평가지표로 지정해 컴파일하세요. - 모델의 요약 정보를 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
from tensorflow.keras.models import Model
# Define a model with encoder input and decoder output
nmt = ____(____=____, outputs=____)
# Compile the model with an optimizer and a loss
nmt.____(optimizer=____, ____='categorical_crossentropy', metrics=[____])
# View the summary of the model
nmt.____()