我正在使用 Autograd,这是一个区分功能的 numpy 包装器。输出是 $f^\prime$。一个例子是tanh_prime = grad(np.tanh)
返回 tanh 的一阶导数。
每当我将grad
调用的输出应用于数组时,都会出现异常。例如,当一个电话grad(np.tanh)(np.arange(5))
,我得到
TypeError: Output [ 0. 0.76159416 0.96402758 0.99505475 0.9993293
] can't be cast to float. Function grad requires a scalar-valued function. Try
jacobian or elementwise_grad.
异常字符串中的那个数组是梯度,但我不能存储它,因为它是异常的一部分。此外,为什么要调用异常,因为np.tanh
是标量值函数?