开始使用免费开始使用

批量归一化(Batch Normalization)

作为对模型结构的最后一次改进,请在两个线性层之后各添加一个批量归一化层。批量归一化技巧通常能加速训练收敛,并帮助模型缓解梯度消失和梯度爆炸问题。

torch.nntorch.nn.init 已分别以 nninit 的别名为您导入。实现模型结构的改动后,请准备回答一个关于批量归一化工作方式的简短问题!

本练习是课程的一部分

PyTorch 深度学习进阶

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

class Net(nn.Module):
    def __init__(self):
        super().__init__()
        self.fc1 = nn.Linear(9, 16)
        # Add two batch normalization layers
        ____ = ____
        self.fc2 = nn.Linear(16, 8)
        ____ = ____
        self.fc3 = nn.Linear(8, 1)
        
        init.kaiming_uniform_(self.fc1.weight)
        init.kaiming_uniform_(self.fc2.weight)
        init.kaiming_uniform_(self.fc3.weight, nonlinearity="sigmoid")
编辑并运行代码