激活函数的作用
Function of Activation functions
是否可以定义一个激活函数的函数?我试过:
def activation():
# return nn.Sin()
# return nn.Tanh()
# return nn.Sigmoid()
# return nn.Tanhshrink()
return nn.HardTanh(-1,1)
# return nn.Hardswish()
# return nn.functionnal.silu()
但是我在尝试调用它时遇到错误。这是一个例子:
def f():
return nn.Tanh()
input = torch.randn(2)
output = f(input)
print(output)
它输出“TypeError:f() 采用 0 个位置参数,但给出了 1 个”。即使我给它一个参数 x 也不起作用。
确实,您没有为函数提供参数。这是你想要做的吗?
def f(x):
return nn.Tanh(x)
您可以使用 object-oriented 方法:
>>> f = nn.Tanh()
>>> output = f(x)
或者函数式方法,您可以在其中找到 nn.Tanh
inside nn.functional
as tanh
的等价物。
>>> f = nn.functional.tanh
>>> output = f(x)
是否可以定义一个激活函数的函数?我试过:
def activation():
# return nn.Sin()
# return nn.Tanh()
# return nn.Sigmoid()
# return nn.Tanhshrink()
return nn.HardTanh(-1,1)
# return nn.Hardswish()
# return nn.functionnal.silu()
但是我在尝试调用它时遇到错误。这是一个例子:
def f():
return nn.Tanh()
input = torch.randn(2)
output = f(input)
print(output)
它输出“TypeError:f() 采用 0 个位置参数,但给出了 1 个”。即使我给它一个参数 x 也不起作用。
确实,您没有为函数提供参数。这是你想要做的吗?
def f(x):
return nn.Tanh(x)
您可以使用 object-oriented 方法:
>>> f = nn.Tanh()
>>> output = f(x)
或者函数式方法,您可以在其中找到 nn.Tanh
inside nn.functional
as tanh
的等价物。
>>> f = nn.functional.tanh
>>> output = f(x)