矩阵简单导数运算

Posted lgxo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了矩阵简单导数运算相关的知识,希望对你有一定的参考价值。


前言

以下内容均假设运算可以成立


向量与标量之间

向量与标量之间的导数均是向量,其第 i i i 个分量分别为
( ∂ a ⃗ ∂ x ) i = ∂ a i ⃗ ∂ x (\\frac{\\partial \\vec{a}}{\\partial x})_i = \\frac{\\partial \\vec{a_i}}{\\partial x} (xa )i=xai
( ∂ x ∂ a ⃗ ) i = ∂ x ∂ a i ⃗ (\\frac{\\partial x}{\\partial \\vec{a}})_i = \\frac{\\partial x}{\\partial \\vec{a_i}} (a x)i=ai x


矩阵与标量之间

矩阵与标量之间的导数均是矩阵,其第 i i i 行第 j j j 列元素分别为
( ∂ A ∂ x ) i j = ∂ A i j ∂ x (\\frac{\\partial \\mathbf{A} }{\\partial x})_{ij} = \\frac{\\partial A_{ij}}{\\partial x} (xA)ij=xAij
( ∂ x ∂ A ) i j = ∂ x ∂ A i j (\\frac{\\partial x}{\\partial \\mathbf{A}})_{ij} = \\frac{\\partial x}{\\partial A_{ij}} (Ax)ij=Aijx


函数关于向量

一阶导

一阶导数是向量,其第 i i i 个分量为
( ∇ f ( x ) ) i = ∂ f ( x ) ∂ x i (\\nabla f(x))_i = \\frac{\\partial f(x)}{\\partial x_i} (f(x))i=xif(x)

二阶导(海森矩阵)

二阶导数是矩阵,其第 i i i 行第 j j j 列元素为
( ∇ 2 f ( x ) ) i j = ∂ 2 f ( x ) ∂ x i ∂ x j (\\nabla^2f(x))_{ij} = \\frac{\\partial^2 f(x)}{\\partial x_i \\partial x_j} (2f(x))ij=xixj2f(x)


规则

向量和矩阵的导数满足乘法法则

此 处 a 相 对 于 x 为 常 量 此处a相对于x为常量 ax

∂ x T a ∂ x = ∂ a T x x = a \\frac{\\partial x^Ta}{\\partial x} = \\frac{\\partial a^Tx}{x} = a xxTa=xaTx=a
∂ A B ∂ x = ∂ A ∂ x B + A ∂ B ∂ x \\frac{\\partial AB}{\\partial x} = \\frac{\\partial A}{\\partial x}B + A\\frac{\\partial B}{\\partial x} xAB=xAB+AxB

逆矩阵的导数表示

∂ A − 1 ∂ x = − A − 1 ∂ A ∂ x A − 1 \\frac{\\partial A^{-1}}{\\partial x} = -A^{-1}\\frac{\\partial A}{\\partial x}A^{-1} xA1=A1xAA1
此处
A − 1 A = I A^{-1}A = I A1A=I

求导的标量是矩阵元素

∂   t r ( A B ) ∂ A i j = B j i \\frac{\\partial\\ tr(AB)}{\\partial A_{ij}} = B_{ji} Aij tr(AB)=Bji
∂   t r ( A B ) ∂ A = B T \\frac{\\partial\\ tr(AB)}{\\partial A} = B^T A tr(AB)=BT
进而有
∂   t r ( A T B ) ∂ A = B \\frac{\\partial\\ tr(A^TB)}{\\partial A} = B A tr(ATB)=B
∂   t r ( A ) ∂ A = I \\frac{\\partial\\ tr(A)}{\\partial A} = I A tr(02. 导数与梯度矩阵运算性质科学计算库numpy

逻辑回归

如何用matlab生成一个3阶和5阶魔方矩阵

动手学深度学习v2学习笔记02:线性代数矩阵计算自动求导

机器学习数学基础

机器学习数学基础