相关疑难解决方法(0)

在PyTorch中添加L1/L2正则化?

有什么办法,我可以在PyTorch中添加简单的L1/L2正则化吗?我们可以通过简单地添加data_losswith 来计算正则化损失reg_loss但是有没有明确的方法,PyTorch库的任何支持都可以更轻松地完成它而不需要手动执行它?

pytorch

23
推荐指数
7
解决办法
4万
查看次数

在Pytorch中,如何将L1正则化器添加到激活中?

(pytorch初学者在这里)

我想将L1正则化器添加到ReLU的激活输出中.更一般地说,如何仅将规则化器添加到网络中的特定层?

这篇文章可能有关: 在PyTorch中添加L1/L2正则化? 但无论是否相关,或者我不明白答案:

它指的是在优化中应用的L2正则化器,这是另一回事.换句话说,如果总的期望损失是

crossentropy + lambda1*L1(layer1) + lambda2*L1(layer2) + ...
Run Code Online (Sandbox Code Playgroud)

我相信提供给torch.optim.Adagrad的参数仅适用于交叉熵损失.或者它可能适用于整个网络的所有参数(权重).但无论如何,它似乎不允许将单一的正则化应用于单层激活,并且不会提供L1损失.

另一个相关主题是nn.modules.loss,其中包含L1Loss().从文档中,我还不知道如何使用它.

最后,有一个模块https://github.com/pytorch/pytorch/blob/master/torch/legacy/nn/L1Penalty.py似乎最接近目标,但它被称为"遗产".这是为什么?

python pytorch

15
推荐指数
3
解决办法
1万
查看次数

标签 统计

pytorch ×2

python ×1