我想把多维数组传递给reluprime函数

def reluprime(x):
    if x > 0:
        return 1
    else:
        return 0

…其中x是整个数组。它返回
ValueError:具有不止一个元素的数组的真值是不明确的。使用a.any()或a.all()
我对normalrelu函数有这个问题,我使用了max()而不是python函数np.max(),它起了作用。但是对于relu prime,它两种方式都不起作用。我试过:
def reluprime(x):
    if np.greater(x, 0):
        return 1
    else:
        return 0

…它仍然返回相同的错误。我该怎么解决?谢谢您。

最佳答案

if语句没有意义,因为它只对整个数组进行了一次求值。如果你想对数组中的每个元素都有一个if语句,那么你应该做一些类似的事情:

def reluprime(x):
    return np.where(x > 0, 1.0, 0.0)

07-26 09:34
查看更多