如何在pytorch中获得自定义损失函数的权重?

时间:2018-04-13 11:59:45

标签: python pytorch loss-function

我在pytorch中有一个模型,并希望添加L1正则化insde the loss_function。但我不想将权重传递给loss_function() - 有更好的方法吗?有关详细信息,请参阅下面的loss_function()。

{{1}}

1 个答案:

答案 0 :(得分:0)

我认为这样的事情可行:

我们定义了以torch.norm作为输入的损失函数。请注意,torch Tensor的输入应为.data,因此我们需要在图层的权重中执行Parameter,因为它是layer。然后,我们计算p=1设置un def l1_loss(layer): return (torch.norm(layer.weight.data, p=1)) lin1 = nn.Linear(8, 64) l = l1_loss(lin1) (L1)的范数。

calendar2.add(Calendar.DATE, 1);
calendar3.add(Calendar.DATE, 1);