![](/img/trans.png)
[英]How to add a learnable bias to one of the network output channel in pytorch
[英]How to use a learnable parameter in pytorch, constrained between 0 and 1?
我想使用一個只取 0 到 1 之間的值的可學習參數。如何在 pytorch 中執行此操作?
目前我正在使用:
self.beta = Parameter(torch.Tensor(1))
#initialize
zeros(self.beta)
但是,當我訓練時,我得到了這個參數的零和 NaN。
您可以讓“原始”參數采用任何值,然后將其通過 sigmoid function 以獲取范圍 (0, 1) 內的值,以供 function 使用。
例如:
class MyZeroOneLayer(nn.Module):
def __init__(self):
self.raw_beta = nn.Parameter(data=torch.Tensor(1), requires_grad=True)
def forward(self): # no inputs
beta = torch.sigmoid(self.raw_beta) # get (0,1) value
return beta
現在您有了一個具有有效范圍 (0,1) 的可訓練參數的模塊
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.