矩阵的导数运算(理解分子布局、分母布局)
1、分子布局和分母布局
请思考这样一个问题,一个维度为m的向量y对一个标量x的求导,那么结果也是一个m维的向量,那么这个结果向量是行向量,还是列向量呢?
答案是:行向量或者列向量皆可!
求导的本质只是把标量求导的结果排列起来,至于是按行排列还是按列排列都是可以的。但是这样也有问题,在我们机器学习算法优化过程中,如果行向量或者列向量随便写,那么结果就不唯一,乱套了。
为了解决矩阵向量求导的结果不唯一,我们引入求导布局。最基本的求导布局有两个:分子布局(numerator layout)和分母布局(denominator layout )。
-
对于分子布局来说,我们求导结果的维度以分子为主。
-
对于分母布局来说,我们求导结果的维度以分母为主。
2、标量方程对向量的导数
标量方程中的未知量是标量,而不是矢量或矩阵。
通常情况下,标量方程可以是各种类型的代数方程,包括线性方程、二次方程、多项式方程等。这些方程中的未知量都是标量,通常表示为一个变量,例如 x、y、z 等。
已知标量方程 f ( y ) = f ( y 1 , y 2 , . . . , y m ) ,我们求解标量方程 f ( y ) 对向量 y → = ( y 1 y 2 ⋮ y m ) 的导数 已知标量方程f(y) = f(y_1,y_2,...,y_m),我们求解标量方程f(y) 对向量\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ \vdots \\ y_{m} \\ \end{matrix} \right)的导数 \\ 已知标量方程f(y)=f(y1,y2,...,ym),我们求解标量方程f(y)对向量y= y1y2⋮ym 的导数
分母为向量y,维度为m×1,求导结果的行数和分母相同,都为m,因此为分母布局。
分子为标量,维度为1×1,求导结果的行数和分子相同,都为1,因此为分子布局。
具体案例如下:
已知标量方程 f ( y ) = y 1 2 + y 2 2 ,我们求解标量方程 f ( y ) 对向量 y → = ( y 1 y 2 ) 的导数 按照分母布局 ( 行数和分母相同 ) ,则 ∂ f ( y → ) ∂ y → = ( ∂ f ( y → ) ∂ y 1 ∂ f ( y → ) ∂ y 2 ) = ( 2 y 1 2 y 2 ) 按照分子布局 ( 行数和分子相同 ) ,则 ∂ f ( y → ) ∂ y → = ( ∂ f ( y → ) ∂ y 1 , ∂ f ( y → ) ∂ y 2 ) = ( 2 y 1 , 2 y 2 ) 已知标量方程f(y) = y_1^2 + y_2^2,我们求解标量方程f(y) 对向量\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ \end{matrix} \right)的导数 \\ 按照分母布局(行数和分母相同),则\frac{\partial{f(\overrightarrow{y})}}{\partial{\overrightarrow{y}}}=\left( \begin{matrix} \frac{\partial{f(\overrightarrow{y})}}{\partial{y_1}} \\ \frac{\partial{f(\overrightarrow{y})}}{\partial{y_2}} \\ \end{matrix} \right)=\left( \begin{matrix} 2y_1 \\ 2y_2 \\ \end{matrix} \right)\\ 按照分子布局(行数和分子相同),则\frac{\partial{f(\overrightarrow{y})}}{\partial{\overrightarrow{y}}}=(\frac{\partial{f(\overrightarrow{y})}}{\partial{y_1}},\frac{\partial{f(\overrightarrow{y})}}{\partial{y_2}})=(2y_1, 2y_2) 已知标量方程f(y)=y12+y22,我们求解标量方程f(y)对向量y=(y1y2)的导数按照分母布局(行数和分母相同),则∂y∂f(y)=(∂y1∂f(y)∂y2∂f(y))=(2y12y2)按照分子布局(行数和分子相同),则∂y∂f(y)=(∂y1∂f(y),∂y2∂f(y))=(2y1,2y2)
注意:分子布局结果和分母布局结果互为转置。
3、向量方程对向量的导数
3.1 公式
已知 y → = ( y 1 y 2 ⋮ y m ) ,求向量方程 f → ( y → ) = ( f 1 ( y → ) f 2 ( y → ) ⋮ f n ( y → ) ) 对 y → 的导数 已知\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ \vdots \\ y_{m} \\ \end{matrix} \right),求向量方程\overrightarrow{f}(\overrightarrow{y})=\left( \begin{matrix} f_1(\overrightarrow{y}) \\ f_2(\overrightarrow{y}) \\ \vdots \\ f_n(\overrightarrow{y}) \\ \end{matrix} \right)对\overrightarrow{y}的导数\\ 已知y= y1y2⋮ym ,求向量方程f(y)= f1(y)f2(y)⋮fn(y) 对y的导数
利用分母布局:
∂ f → ( y → ) ∂ y → = ( ∂ f ( y → ) ∂ y 1 ∂ f ( y → ) ∂ y 2 ⋮ ∂ f ( y → ) ∂ y m ) = ( ∂ f 1 ( y → ) ∂ y 1 ∂ f 2 ( y → ) ∂ y 1 ⋯ ∂ f n ( y → ) ∂ y 1 ∂ f 1 ( y → ) ∂ y 2 ∂ f 2 ( y → ) ∂ y 2 ⋯ ∂ f n ( y → ) ∂ y 2 ⋮ ⋮ ⋱ ⋮ ∂ f 1 ( y → ) ∂ y m ∂ f 2 ( y → ) ∂ y m ⋯ ∂ f n ( y → ) ∂ y m ) \frac{\partial{\overrightarrow{f}(\overrightarrow{y})}}{\partial\overrightarrow{y}}=\left( \begin{matrix} \frac{\partial{f(\overrightarrow{y})}}{\partial{y_1}} \\ \frac{\partial{f(\overrightarrow{y})}}{\partial{y_2}} \\ \vdots \\ \frac{\partial{f(\overrightarrow{y})}}{\partial{y_m}} \\ \end{matrix} \right)=\left( \begin{matrix} \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_1}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_1}} & \cdots &\frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_1}}\\ \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_2}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_2}} &\cdots& \frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_2}} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_m}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_m}} &\cdots& \frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_m}} \\ \end{matrix} \right)\\ ∂y∂f(y)= ∂y1∂f(y)∂y2∂f(y)⋮∂ym∂f(y) = ∂y1∂f1(y)∂y2∂f1(y)⋮∂ym∂f1(y)∂y1∂f2(y)∂y2∂f2(y)⋮∂ym∂f2(y)⋯⋯⋱⋯∂y1∂fn(y)∂y2∂fn(y)⋮∂ym∂fn(y)
利用分子布局:
∂ f → ( y → ) ∂ y → = ( ∂ f 1 ( y → ) ∂ y → ∂ f 2 ( y → ) ∂ y → ⋮ ∂ f n ( y → ) ∂ y → ) = ( ∂ f 1 ( y → ) ∂ y 1 ∂ f 1 ( y → ) ∂ y 2 ⋯ ∂ f 1 ( y → ) ∂ y m ∂ f 2 ( y → ) ∂ y 1 ∂ f 2 ( y → ) ∂ y 2 ⋯ ∂ f 2 ( y → ) ∂ y m ⋮ ⋮ ⋱ ⋮ ∂ f n ( y → ) ∂ y 1 ∂ f n ( y → ) ∂ y 2 ⋯ ∂ f n ( y → ) ∂ y m ) \frac{\partial{\overrightarrow{f}(\overrightarrow{y})}}{\partial\overrightarrow{y}}=\left( \begin{matrix} \frac{\partial{f_1(\overrightarrow{y})}}{\partial{\overrightarrow{y}}} \\ \frac{\partial{f_2(\overrightarrow{y})}}{\partial{\overrightarrow{y}}} \\ \vdots \\ \frac{\partial{f_n(\overrightarrow{y})}}{\partial{\overrightarrow{y}}} \\ \end{matrix} \right)=\left( \begin{matrix} \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_1}} & \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_2}} & \cdots &\frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_m}}\\ \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_1}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_2}} &\cdots& \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_m}} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_1}} & \frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_2}} &\cdots& \frac{\partial{f_n(\overrightarrow{y})}}{\partial{y_m}} \\ \end{matrix} \right) ∂y∂f(y)= ∂y∂f1(y)∂y∂f2(y)⋮∂y∂fn(y) = ∂y1∂f1(y)∂y1∂f2(y)⋮∂y1∂fn(y)∂y2∂f1(y)∂y2∂f2(y)⋮∂y2∂fn(y)⋯⋯⋱⋯∂ym∂f1(y)∂ym∂f2(y)⋮∂ym∂fn(y)
3.2 具体示例
已知 y → = ( y 1 y 2 y 3 ) ,求向量方程 f → ( y → ) = ( f 1 ( y → ) f 2 ( y → ) ) = ( y 1 2 + y 2 2 + y 3 y 3 2 + 2 y 1 ) 对 y → 的导数 已知\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ y_{3} \\ \end{matrix} \right),求向量方程\overrightarrow{f}(\overrightarrow{y})=\left( \begin{matrix} f_1(\overrightarrow{y}) \\ f_2(\overrightarrow{y}) \\ \end{matrix} \right)=\left( \begin{matrix} y_1^2+y_2^2+y_3 \\ y_3^2+2y_1 \\ \end{matrix} \right) 对\overrightarrow{y}的导数\\ 已知y= y1y2y3 ,求向量方程f(y)=(f1(y)f2(y))=(y12+y22+y3y32+2y1)对y的导数
我们按照分母布局来求(得到结果为m×n的矩阵,即3×2):
∂ f → ( y → ) ∂ y → = ( ∂ f ( y → ) ∂ y 1 ∂ f ( y → ) ∂ y 2 ∂ f ( y → ) ∂ y 3 ) = ( ∂ f 1 ( y → ) ∂ y 1 ∂ f 2 ( y → ) ∂ y 1 ∂ f 1 ( y → ) ∂ y 2 ∂ f 2 ( y → ) ∂ y 2 ∂ f 1 ( y → ) ∂ y 3 ∂ f 2 ( y → ) ∂ y 3 ) = ( 2 y 1 2 2 y 2 0 1 2 y 3 ) \frac{\partial{\overrightarrow{f}(\overrightarrow{y})}}{\partial\overrightarrow{y}}=\left( \begin{matrix} \frac{\partial{f(\overrightarrow{y})}}{\partial{y_1}} \\ \frac{\partial{f(\overrightarrow{y})}}{\partial{y_2}} \\ \frac{\partial{f(\overrightarrow{y})}}{\partial{y_3}} \\ \end{matrix} \right)=\left( \begin{matrix} \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_1}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_1}} & \\ \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_2}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_2}} & \\ \frac{\partial{f_1(\overrightarrow{y})}}{\partial{y_3}} & \frac{\partial{f_2(\overrightarrow{y})}}{\partial{y_3}} & \\ \end{matrix} \right)=\left( \begin{matrix} 2y_1 & 2 & \\ 2y_2 & 0 & \\ 1 & 2y_3 & \\ \end{matrix} \right)\\ ∂y∂f(y)= ∂y1∂f(y)∂y2∂f(y)∂y3∂f(y) = ∂y1∂f1(y)∂y2∂f1(y)∂y3∂f1(y)∂y1∂f2(y)∂y2∂f2(y)∂y3∂f2(y) = 2y12y21202y3
3.3 常用特例
常用特例1:
已知 y → = ( y 1 y 2 ⋮ y m ) ,方阵 A = ( a 11 a 12 ⋯ a 1 m a 21 a 22 ⋯ a 2 m ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m m ) , 证明 ∂ A y → ∂ y → = A T , ∂ y T → A ∂ y → = A ( 分母布局 ) 已知\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ \vdots \\ y_{m} \\ \end{matrix} \right),方阵A=\left( \begin{matrix} a_{11} & a_{12} & \cdots & a_{1m}\\ a_{21} & a_{22} & \cdots & a_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mm}\\ \end{matrix} \right),证明\frac{\partial{A\overrightarrow{y}}}{\partial\overrightarrow{y}}=A^T, \frac{\partial{\overrightarrow{y^T}}A}{\partial\overrightarrow{y}}=A(分母布局) 已知y= y1y2⋮ym ,方阵A= a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1ma2m⋮amm ,证明∂y∂Ay=AT,∂y∂yTA=A(分母布局)
我们使用分母布局来求
A y → = ( a 11 a 12 ⋯ a 1 m a 21 a 22 ⋯ a 2 m ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m m ) . ( y 1 y 2 ⋮ y m ) = ( a 11 y 1 + a 12 y 2 + ⋯ + a 1 m y m a 21 y 1 + a 22 y 2 + ⋯ + a 2 m y m ⋮ a m 1 y 1 + a m 2 y 2 + ⋯ + a m m y m ) 按照分母布局,我们可以得到: ∂ A y → ∂ y → = ( ∂ A y → ∂ y 1 ∂ A y → ∂ y 2 ⋮ ∂ A y → ∂ y m ) = ( a 11 y 1 + a 12 y 2 + ⋯ + a 1 m y m ∂ y 1 a 21 y 1 + a 22 y 2 + ⋯ + a 2 m y m ∂ y 1 ⋯ a m 1 y 1 + a m 2 y 2 + ⋯ + a m m y m ∂ y 1 a 11 y 1 + a 12 y 2 + ⋯ + a 1 m y m ∂ y 2 a 21 y 1 + a 22 y 2 + ⋯ + a 2 m y m ∂ y 2 ⋯ a m 1 y 1 + a m 2 y 2 + ⋯ + a m m y m ∂ y 2 ⋮ ⋮ ⋱ ⋮ a 11 y 1 + a 12 y 2 + ⋯ + a 1 m y m ∂ y m a 21 y 1 + a 22 y 2 + ⋯ + a 2 m y m ∂ y m ⋯ a m 1 y 1 + a m 2 y 2 + ⋯ + a m m y m ∂ y m ) = ( a 11 a 21 ⋯ a m 1 a 12 a 22 ⋯ a m 2 ⋮ ⋮ ⋱ ⋮ a 1 m a 2 m ⋯ a m m ) = A T A\overrightarrow{y}=\left( \begin{matrix} a_{11} & a_{12} & \cdots & a_{1m}\\ a_{21} & a_{22} & \cdots & a_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mm}\\ \end{matrix} \right). \left( \begin{matrix} y_{1} \\ y_{2} \\ \vdots \\ y_{m} \\ \end{matrix} \right)=\left( \begin{matrix} a_{11}y_1 + a_{12}y_2 + \cdots + a_{1m}y_m\\ a_{21}y_1 + a_{22}y_2 + \cdots + a_{2m}y_m\\ \vdots \\ a_{m1}y_1 + a_{m2}y_2 + \cdots + a_{mm}y_m\\ \end{matrix} \right)\\ 按照分母布局,我们可以得到:\\ \frac{\partial{A\overrightarrow{y}}}{\partial\overrightarrow{y}}=\left( \begin{matrix} \frac{\partial{A\overrightarrow{y}}}{\partial{y_1}} \\ \frac{\partial{A\overrightarrow{y}}}{\partial{y_2}} \\ \vdots \\ \frac{\partial{A\overrightarrow{y}}}{\partial{y_m}} \\ \end{matrix} \right)=\left( \begin{matrix} \frac{a_{11}y_1 + a_{12}y_2 + \cdots + a_{1m}y_m}{\partial{y_1}} & \frac{a_{21}y_1 + a_{22}y_2 + \cdots + a_{2m}y_m}{\partial{y_1}} & \cdots & \frac{a_{m1}y_1 + a_{m2}y_2 + \cdots + a_{mm}y_m}{\partial{y_1}} \\ \frac{a_{11}y_1 + a_{12}y_2 + \cdots + a_{1m}y_m}{\partial{y_2}} & \frac{a_{21}y_1 + a_{22}y_2 + \cdots + a_{2m}y_m}{\partial{y_2}} & \cdots & \frac{a_{m1}y_1 + a_{m2}y_2 + \cdots + a_{mm}y_m}{\partial{y_2}} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{a_{11}y_1 + a_{12}y_2 + \cdots + a_{1m}y_m}{\partial{y_m}} & \frac{a_{21}y_1 + a_{22}y_2 + \cdots + a_{2m}y_m}{\partial{y_m}} & \cdots & \frac{a_{m1}y_1 + a_{m2}y_2 + \cdots + a_{mm}y_m}{\partial{y_m}} \\ \end{matrix} \right)\\ =\left( \begin{matrix} a_{11} & a_{21} & \cdots & a_{m1}\\ a_{12} & a_{22} & \cdots & a_{m2}\\ \vdots & \vdots & \ddots & \vdots \\ a_{1m} & a_{2m} & \cdots & a_{mm}\\ \end{matrix} \right)=A^T\\ Ay= a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1ma2m⋮amm . y1y2⋮ym = a11y1+a12y2+⋯+a1myma21y1+a22y2+⋯+a2mym⋮am1y1+am2y2+⋯+ammym 按照分母布局,我们可以得到:∂y∂Ay= ∂y1∂Ay∂y2∂Ay⋮∂ym∂Ay = ∂y1a11y1+a12y2+⋯+a1mym∂y2a11y1+a12y2+⋯+a1mym⋮∂yma11y1+a12y2+⋯+a1mym∂y1a21y1+a22y2+⋯+a2mym∂y2a21y1+a22y2+⋯+a2mym⋮∂yma21y1+a22y2+⋯+a2mym⋯⋯⋱⋯∂y1am1y1+am2y2+⋯+ammym∂y2am1y1+am2y2+⋯+ammym⋮∂ymam1y1+am2y2+⋯+ammym = a11a12⋮a1ma21a22⋮a2m⋯⋯⋱⋯am1am2⋮amm =AT
同理,我们知道 y T → A = ( y 1 , y 2 , ⋯ , y m ) . ( a 11 a 12 ⋯ a 1 m a 21 a 22 ⋯ a 2 m ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m m ) = ( a 11 y 1 + a 21 y 2 + ⋯ + a m 1 y m a 12 y 1 + a 22 y 2 + ⋯ + a m 2 y m ⋮ a 1 m y 1 + a 2 m y 2 + ⋯ + a m m y m ) ∂ y T → A ∂ y → = ( a 11 y 1 + a 21 y 2 + ⋯ + a m 1 y m ∂ y 1 a 12 y 1 + a 22 y 2 + ⋯ + a m 2 y m ∂ y 1 ⋯ a 1 m y 1 + a 2 m y 2 + ⋯ + a m m y m ∂ y 1 a 11 y 1 + a 12 y 2 + ⋯ + a m 1 y m ∂ y 2 a 12 y 1 + a 22 y 2 + ⋯ + a m 2 y m ∂ y 2 ⋯ a 1 m y 1 + a 2 m y 2 + ⋯ + a m m y m ∂ y 2 ⋮ ⋮ ⋱ ⋮ a 11 y 1 + a 12 y 2 + ⋯ + a m 1 y m ∂ y m a 12 y 1 + a 22 y 2 + ⋯ + a m 2 y m ∂ y m ⋯ a 1 m y 1 + a 2 m y 2 + ⋯ + a m m y m ∂ y m ) = ( a 11 a 12 ⋯ a 1 m a 21 a 22 ⋯ a 2 m ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m m ) = A 同理,我们知道\overrightarrow{y^T}A=(y_1,y_2,\cdots,y_m).\left( \begin{matrix} a_{11} & a_{12} & \cdots & a_{1m}\\ a_{21} & a_{22} & \cdots & a_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mm}\\ \end{matrix} \right)=\left( \begin{matrix} a_{11}y_1 + a_{21}y_2 + \cdots + a_{m1}y_m\\ a_{12}y_1 + a_{22}y_2 + \cdots + a_{m2}y_m\\ \vdots \\ a_{1m}y_1 + a_{2m}y_2 + \cdots + a_{mm}y_m\\ \end{matrix} \right)\\ \frac{\partial{\overrightarrow{y^T}}A}{\partial\overrightarrow{y}}=\left( \begin{matrix} \frac{a_{11}y_1 + a_{21}y_2 + \cdots + a_{m1}y_m}{\partial{y_1}} & \frac{a_{12}y_1 + a_{22}y_2 + \cdots + a_{m2}y_m}{\partial{y_1}} & \cdots & \frac{a_{1m}y_1 + a_{2m}y_2 + \cdots + a_{mm}y_m}{\partial{y_1}} \\ \frac{a_{11}y_1 + a_{12}y_2 + \cdots + a_{m1}y_m}{\partial{y_2}} & \frac{a_{12}y_1 + a_{22}y_2 + \cdots + a_{m2}y_m}{\partial{y_2}} & \cdots & \frac{a_{1m}y_1 + a_{2m}y_2 + \cdots + a_{mm}y_m}{\partial{y_2}} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{a_{11}y_1 + a_{12}y_2 + \cdots + a_{m1}y_m}{\partial{y_m}} & \frac{a_{12}y_1 + a_{22}y_2 + \cdots + a_{m2}y_m}{\partial{y_m}} & \cdots & \frac{a_{1m}y_1 + a_{2m}y_2 + \cdots + a_{mm}y_m}{\partial{y_m}} \\ \end{matrix} \right)\\ =\left( \begin{matrix} a_{11} & a_{12} & \cdots & a_{1m}\\ a_{21} & a_{22} & \cdots & a_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mm}\\ \end{matrix} \right)=A 同理,我们知道yTA=(y1,y2,⋯,ym). a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1ma2m⋮amm = a11y1+a21y2+⋯+am1yma12y1+a22y2+⋯+am2ym⋮a1my1+a2my2+⋯+ammym ∂y∂yTA= ∂y1a11y1+a21y2+⋯+am1ym∂y2a11y1+a12y2+⋯+am1ym⋮∂yma11y1+a12y2+⋯+am1ym∂y1a12y1+a22y2+⋯+am2ym∂y2a12y1+a22y2+⋯+am2ym⋮∂yma12y1+a22y2+⋯+am2ym⋯⋯⋱⋯∂y1a1my1+a2my2+⋯+ammym∂y2a1my1+a2my2+⋯+ammym⋮∂yma1my1+a2my2+⋯+ammym = a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1ma2m⋮amm =A
常用特例2:
已知 y → = ( y 1 y 2 ⋮ y m ) ,方阵 A = ( a 11 a 12 ⋯ a 1 m a 21 a 22 ⋯ a 2 m ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m m ) , 证明 ∂ y → T A y → ∂ y → = A y → + A T y → ( 分母布局 ) 另外,当 A 对称时, A T = A , 左式 = 2 A y → 已知\overrightarrow{y}=\left( \begin{matrix} y_{1} \\ y_{2} \\ \vdots \\ y_{m} \\ \end{matrix} \right),方阵A=\left( \begin{matrix} a_{11} & a_{12} & \cdots & a_{1m}\\ a_{21} & a_{22} & \cdots & a_{2m}\\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mm}\\ \end{matrix} \right),证明\frac{\partial{\overrightarrow{y}^TA\overrightarrow{y}}}{\partial\overrightarrow{y}}=A\overrightarrow{y} + A^T\overrightarrow{y}(分母布局)\\ 另外,当A对称时,A^T=A,左式=2A\overrightarrow{y} 已知y= y1y2⋮ym ,方阵A= a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1ma2m⋮amm ,证明∂y∂yTAy=Ay+ATy(分母布局)另外,当A对称时,AT=A,左式=2Ay
我们A为2阶方阵,那么:
我们再利用分母布局:
3.4 利用常用特例求解线性回归的解析解
线性回归可以用 y = X w + b 进行表示 我们将偏置 b 合并到参数 w 中,合并⽅法是在包含所有参数的矩阵中附加⼀列 那么,线性回归的代价函数可以表示为: E w = ( y − X w ) T ( y − X w ) = ( y T − w T X ) ( y − X w ) = y T y − y T X w − w T X T y + w T X T X w 因此 ∂ E w ∂ W = ∂ ( y T y ) ∂ w − ∂ ( y T X w ) ∂ w − ∂ ( w T X T y ) ∂ w + ∂ ( w T X T X w ) ∂ w = 0 − X T y ( 常用特例 1 ) − X T y ( 常用特例 1 ) + 2 X T X w ( 常用特例 2 , X T X 为对称阵 ) = 2 X T X w − 2 X T y 我们将损失关于 w 的导数设置为 0 ,那么可以得到解析解: w = ( X T X ) − 1 X T y 线性回归可以用y=Xw+b进行表示\\ 我们将偏置b合并到参数w中,合并⽅法是在包含所有参数的矩阵中附加⼀列\\ 那么,线性回归的代价函数可以表示为:\\ E_w=(y-Xw)^T(y-Xw) \\ =(y^T-w^TX)(y-Xw) \\ =y^Ty-y^TXw-w^TX^Ty+w^TX^TXw \\ 因此\frac{\partial{E_w}}{\partial{W}}= \frac{\partial{(y^Ty)}}{\partial{w}}- \frac{\partial{(y^TXw)}}{\partial{w}}- \frac{\partial{(w^TX^Ty)}}{\partial{w}}+ \frac{\partial{(w^TX^TXw)}}{\partial{w}}\\ =0-X^Ty(常用特例1)-X^Ty(常用特例1)+2X^TXw(常用特例2,X^TX为对称阵)\\ =2X^TXw-2X^Ty \\ 我们将损失关于w的导数设置为0,那么可以得到解析解:w=(X^TX)^{-1}X^Ty 线性回归可以用y=Xw+b进行表示我们将偏置b合并到参数w中,合并⽅法是在包含所有参数的矩阵中附加⼀列那么,线性回归的代价函数可以表示为:Ew=(y−Xw)T(y−Xw)=(yT−wTX)(y−Xw)=yTy−yTXw−wTXTy+wTXTXw因此∂W∂Ew=∂w∂(yTy)−∂w∂(yTXw)−∂w∂(wTXTy)+∂w∂(wTXTXw)=0−XTy(常用特例1)−XTy(常用特例1)+2XTXw(常用特例2,XTX为对称阵)=2XTXw−2XTy我们将损失关于w的导数设置为0,那么可以得到解析解:w=(XTX)−1XTy
4、向量求导的链式法则
举例证明链式求导法则为: ∂ J ∂ u → = ∂ y → ( u → ) ∂ u → . ∂ J ∂ y → ( u → ) 举例证明链式求导法则为:\frac{\partial{J}}{\partial{\overrightarrow{u}}}=\frac{\partial{\overrightarrow{y}(\overrightarrow{u})}}{\partial{\overrightarrow{u}}}.\frac{\partial{J}}{\partial{\overrightarrow{y}(\overrightarrow{u})}} 举例证明链式求导法则为:∂u∂J=∂u∂y(u).∂y(u)∂J