gpt4 book ai didi

testing - Tensorflow LSTM 模型测试

转载 作者:行者123 更新时间:2023-11-28 20:53:15 25 4
gpt4 key购买 nike

我是 LSTM 和 Tensorflow 的新手,我正在尝试使用 LSTM 模型来学习然后对我拥有的一些庞大数据集进行分类。 (我不担心我打算学习的准确性)。我尝试以与使用 LSTM 的 PTB 单词预测教程类似的方式来实现该模型。教程中的代码 ( https://tensorflow.googlesource.com/tensorflow/+/master/tensorflow/models/rnn/ptb/ptb_word_lm.py ) 使用以下行使用模型运行 session

 cost, state, _ = session.run([m.cost, m.final_state, eval_op],
{m.input_data: x,
m.targets: y,
m.initial_state: state})

我为我的示例修改了它,如下所示(以获取 logits 并使用它):

  cost, state, _,output,logits = session.run([m.cost, m.final_state, eval_op, m.output,m.logits],
{m.input_data: x,
m.targets: y,
m.initial_state: state})

如果有人可以提供帮助,我的问题如下:

  • 如何将训练时构建的模型用于测试?什么当教程使用 3 个模型进行每个测试、训练和验证时,究竟发生了什么?
  • 测试时的目标如何(如果我不知道它们,请在分类问题中说)。 run_epoch () 中的哪些更改可以以使用训练期间构建的模型的方式完成。
  • 还有一个问题:调试tensorflow图很困难(我发现tensorboard visualizer也很难理解)而且我没有找到学习tensorflow的好资源(该网站似乎缺乏结构/文档)还有什么有资源/调试方法吗?

谢谢。

最佳答案

回答我自己的问题以帮助任何最终来到这里的人:在验证/测试期间,向 runepoch() 指示它是验证/测试阶段(使用 bool 或其他方式)。不要调用成本操作(因为这是唯一需要目标的操作。)因此,验证/测试阶段的修改代码将如下所示:

 state, _,output,logits = session.run([m.final_state, eval_op, m.output,m.logits],
{m.input_data: x,
m.initial_state: state})

稍后使用 logits 计算准确度。

关于testing - Tensorflow LSTM 模型测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36928080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com