Pytorch BatchNorm层的参数是否应正则化

Pytorch BatchNorm层的参数是否应正则化,pytorch,Pytorch,当我使用Pytork训练CNN时,L2正则化将用于调整模型中的参数。但是pytorch代码“重量衰减”将使用L2来更新所有参数。BatchNorm层中的参数是否也应该由L2进行泛化?如果在nn.Conv2d或nn.Linear之后使用BatchNorm,则可以。 因此,学习到的权重和偏差对网络“有效”权重的实际L2范数有直接影响 因此,如果使用L2正则化将权重推向零,则还必须正则化批处理范数参数。如果在nn.Conv2d或nn.Linear之后使用批处理范数,则可以。 因此,学习到的权重和偏差对

当我使用Pytork训练CNN时,L2正则化将用于调整模型中的参数。但是pytorch代码“重量衰减”将使用L2来更新所有参数。BatchNorm层中的参数是否也应该由L2进行泛化?

如果在
nn.Conv2d
nn.Linear
之后使用BatchNorm,则可以。
因此,学习到的权重和偏差对网络“有效”权重的实际L2范数有直接影响


因此,如果使用L2正则化将权重推向零,则还必须正则化批处理范数参数。

如果在
nn.Conv2d
nn.Linear
之后使用批处理范数,则可以。
因此,学习到的权重和偏差对网络“有效”权重的实际L2范数有直接影响


因此,如果使用L2正则化将权重推向零,则还必须正则化批处理范数参数。

@Rika一般来说,我发现L2正则化没有那么大好处,因此我根本不使用它。我认为,基于我们对我们试图解决的特定问题的知识选择“正则化”/“先验”比仅仅使用“全局”假设要好。@Rika一般来说,我发现L2正则化没有那么大好处,因此我根本不使用它。我认为,基于我们对我们试图解决的具体问题的了解,选择“正则化”/“先验”比仅仅使用“全局”假设要好。