机器学习深度学习之数学基础:矩阵是如何停止求导工作的?
作者头像
  • 张嘉宝
  • 2020-05-13 08:51:21 3

微分公式(标量、向量、矩阵)

从向量到矩阵的全微分,其计算方式有所不同。全微分公式可以看作是矩阵导数与微分矩阵之间的关系,即∂f/∂X与dx的内积。这里的tr(A^B)表示矩阵A和矩阵B的内积。

首先,我们看看如何对矩阵求导。对于标量f对矩阵X的求导,可以通过以下步骤进行:

  1. 求df:计算df,由于df是标量,因此tr(df)=df。这时,可以在df外加tr,将其转换为所需的格式。
  2. 处理括号中的内容:在转换后的格式中,括号外除了dX之外的内容即为(∂f/∂X)^T。这样便可以得到∂f/∂X。

总结

  • 第一步:计算df。
  • 第二步:在df外加tr。
  • 第三步:将tr括号外的内容处理成只包含dX的格式,从而得出∂f/∂X。

工具

在求解过程中,最复杂的部分在于第一步和第三步。第一步需要应用微分法则计算df,第三步则需将结果转化为dx的形式,这需要用到迹的微分公式和tr工具。

  • 微分法则:包括常用的迹的微分公式,如d(ABC) = d(A)BC + Ad(B)C + ABdC。
  • 迹工具:帮助将表达式转换为所需的格式,例如tr(A^B)表示矩阵A和矩阵B的内积。

举例

我们以一个具体的例子来说明如何应用这些公式。假设我们需要计算标量f对矩阵X(m×n)的偏导数,其中M是l×l的对称矩阵,且存在中间变量Y。

  1. 求df:首先计算df,再利用迹的微分公式进行转换。
  2. 应用tr工具:利用迹工具将结果转化为所需的格式。
  3. 求∂f/∂y:通过上述步骤,可以求得∂f/∂y。
  4. 求∂f/∂x:最后,通过∂f/∂y求得∂f/∂x。

具体步骤如下:

  • 先求df,利用d(ABC) = d(A)BC + Ad(B)C + ABdC公式简化。
  • 将M视为常数,因此d(M)=0。
  • 利用迹工具将表达式转换为所需的格式。
  • 最终得到∂f/∂x。

总结

虽然过程看起来复杂,但实际操作只有三个步骤:求df,加tr,转换为dx的形式。这种复合求导的方法适用于多个变量的情况,有助于更好地理解整个求导过程。掌握这些工具和步骤,有助于在机器学习和深度学习中实现有效的参数更新。

标量对矩阵求导的应用十分广泛,特别是在机器学习和深度学习中,损失函数的值通常是标量,而参数往往是以矩阵形式表示的。通过求导,可以实现梯度下降,从而优化模型参数。因此,理解和掌握这些求导技巧是非常重要的。

    本文来源:图灵汇
责任编辑: : 张嘉宝
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
习之求导数学基础矩阵深度停止机器如何学习工作
    下一篇