Dav*_*eAl 8 batch-processing neural-network keras tensorflow batch-normalization
我目前正在尝试使用Keras中的批量标准化来实现模型.我已经成功地在训练阶段实施了它.
但是,对于测试,批量标准化在进行网络前向传递之前计算整个总体的统计数据(均值和方差)(BN均值和方差是预先计算的,然后保持静态;这与训练形成对比阶段,其中均值和方差由批次确定).
我关于Keras的问题是:
假设(X,y)是整个人口.假设(X_batch,y_batch)是一个批处理(整个人口的一个子集)
如果我用的话
model.test_on_batch(X_batch, y_batch)
Run Code Online (Sandbox Code Playgroud)
如何将批次规范化层传递给X和y的整个总体的均值和方差?有什么方法可以让keras自动处理吗?
如何将批次规范化层传递给X和y的整个总体的均值和方差?有什么方法可以让keras自动处理吗?
Keras应该这样做(在最近的版本中):
https://github.com/fchollet/keras/issues/81
要仔细检查,您可能想要尝试batch_size=1测试/预测时间,如果Keras无法使用全局统计信息,您可能会看到非常糟糕的结果.
| 归档时间: |
|
| 查看次数: |
4361 次 |
| 最近记录: |