It is impossible to declare a constrained parameter in pytorch. So, in __init__ an unconstained parameter is declared, e.g.:
self.my_param = nn.Parameter(torch.zeros(1))
And in forward(), you do the transformation:
my_param_limited = torch.sigmoid(my_param)
this is a dynamically created tensor stored in a local variable