model.evaluate()在凯拉斯不包括所有数据点
问题描述:
我目前正在学习Keras和使用model.evaluate()
时感到困惑。model.evaluate()在凯拉斯不包括所有数据点
我共有768个数据点,但model.evaluate()
正在评估只有32个数据点,并给出75.52%的准确度。我也尝试了批量大小为100,50,20,10,但它不包括所有的数据点,但精度保持不变。
您可以检查我的Jupyter笔记本文件,如果实施here
我无法理解,如果我做错了什么,或者是Keras的特性/错误。
请帮助我一样。提前致谢。
PS:我试图寻找这个问题在互联网和StackExchange的答案,但没有发现任何。如果我的问题是重复的,请让我知道它的链接,我很乐意从这里删除这个问题!
答
这里的问题在于一个progbar
不evaluate
功能。您的progbar
只是打印评估的第一步。您可以通过检查所有结果是否相同,直到float32
精度(大约是1e-5 - 1e-7
)来轻松检查。所以我不会为这个问题而烦恼,因为jupyter
在显示progbar
时经常遇到问题。
+0
我想你对此的看法是正确的。我早先注意到了结果,但不知道如何理解它们。谢谢你的协助。现在我相信这个'progbar'问题是由'Keras'社区修复的。 – thepunitsingh
这不应该发生。确保你的Keras和theano版本是最新的。尝试从源代码构建keras。如果再次发生这种情况,请在Keras github上提出问题 – Nain
什么是Keras版本?请尝试检查分数的形状。也许这是正确的,只有一个progbar被打破。 –
@Nain我检查了版本,'theano .__ version__'是'0.9.0.dev-c697eeab84e5b8a74908da654b66ec9eca4f1291','keras .__ version__'是'2.0.2'。我在conda环境中,现在将keras更新为其最新版本“2.0.4”。但仍然'model.evaluate()'输出相同。在Git上更新[同一文件](https://github.com/thepunitsingh/keras_tutorials/blob/master/pima-indians-diabetes-categorization.ipynb)以获得当前结果。我想我应该在Keras github上提出这个问题。 – thepunitsingh