0

我正在使用 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是标量值函数?

4

0 回答 0