我试图了解pytorch如何更好地工作。通常,在定义神经网络类时,在init()构造函数中,人们编写self.sigmoid = nn.Sigmoid(),以便在forward()方法中他们可以多次调用Sigmoid函数,而无需重新初始化nn。每次Sigmoid()。

但是,为什么nn.Sigmoid不仅仅是一个方法,而不是一个类?

另外,我很好奇在torch.nn中将“ nn”称为(包?库?)。

谢谢!

最佳答案

我的理解是nn.Sigmoid存在可以与其他nn层组成,如下所示:

net = nn.Sequential(
      nn.Linear(3, 4),
      nn.Sigmoid())


如果不需要此功能,则可以使用torch.sigmoid函数。

关于python - 为什么torch.nn.Sigmoid是类而不是方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55621322/

10-12 22:23