矩阵求导的几个实际应用例子
如果约定所有的向量均为列向量,那么我认为矩阵求导在实际使用中就没有必要讨论行布局或者列布局,因为导数的推导过程和结果就决定了矩阵求导公式是唯一的。
大部分情况二阶矩阵或二维向量足以说明问题,剩下的到三阶也够了,不会出现低阶成立而高阶不成立的情况,所以下面举的例子均为三阶及以下。
若无特别说明,细斜体(如$J$)表示标量,粗斜体小写(如$\boldsymbol{x}$)表示向量,粗正体大写(如$\mathbf{A}$)表示矩阵。
损失函数与梯度下降法
其中$J$是标量损失值,$\boldsymbol{x}$是待优化参数,其梯度下降法更新公式为
为简化问题而可以令$\gamma=1$。$\hat{y}$与$x$的函数关系决定了矩阵的导数应该怎么求。按照导数定义先求$\Delta J$
令$\boldsymbol{e}=\boldsymbol{y}-\hat{\boldsymbol{y}}$,则
- $\boldsymbol{y}=\mathbf{A}\boldsymbol{x}$
于是
把$\Delta J$拆开得到梯度下降法更新公式
写成矩阵形式得
- $\boldsymbol{y}=\boldsymbol{a}^{\top}\mathbf{X}\boldsymbol{b}$
非线性系统的线性化
参考链接
有的直接是pdf文件,注意分辨。
矩阵求导术(上)
matrix vector derivatives for machine learning
Matrix Calculus
Matrix Calculus: Derivation and Simple Application
Matrix Calculus - Notes on the Derivative of a Trace
CS229 Lecture Notes
matrix calculus
关于Machine Learning中的基础数学推导值得一看的文章(持续更新)
Old and New Matrix Algebra Useful for Statistics