标量、向量、矩阵求导大全

tech2022-07-17  162

1.正则化

原定的损失函数: J = − 1 m ∑ i = 1 m ( y ( i ) log ⁡ ( a [ L ] ( i ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − a [ L ] ( i ) ) ) (1) J = -\frac{1}{m} \sum\limits_{i = 1}^{m} \large{(}\small y^{(i)}\log\left(a^{[L](i)}\right) + (1-y^{(i)})\log\left(1- a^{[L](i)}\right) \large{)} \tag{1} J=m1i=1m(y(i)log(a[L](i))+(1y(i))log(1a[L](i)))(1) 添加了L2正则化后的损失函数: J r e g u l a r i z e d = − 1 m ∑ i = 1 m ( y ( i ) log ⁡ ( a [ L ] ( i ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − a [ L ] ( i ) ) ) ⏟ cross-entropy cost + 1 m λ 2 ∑ l ∑ k ∑ j W k , j [ l ] 2 ⏟ L2 regularization cost (2) J_{regularized} = \small \underbrace{-\frac{1}{m} \sum\limits_{i = 1}^{m} \large{(}\small y^{(i)}\log\left(a^{[L](i)}\right) + (1-y^{(i)})\log\left(1- a^{[L](i)}\right) \large{)} }_\text{cross-entropy cost} + \underbrace{\frac{1}{m} \frac{\lambda}{2} \sum\limits_l\sum\limits_k\sum\limits_j W_{k,j}^{[l]2} }_\text{L2 regularization cost} \tag{2} Jregularized=cross-entropy cost m1i=1m(y(i)log(a[L](i))+(1y(i))log(1a[L](i)))+L2 regularization cost m12λlkjWk,j[l]2(2)

2.梯度计算公式

∂ J ∂ θ = lim ⁡ ε → 0 J ( θ + ε ) − J ( θ − ε ) 2 ε (1) \frac{\partial J}{\partial \theta} = \lim_{\varepsilon \to 0} \frac{J(\theta + \varepsilon) - J(\theta - \varepsilon)}{2 \varepsilon} \tag{1} θJ=ε0lim2εJ(θ+ε)J(θε)(1) 可以用这个公式验证梯度是否计算正确。

公式推导(非常有意思!):https://blog.csdn.net/oBrightLamp/article/details/84333111 里面有关于神经网络梯度计算的推导:

3.矩阵求导

3.1对标量的计算

3.1.1 标量对标量

3.1.2 向量对标量

3.1.3 矩阵对标量

3.2 对向量的计算

3.2.1 标量对向量

3.2.2 向量对向量

3.2.3 矩阵对向量

3.3 对矩阵的计算

3.3.1 标量对矩阵

3.3.2 矩阵对矩阵

4 矩阵的导数与迹

4.1 矩阵的导数

4.2 矩阵的迹

对于一个n阶方阵A的迹被定义为方阵A的主对角线的元素之和,通常对方阵的求迹操作写成trA,于是我们有

4.3 性质

附: 1、向量对向量求导 2、标量对向量求导

3、向量对标量求导 4、可能用到的公式

参考: https://www.cnblogs.com/crackpotisback/p/5545708.html

求导公式大全

最新回复(0)