Zacznij terazZacznij za darmo

Część 2: Definiowanie pełnego modelu

Czy wiesz, że wytrenowanie jednego z wariantów Google Neural Machine Translator tylko dla zadania tłumaczenia z angielskiego na francuski zajęło około 6 dni i wymagało 96 procesorów GPU?

W tym ćwiczeniu zdefiniujesz podobny, ale znacznie prostszy model neuronowego tłumaczenia maszynowego oparty na architekturze koder-dekoder. Konkretnie – użyjesz wcześniej zdefiniowanych wejść i wyjść, aby utworzyć obiekt Model w Keras, a następnie skompilujesz model z podaną funkcją straty i optymalizatorem.

Dostępne są następujące zmienne zdefiniowane wcześniej: en_inputs (warstwa wejściowa kodera), en_out i en_state (wyjście GRU kodera), de_out (wyjście GRU dekodera) oraz de_pred (predykcja dekodera).

To ćwiczenie jest częścią kursu

Tłumaczenie maszynowe z Keras

Zobacz kurs

Instrukcje do ćwiczenia

  • Zdefiniuj Model Keras, który przyjmuje en_inputs jako wejście i predykcje dekodera (de_pred) jako wyjście.
  • Skompiluj zdefiniowany model, wywołując <model>.compile z optymalizatorem 'adam', funkcją straty opartą na entropii krzyżowej i dokładnością (acc) jako metryką.
  • Wyświetl podsumowanie modelu.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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.____()
Edytuj i uruchom kod