Я пытаюсь понять программу для модели seq2seq.Я нашел этот код для декодера:
with tf.variable_scope("decode"):
output_layer = tf.layers.Dense(target_vocab_size)
train_output = decoding_layer_train(encoder_outputs,
encoder_state,
cells,
dec_embed_input,
target_sequence_length,
max_target_sequence_length,
output_layer,
keep_prob)
with tf.variable_scope("decode", reuse=True):
infer_output = decoding_layer_infer(encoder_outputs,
encoder_state,
cells,
dec_embeddings,
target_vocab_to_int['<GO>'],
target_vocab_to_int['<EOS>'],
max_target_sequence_length,
target_vocab_size,
output_layer,
batch_size,
keep_prob,
target_sequence_length)
Почему мы используем один и тот же «декодер» для выходных данных и выводов.Я предполагаю, что аргумент reuse=True
поможет в использовании весов, которые мы получили от train in infer.