【发布时间】:2017-12-14 11:42:20
【问题描述】:
我试图在不训练和更新权重的情况下确定模型的准确性,因此我将所有层设置为 trainable = False。
当我在带有shuffle = False 的生成器上运行fit_generator 时,每次都会得到一致的结果。
当我在带有shuffle = True 的生成器上运行fit_generator 时,结果有点跳跃。鉴于输入数据相同,并且模型没有训练,我希望模型的内部状态不会改变,并且无论排序如何,在同一数据集上的准确度都相同。
然而,这种排序依赖意味着尽管trainable = False,模型中的某种状态正在发生变化。导致这种情况的模型内部发生了什么?
【问题讨论】:
-
即使在使用
numpy.random.seed()设置种子后,这是否可以重现? -
没试过设置种子,那不就是保证输入数据的顺序一致吗?我的理解是在这里订购不重要,但我显然遗漏了一些东西
-
我的建议主要是测试你的假设。神经网络的设计很嘈杂,因此总是存在可重现的案例。
-
这个主意不错,会试试的
-
你试过我的答案了吗?
标签: machine-learning neural-network keras theano keras-2