我有一个特别的问题,关于在CS231n中使用的软最大值的梯度。在推导出计算每个类的梯度的softmax函数后,作者将梯度除以num_examples,即使梯度不被任何地方求和。这背后的逻辑是什么。为什么我们不能直接使用softmax梯度呢?

发布于 2017-07-24 22:33:02
神经网络学习的一个典型目标是将预期的损失降至最小,从而:
minimise E_{x,y} L(x,y)现在,在实践中,我们使用这个数量的估计,这是一个样本平均数,对一个训练集,十一,一。
minimise 1/N SUM L(xi, yi)在上面的推导中给出的是d(xi,yi) /dθ,但是由于我们要最小化1/N和L(xi,yi),我们应该计算它的梯度,即:
d 1/N SUM L(xi, yi) / d theta = 1/N SUM d L(xi, yi) / d theta这只是偏导数的一个性质(和的导数是导数的和,等等)。注意,在上述所有推导中,作者都谈到了Li,而实际的优化是在L(注意缺少索引i)上执行的,它被定义为L= 1/N SUM_i Li
https://stackoverflow.com/questions/45289209
复制相似问题