批量归一化是非线性操作吗?
Is batch normalisation a nonlinear operation?
batch normalization 可以被认为是像 relu 或 sigmoid 这样的非线性操作吗?
我遇到过这样的 resnet 块:
: IBasicBlock(
(bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(prelu): PReLU(num_parameters=512)
(conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
)
所以我想知道batchnormalisation是否可以作为非线性操作
批量归一化在数据点 xi 中是非线性的 在每批训练的基础上,但在推理过程中是线性的缩放参数(因为这些是固定的)。
batch normalization 可以被认为是像 relu 或 sigmoid 这样的非线性操作吗?
我遇到过这样的 resnet 块:
: IBasicBlock(
(bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(prelu): PReLU(num_parameters=512)
(conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)
(bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
)
所以我想知道batchnormalisation是否可以作为非线性操作
批量归一化在数据点 xi 中是非线性的 在每批训练的基础上,但在推理过程中是线性的缩放参数(因为这些是固定的)。