Частина 2: Визначення повної моделі
Чи знали ви, що на тренування варіанта Google Neural Machine Translator лише для завдання перекладу з англійської на французьку пішло приблизно 6 днів і 96 GPU?
У цій вправі ви визначите схожу, але значно простішу модель нейронного машинного перекладу на основі схеми «енкодер–декодер». Зокрема, ви використаєте раніше оголошені входи та виходи, визначите об'єкт Keras Model і скомпілюєте модель із заданою функцією втрат і оптимізатором.
Тут вам надано en_inputs (вхідний шар енкодера), en_out і en_state (вихід GRU енкодера), de_out (вихід GRU декодера) та de_pred (прогноз декодера), які ви визначили раніше.
Ця вправа є частиною курсу
Machine Translation з Keras
Інструкції до вправи
- Визначте Keras
Model, яка приймаєen_inputsяк входи, а передбачення декодера (de_pred) — як вихід. - Скомпілюйте визначену модель, викликавши
<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.____()