深度学习数学原理与张量处理单元解析
1. 梯度下降与反向传播
梯度下降结合反向传播的方法,并不一定能找到损失函数的全局最小值,通常只能找到局部最小值。不过在实际应用中,这未必会成为问题。
1.1 交叉熵及其导数
当采用交叉熵作为损失函数时,可以运用梯度下降法。逻辑损失函数的定义如下:
$E(c) = -\sum[c_{i}\ln(p_{i}) + (1 - c_{i})\ln(1 - p_{i})]$
其中,$c$ 表示独热编码的类别(或标签),$p$ 表示经过 softmax 函数处理后的概率。由于交叉熵应用于经过 softmax 处理的概率和独热编码的类别,在计算关于最终权重分数 $score_{i}$ 的梯度时,需要考虑链式法则。
$ \frac{\partial E}{\partial score_{i}} = \frac{\partial E}{\partial p_{i}}\frac{\partial p_{i}}{\partial score_{i}}$
下面分别计算两个部分:
- 先计算 $\frac{\partial E}{\partial p_{i}}$:
$ \frac{\partial E}{\partial p_{i}} = \frac{\partial(-[c_{i}\ln(p_{i}) + (1 - c_{i})\ln(1 - p_{i})])}{\partial p_{i}} = -\frac{c_{i}}{p_{i}} + \frac{1 - c_{i}}{1 - p_{i}}$
- 再计算 $\frac{\partial p_{i}}{\partial score_{i}
超级会员免费看
订阅专栏 解锁全文
9万+

被折叠的 条评论
为什么被折叠?



