给一种不严密但有用的理解方式:
1 向量的“倒数”
记向量x=(x1,x2,…,xn)T\mathrm{x} = (x_1, x_2, \dots, x_n)^Tx=(x1,x2,…,xn)T,其倒数记为:x−1=(1x1,1x2,…,1xn)T\mathrm{x}^{-1} = (\frac{1}{x_1}, \frac{1}{x_2}, \dots, \frac{1}{x_n})^Tx−1=(x11,x21,…,xn1)T,不难得出它们的内积为:
xTx−1=(x1,x2,…,xn)(1x11x2⋮1xn)=n(1)\mathrm{x}^T\mathrm{x}^{-1} = (x_1, x_2, \dots, x_n)\left(\begin{matrix} \frac{1}{x_1}\\ \frac{1}{x_2} \\ \vdots \\ \frac{1}{x_n} \end{matrix}\right) = n \tag1xTx−1=(x1,x2,…,xn)⎝⎜⎜⎜⎛x11x21⋮xn1⎠⎟⎟⎟⎞=n(1)
对应地,它们的外积可以写为:
x−1xT=(1x11x2⋮1xn)(x1,x2,…,xn)=(x1x1x2x1…xnx1x1x2x2x2…xnx2⋮⋮⋱⋮x1xnx2xn…xnxn)(2)\mathrm{x}^{-1}\mathrm{x}^T = \left(\begin{matrix} \frac{1}{x_1}\\ \frac{1}{x_2} \\ \vdots \\ \frac{1}{x_n} \end{matrix}\right) (x_1, x_2, \dots, x_n) = \left(\begin{matrix}\frac{x_1}{x_1} & \frac{x_2}{x_1} & \dots & \frac{x_n}{x_1} \\ \frac{x_1}{x_2} & \frac{x_2}{x_2} & \dots & \frac{x_n}{x_2} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{x_1}{x_n} & \frac{x_2}{x_n} & \dots & \frac{x_n}{x_n} \end{matrix} \right) \tag2x−1xT=⎝⎜⎜⎜⎛x11x21⋮xn1⎠⎟⎟⎟⎞(x1,x2,…,xn)=⎝⎜⎜⎜⎛x1x1x2x1⋮xnx1x1x2x2x2⋮xnx2……⋱…x1xnx2xn⋮xnxn⎠⎟⎟⎟⎞(2)
注:
- 向量“倒数”是一种不严密的说法,但由上述推导可知,其形式上与标量的倒数类似,便于从标量函数的导数过渡;
- 向量外积此处应称为outer product,不同于叉积cross product。其几何意义可参考:点乘,叉乘,内积,外积之间都是什么关系?怎么用?
由向量“倒数”不难得到向量“除法”的定义,此处记 y=(y1,y2,…,ym)T\mathrm{y} = (y_1, y_2, \dots, y_m)^Ty=(y1,y2,…,ym)T
yx=x−1(y)T=(1x11x2⋮1xn)(y1,y2,…,ym)=(y1x1y2x1…ymx1y1x2y2x2…ymx2⋮⋮⋱⋮y1xny2xn…ymxn)(3)\frac{\mathrm{y}}{\mathrm{x}} = \mathrm{x}^{-1}(\mathrm{y})^T = \left(\begin{matrix} \frac{1}{x_1}\\ \frac{1}{x_2} \\ \vdots \\ \frac{1}{x_n} \end{matrix}\right) (y_1, y_2, \dots, y_m) = \left(\begin{matrix}\frac{y_1}{x_1} & \frac{y_2}{x_1} & \dots & \frac{y_m}{x_1} \\ \frac{y_1}{x_2} & \frac{y_2}{x_2} & \dots & \frac{y_m}{x_2} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{y_1}{x_n} & \frac{y_2}{x_n} & \dots & \frac{y_m}{x_n} \end{matrix} \right) \tag3xy=x−1(y)T=⎝⎜⎜⎜⎛x11x21⋮xn1⎠⎟⎟⎟⎞(y1,y2,…,ym)=⎝⎜⎜⎜⎛x1y1x2y1⋮xny1x1y2x2y2⋮xny2……⋱…x1ymx2ym⋮xnym⎠⎟⎟⎟⎞(3)
特别地,标量除以向量即可定义为:
yx=[yx1yx2⋮yxn](4)\frac{y}{\mathrm{x}} = \left[\begin{matrix}\frac{y}{x_1} \\ \frac{y}{x_2} \\ \vdots \\ \frac{y}{x_n}\end{matrix}\right] \tag4xy=⎣⎢⎢⎢⎡x1yx2y⋮xny⎦⎥⎥⎥⎤(4)
2 标量对向量求导
∂y∂x=[∂y∂x1∂y∂x2⋮∂y∂xn](5)\frac{\partial y}{\partial \mathrm{x}} = \left[\begin{matrix}\frac{\partial y}{\partial x_1} \\ \frac{\partial y}{\partial x_2} \\ \vdots \\ \frac{\partial y}{\partial x_n}\end{matrix}\right] \tag5∂x∂y=⎣⎢⎢⎢⎢⎡∂x1∂y∂x2∂y⋮∂xn∂y⎦⎥⎥⎥⎥⎤(5)
注意:此时约定标量yyy是向量x\mathrm{x}x的函数,即y=y(x)y = y(\mathrm{x})y=y(x),以下类似。
不难注意到,此时该导数∂y∂x\frac{\partial y}{\partial \mathrm{x}}∂x∂y 即是多元函数y=y(x)y = y(\mathrm{x})y=y(x)的梯度。
3 向量对向量求导
∂y∂x=[∂y1∂x1∂y2∂x1…∂ym∂x1∂y1∂x2∂y2∂x2…∂ym∂x2⋮⋮⋱⋮∂y1∂xn∂y2∂xn…∂ym∂xn](6)\frac{\partial \mathrm{y}}{\partial \mathrm{x}} = \left[\begin{matrix} \frac{\partial y_1}{\partial x_1} & \frac{\partial y_2}{\partial x_1} & \dots & \frac{\partial y_m}{\partial x_1} \\ \frac{\partial y_1}{\partial x_2} & \frac{\partial y_2}{\partial x_2} & \dots & \frac{\partial y_m}{\partial x_2} \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial y_1}{\partial x_n} & \frac{\partial y_2}{\partial x_n} & \dots & \frac{\partial y_m}{\partial x_n} \end{matrix}\right] \tag6∂x∂y=⎣⎢⎢⎢⎢⎡∂x1∂y1∂x2∂y1⋮∂xn∂y1∂x1∂y2∂x2∂y2⋮∂xn∂y2……⋱…∂x1∂ym∂x2∂ym⋮∂xn∂ym⎦⎥⎥⎥⎥⎤(6)
该矩阵即是Jacobi矩阵。
4 向量对标量求导
∂y∂x=[∂y1∂x∂y2∂x…∂ym∂x](7)\frac{\partial \mathrm{y}}{\partial x} = \left[\begin{matrix} \frac{\partial y_1}{\partial x} & \frac{\partial y_2}{\partial x} & \dots & \frac{\partial y_m}{\partial x}\end{matrix}\right] \tag7∂x∂y=[∂x∂y1∂x∂y2…∂x∂ym](7)
注意:向量对标量求导后得到的向量与被求导向量的布局刚好互为转置,这是因为我们采用的是“前导不变后导转置”法则。
5 分子布局与分母布局
以上向量求导的布局方式均采用分母布局,另有一种记法为分子布局。在诸多文献中,分子布局的使用频率更高,但在统计计算中,使用分母布局更为自然。二者得到的结果互为转置即可。
最简单的记忆方式为:
- 分母布局:计算结果的行数与分母保持一致
- 分子布局:计算结果的行数与分子保持一致