gpt4 book ai didi

python - Softmax函数的导数

转载 作者:行者123 更新时间:2023-11-30 09:24:35 26 4
gpt4 key购买 nike

我正在尝试计算softmax函数的导数。我有一个二维 numpy 数组,我正在沿轴 1 计算该数组的 softmax。我的Python代码是:

def softmax(z):

return np.exp(z) / np.sum(np.exp(z), axis=1, keepdims=True)

现在我计算softmax方程导数的python代码是:

def softmax_derivative(Q):

x=softmax(Q)
s=x.reshape(-1,1)
return (np.diagflat(s) - np.dot(s, s.T))

这是正确的方法吗?

此外,如果我的 numpy 数组的形状为 (3,3),那么 softmax 导数返回的数组的形状是什么?返回的数组的形状会是 (9,9) 吗?

最佳答案

我会减去 z 的最大值并执行以下操作:

def softmax(z):
exps = np.exp(z - z.max())
return exps/np.sum(exps)

提高稳定性,但是,否则你所做的是正确的。

关于python - Softmax函数的导数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54682964/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com