BatchNorm 动量约定 PyTorch
Posted
技术标签:
【中文标题】BatchNorm 动量约定 PyTorch【英文标题】:BatchNorm momentum convention PyTorch 【发布时间】:2018-06-28 23:24:39 【问题描述】:batchnorm momentum convention (default=0.1) 是否与其他库一样正确,例如Tensorflow默认情况下似乎通常是0.9或0.99?或者我们只是使用了不同的约定?
【问题讨论】:
discuss.pytorch.org/t/batch-norm-momentum-default-value/11955 【参考方案1】:看来pytorch中的参数化约定与tensorflow中的不同,所以pytorch中的0.1相当于tensorflow中的0.9。
更准确地说:
在张量流中:
running_mean = decay*running_mean + (1-decay)*new_value
在 PyTorch 中:
running_mean = (1-decay)*running_mean + decay*new_value
这意味着 PyTorch 中的 decay
值等同于 Tensorflow 中的 (1-decay)
值。
【讨论】:
以上是关于BatchNorm 动量约定 PyTorch的主要内容,如果未能解决你的问题,请参考以下文章
nn.BatchNorm讲解,nn.BatchNorm1d, nn.BatchNorm2d代码演示