Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

一个严重问题 #358

Open
shining-love opened this issue Jun 29, 2020 · 3 comments
Open

一个严重问题 #358

shining-love opened this issue Jun 29, 2020 · 3 comments

Comments

@shining-love
Copy link

最近一直在研究repo主的这个代码。这个代码算是该领域比较经典的开源repo了。但是很奇怪里面有明显的错误,未有人提及。我仔细看了下repo主的demo测试阶段代码斗胆提出两个问题:(1)BN层在测试阶段采用的是新数据下的均值和标准差,这也是为什么很多人训练结果不错,但测试效果很差的主要原因;(2)测试阶段的dropoutrate为何不关闭?

@ericosmic
Copy link

第一个问题中的 bn层是densenet中的吗

@shining-love
Copy link
Author

第一个问题中的 bn层是densenet中的吗

是的。他的这个repo中densenet中有三处BN层,在测试的时候状态应该改成非训练状态

@piaobuliao
Copy link

https://zhuanlan.zhihu.com/p/56225304

Keras用learning_phase机制来告诉模型当前的所处的模式。假如用户没有手工指定的话,使用fit()时,网络默认将learning_phase设为1,表示训练模式。在预测时,比如调用predict()和evaluate()方法或者在fit()的验证步骤中,网络将learning_phase设为0,表示测试模式。用户可以静态地,在model或tensor添加到一个graph中之前,将learning_phase设为某个值(虽然官方不推荐手动设置),设置后,learning_phase就不可以修改了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants