python - 带有 NumPy 数组的 ReLU Prime

标签 python arrays numpy

我想将多维数组传递给 relu prime 函数

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

... 其中 x 是整个数组。它返回

ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

我在使用普通的 relu 函数时遇到了这个问题,我没有使用 python 函数 max(),而是使用了 np.max() 并且成功了。但是对于 relu 素数,它无论哪种方式都不起作用。我试过:

def reluprime(x):
    if np.greater(x, 0):
        return 1
    else:
        return 0

... 它仍然返回相同的错误。我怎样才能解决这个问题?谢谢。

最佳答案

由于如果向量中的条目大于 0 则 relu prime 返回 1,否则返回 0,您可以这样做:

def reluprime(x):
    return (x>0).astype(x.dtype)

在上面的代码中,输入数组 x 被假定为一个 numpy 数组。 例如,reluprime(np.array([-1,1,2])) 返回 array([0, 1, 1])

关于python - 带有 NumPy 数组的 ReLU Prime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45021963/

相关文章:

python - 如何将 numpy 矩阵添加为 pandas 数据框的新列?

python - 如何编写 pd.dataframe 方法?

java - Python 相当于 java 中的双冒号 (::) 运算符

javascript - 如何将新属性推送到对象数组中的每个现有对象中?

c - 二维数组的段错误

python - 我怎样才能进行 2d 3d 乘法

python - 如果日期在另一个数据帧的日期范围内且项目相等,则在一个数据帧中分配值

python - 在函数中使用变量 (Python)

javascript - 通过 zapier 代码发布到 API 并收到此错误

python - 找出 Numpy 是否/使用哪个 BLAS 库