我一直在慢慢地学习tensorflow教程,我想我将不得不再次学习。我没有ML的背景,但是正在慢慢地提高自己的水平。
无论如何,在阅读完RNN教程并运行了培训代码之后,我感到很困惑。
如何实际应用经过训练的模型,以便可以将其用于语言预测?
我知道这是一个可怕的愚蠢而简单的问题,但是我认为它会对其他人有用,因为我已经看到它提出的问题并未得到令人满意的回答。
通常,训练模型时,您首先要进行前进,然后进行后退。前向传递基于输入数据进行预测,而后向传递则根据预测的正确性来调整模型。
因此,当您要应用模型时,只需将新数据作为输入进行正向传递。
在您的特定示例中,使用此代码,您可以通过查看他们如何运行测试集(从第286行开始)来查看它是如何完成的。
# They instantiate the model with is_training=False
mtest = PTBModel(is_training=False, config=eval_config)
# Then they can do a forward pass
test_perplexity = run_epoch(session, mtest, test_data, tf.no_op())
print("Test Perplexity: %.3f" % test_perplexity)
如果您想要实际的预测而不是困惑,那么它就是run_epoch函数中的状态:
cost, state, _ = session.run([m.cost, m.final_state, eval_op],
{m.input_data: x,
m.targets: y,
m.initial_state: state})
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句