我这样声明 ReLU 函数:
def relu(x):
return (x if x > 0 else 0)
并且发生了 ValueError 并且其回溯消息是
ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()
但是,如果我用 numpy 更改 ReLU 函数,它会起作用:
def relu_np(x):
return np.maximum(0, x)
为什么这个函数(relu(x)
)不起作用?我不明白...
=================================
使用的代码:
>>> x = np.arange(-5.0, 5.0, 0.1)
>>> y = relu(x)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "filename", line, in relu
return (x if x > 0 else 0)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()