首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测试过程中的批量规范化

测试过程中的批量规范化
EN

Stack Overflow用户
提问于 2020-08-01 18:26:19
回答 2查看 1.2K关注 0票数 0

我正在研究一个二维时间序列问题,向量大小为140*6,用于使用CNN进行二进制分类。我没有使用任何缩放和归一化技术,而是直接向CNN提供3层隐藏层和批量规格化层(批号为256 )的数据,在培训.Since期间,我必须实时测试它,以及批量大小为1的数据,那么,对于任何培训layer.And,在没有计算任何均值或std偏差的情况下,layer.And也应该在最后测试过程中进行批量标准化,或者只为培训层计算和使用平均值和std偏差。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-02 04:05:40

在测试期间不使用批处理规范化。其原因是为了缓解训练数据中不同批次之间的协方差转移问题。协方差变换导致坏的模型被训练,因此,我们使用它。在测试过程中,它没有任何作用。

如果您使用了批处理大小为1的批处理规范化,那么,这就是简单的实例规范化。

票数 1
EN

Stack Overflow用户

发布于 2022-09-23 17:29:26

这个问题是两年前提出的,但我不认为接受的答案是正确的!批规范化是在测试期间使用的(至少您保留了批规范层),但是使用了培训数据保存的均值和方差的运行平均值。因此,在测试过程中,它不是实际的批量规范化,而是与保存的培训统计数据进行线性转换。因此,如果您使用批处理大小为1进行测试,则只需使用已保存的培训数据的运行平均值。

以下线程回答了这个问题:Batch normalization during testing

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

https://stackoverflow.com/questions/63208665

复制
相关文章

相似问题

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