目录
1. introduction
- 在实际应用中,采用自适应的模式,,即在批量归一化前面加一个参数γ。即:
- BN(X)=γ * (x*u)/σ + β
- 在实际应用中,批量归一化收敛速度非常快,具有很强的泛化能力,某些情况下可以完全替代正则化与dropout。
- 依然按数据维度BatchNorm1d,BatchNorm2d,BatchNorm3d
2.操作走一走
依然采用 =7= 中的双半圆数据,对构建模型时(2.3节)添加self.BN=nn,BatchModrm1d(hiddendim)
class Logic_Dropout_Net(LogicNet):
def __init__(self, inputdim, hiddendim, outputdim):
super(Logic_Dropout_Net,self).__init__(inputdim, hiddendim, outputdim)
self.BN =nn.BatchNorm1d(hiddendim) #定义批量归一化(BN)层
def forward(self,x):
x = self.Linear1(x)
x = torch.tanh(x)
x = nn.functional.dropout(x, p=0.07, traing=self.self.training)
x = self.Linear2(x)
return x
model = Logic_Dropout_Net(inputdim=2, hiddendim=500, outputdim=2)