Pytorch报错TypeError : __init__() takes 1 positional argument but 2 were given 原因及解决方法

在使用sigmoid函数时报这个错误,看到了有个博客说是因为类的调用出现错误,但是不知道怎么改。

错误写法
x = nn.Sigmoid(x)
正确写法
outlayer = nn.Sigmoid() # 需要先对类实例化,才能调用
x = outlayer(x)

官网例子:

m = nn.Sigmoid()
loss = nn.BCELoss()
input = torch.randn(3, requires_grad=True)
target = torch.empty(3).random_(2)
output = loss(m(input), target)
output.backward()

你可能感兴趣的:(八阿哥图鉴,深度学习,pytorch,python)