def __init__(self, num_ds_dim=4): super(SigmoidFlow, self).__init__() self.num_ds_dim = num_ds_dim self.act_a = lambda x: nn_.softplus(x) self.act_b = lambda x: x self.act_w = lambda x: nn_.softmax(x, dim=2)
def __init__(self, in_dim, hidden_dim, out_dim): super(DenseSigmoidFlow, self).__init__() self.in_dim = in_dim self.hidden_dim = hidden_dim self.out_dim = out_dim self.act_a = lambda x: nn_.softplus(x) self.act_b = lambda x: x self.act_w = lambda x: nn_.softmax(x, dim=3) self.act_u = lambda x: nn_.softmax(x, dim=3) self.u_ = Parameter(torch.Tensor(hidden_dim, in_dim)) self.w_ = Parameter(torch.Tensor(out_dim, hidden_dim)) self.reset_parameters()