Tensorflow で LSTM モデルを使用しています。
すでに LSTM モデルをトレーニングして保存しました。今、私は文を生成する最後のタスクに取り組んでいます。ここに私の疑似コードがあります:
# We have already the run_epoch(session, m, data, eval_op, verbose=False) function with fee_dict like this:
feed_dict = {m.input_data: x,
m.targets: y,
m.initial_state: state}
...
# train and save model
...
# load saved model for generating task
new_sentence = [START_TOKEN]
# Here I want to generate a sentence until END_TOKEN is generated.
while new_sentence[-1] != END_TOKEN:
logits = get_logits(model, new_sentence)
# get argmax(logits) or sample(logits)
next_word = argmax(logits)
new_sentence.append(next_word)
print(new_sentence)
私の質問は次
のとおりです。
モデルをトレーニング、検証、またはテストするとき、入力とそのラベルの両方を(シフトされた入力によって) feed_dictディクショナリを介してモデルにフィードする必要があります。しかし、生成タスクでは、生成文new_sentenceである入力が 1 つしかありません。
正しいget_logits関数または完全な生成関数も構築するにはどうすればよいですか?