矩阵求导:本质上只不过是多元函数求导,仅仅是把函数的自变量以及求导的结果排列成了矩阵的形式,方便表达与计算而已。
导数定义:
- 矩阵/向量值函数对实数的导数
- 求导结果与函数值同型(m×n矩阵求导结果也是m×n矩阵),且每个元素就是函数值的相应分量对自变量x求导,∂f∂xij=∂fij∂x。导数可以记做∇xF或∇'F
- 实值函数对矩阵/向量的导数
- 求导结果与自变量同型,且每个元素就是f对自变量的相应分量求导,∂f∂Xij=∂f∂xij。导数可以记做∇Xf。
- 这是最重要的一个类别,机器学习里一般都是求标量损失函数对向量/矩阵参数的导数。
- δf≈ i,j∇Xfi,jδXi,j=tr((∇Xf)TδX)。向量值函数对向量的导数(雅克比矩阵)
- 函数 f: Rn→Rm(n维到m维的映射),则导数∂f∂x是一个m×n维矩阵,且∂f∂xij=∂fi∂xj。也可表示为∇xf。
- 记:认为矩阵对向量、向量对矩阵、矩阵对矩阵的导数没有定义。
特殊例子:
∇xAx=A
∇xx=∇xIx=I