首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在同一会话中测试时,Tensorflow使用的是最佳权重还是最新权重?

在同一会话中测试时,Tensorflow使用的是最佳权重还是最新权重?
EN

Stack Overflow用户
提问于 2019-11-05 12:35:55
回答 1查看 21关注 0票数 1

这可能是一个愚蠢的问题,但希望有人告诉我是或不是。

假设我在Tensorflow中有一个LSTM网络,并且正在使用Adam Optimizer训练它,通过在训练期间为X和Y变量提供一组X和Y dict来最小化成本函数,然后在同一会话中,为变量提供新的X和Y dict以进行测试,Tensorflow是自动使用在训练期间找到的最佳模型(即使用在训练期间带来最低成本值的权重),还是仅使用其运行中的最新模型(即最新的时期)?

想知道当达到新的较低成本值时,是否需要设置model.saver函数来捕获最佳模型,关闭当前会话,然后使用保存的模型重新打开一个新模型,或者是否可以假设,当我在与训练相同的会话中进行测试时,它将使用最佳模型。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-05 12:46:43

事实并非如此。

该模型依赖于一组权重,这些权重是变量。您可以使用保存程序存储最佳模型,并将训练进度保存为单独的检查点。

其他选择是拥有一组重复的变量,并在找到更好的模型后复制权重。

然而,判断一个模型在X时期是否比Y时期更好通常是不常见的,因为训练精度可能会产生误导(读作:过拟合)。因此,人们通常在每个时期之后评估模型,如果在评估过程中性能变得更好,则保存检查点。这样就不需要维护同一模型的多个副本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58704575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档