Часть 2: знакомство с моделями GRU
Сейчас вы узнаете, как модели Keras могут принимать батчи входных данных произвольного размера. Эта возможность важна по многим причинам. Например, она позволяет определить одну модель Keras и экспериментировать с разными размерами батчей на этапе обучения — без каких-либо изменений в самой модели.
Для этого упражнения keras и numpy (как np) уже импортированы.
Это упражнение является частью курса
Машинный перевод с Keras
Инструкции к упражнению
- Определите входной слой, принимающий батчи произвольного размера с длиной последовательности 3 и размером входа 4.
- Определите слой GRU с 10 скрытыми нейронами, который принимает предыдущий вход и формирует выходные данные.
- Определите модель с именем
model, используя предыдущий входной слой в качестве входа и выход слоя GRU в качестве выхода. Для этого можно использовать синтаксисkeras.models.Model(<argument>=<value>). - Получите выходные данные модели для
x1иx2.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define an input layer
inp = keras.layers.____(____=(____))
# Define a GRU layer that takes in the input
gru_out = keras.layers.____(____)(____)
# Define a model that outputs the GRU output
____ = keras.models.____(inputs=____, outputs=____)
x1 = np.random.normal(size=(2,3,4))
x2 = np.random.normal(size=(5,3,4))
# Get the output of the model and print the result
y1 = ____.____(____)
y2 = ____.____(____)
print("shape (y1) = ", y1.shape, " shape (y2) = ", y2.shape)