有什么方法可以使用 python 找到标量值相对于向量的导数?

Is there any way to find the derivative of a scalar value with respect to a vector using python?

我正在尝试编写损失函数。我的损失函数产生值 112.314。我试图找到这个损失函数关于一些权重的导数,它是一个向量。向量是 [3.7, 3.7, 3.9, 4.3, 2.5, 3.3, 4.7]。

到目前为止,我尝试过的是np.gradient(112.314, [3.7, 3.7, 3.9, 4.3, 2.5, 3.3, 4.7])

请参阅 this explanation 使用 MSE 的导数进行梯度下降。简而言之,MSE 的梯度是您的预测值与真实值之间的差异之和。

但这仍然没有告诉你关于你的权重的梯度,那只是关于预测的梯度 - 你还需要用你的模型函数替换等式 1.4 中的 h(x) link,并使用链式法则获得相对于您的权重的梯度。他展示了线性回归的结果。