If you are initializing self.alpha as zero initially, torch.sigmoid(self.alpha) would have the value 0.5.
If the input x contains negative values, you would calculate the square root of these negative values, which would yield a NaN output:
x = torch.tensor([[-1]])
print(x ** 0.5)
> tensor([[nan]])

Did the paper mention something about a non-negative condition for the input to this layer?