【动手学深度学习】暂退法(Dropout)

dropout前后的多层感知机
【动手学深度学习】暂退法(Dropout)_第1张图片
【动手学深度学习】暂退法(Dropout)_第2张图片
将暂退法应用于每个隐藏层的输出(在激活函数之后),并且可以为每一层设置暂退概率:常见的技巧是在靠近输入层的地方设置较低的暂退概率。下面的模型将第一个和第二个隐藏层的暂退概率分别设置为0.2和0.5,并且暂退法只在训练期间有效。
【动手学深度学习】暂退法(Dropout)_第3张图片

net = Net(num_inputs, num_outputs, num_hiddens1, num_hiddens2)

训练和测试
类似于多层感知机的训练和测试

num_epochs, lr, batch_size = 10, 0.5, 256
loss = nn.CrossEntropyLoss(reduction='none')
train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size)
trainer = torch.optim.SGD(net.parameters(), lr=lr)
d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, trainer)

你可能感兴趣的:(动手学深度学习,pytorch,深度学习)