标量对向量求导

您所在的位置:网站首页 标量对向量求偏导数 标量对向量求导

标量对向量求导

#标量对向量求导| 来源: 网络整理| 查看: 265

标量 yn列向量 x = (x_{1},x_{2},\cdots,x_{n})^{T} 求导,其结果还是一个 n 维列向量:

\frac{dy}{dx} = \begin{bmatrix} \frac{\partial y}{\partial x_1} \\ \frac{\partial y}{\partial x_2} \\ \cdots \\ \frac{\partial y}{\partial x_n} \end{bmatrix}

标量 yn 维行向量 x^T=(x_1, x_2, ..., x_n) 求导,其结果还是一个 n 维行向量:

\frac{\partial y}{\partial x^T} = \begin{bmatrix} \frac{\partial y}{\partial x_1  } & \frac{\partial y}{\partial x_2} & \cdots & \frac{\partial y}{\partial x_n} \end{bmatrix}

形状规则:标量 y 对向量 x 的每个元素求导,然后将各个求导结果按向量 x 的形状排列。

标量对列向量 x 求导的应用

1) f(x)=\beta^T x,\beta=(\beta_1, \beta_2, .., \beta_n)^T,x=(x_1, x_2, ..., x_n)^T ,求 \frac{df}{dx}

标量对列向量求偏导,求得的也是一个列向量,结果向量的每个元素为 f 对自变量每个元素的偏导数。

将函数 f(x) 展开得到:

f(x)=\beta_1 \cdot x_1 + \beta_2 \cdot x_2 + \cdots + \beta_n \cdot x_n = \sum_{i=1}^n \beta_i x_i

其中,对向量 x 的各个元素的导数为,

\frac{\partial y}{\partial x_k} = \beta_k

所以

\frac{d f}{d x} = \begin{bmatrix} \frac{\partial f}{\partial x_{1}} \\  \frac{\partial f}{\partial x_{2}} \\  \cdots \\  \frac{\partial f}{\partial x_{n}} \end{bmatrix} = \begin{bmatrix} \beta_{1} \\  \beta_{2} \\  \cdots    \\  \beta_{n} \end{bmatrix} = \beta

\frac{d (\beta^Tx)}{d x} = \beta

2) f(x)=x^TAx ,其中 A = \begin{bmatrix} a_{11} & a_{12} & \cdots  & a_{1n} \\  a_{21} & a_{22} & \cdots  & a_{2n} \\  \cdots  & \cdots  & \cdots  & \cdots  \\  a_{n1} & a_{n2} & \cdots  & a_{nn} \end{bmatrix} ,现在我们求 \frac{df}{dx}

标量对列向量求偏导,求得的也是一个列向量,结果向量的每个元素为 f 对自变量每个元素的偏导数。

一个二次型本身是一个多项式,可以写为如下形式:

f(x_1, x_2, x_3, ..., x_n)

=\begin{bmatrix} x_1 & x_2 & \dots & x_n \end{bmatrix}  \begin{bmatrix} a_{11} & a_{12} & \cdots  & a_{1n} \\  a_{21} & a_{22} & \cdots  & a_{2n} \\  \cdots  & \cdots  & \cdots  & \cdots  \\  a_{n1} & a_{n2} & \cdots  & a_{nn} \end{bmatrix}\begin{bmatrix} x_1 \\ x_2 \\ \cdots \\x_n\end{bmatrix}

=\begin{bmatrix} (a_{11} \cdot x_1 +a_{21} \cdot x_2 & \dots & a_{n1} \cdot x_n) , (a_{12} \cdot x_1 +a_{22} \cdot x_2 & \dots & a_{n2} \cdot x_n), \cdots, (a_{1n} \cdot x_1 +a_{2n} \cdot x_2 & \dots & a_{nn} \cdot x_n) \end{bmatrix}  \begin{bmatrix} x_1 \\ x_2 \\ \cdots \\x_n\end{bmatrix}

=  \ (a_{11} \cdot x_1 +a_{21} \cdot x_2 + \dots + a_{n1} \cdot x_n) \cdot x_1

+(a_{12} \cdot x_1 +a_{22} \cdot x_2 + \dots + a_{n2} \cdot x_n) \cdot x_2

+(a_{13} \cdot x_1 +a_{23} \cdot x_2 + \dots + a_{n3} \cdot x_n) \cdot x_3

+ \cdots+\cdots+\cdots

+(a_{1n} \cdot x_1 +a_{2n} \cdot x_2 + \dots + a_{nn} \cdot x_n) \cdot x_n (公式)

上面步骤是矩阵、向量相乘的过程,最终生成一个数字。不过我们为了方便后续观察,还是保留了行和列的痕迹。将公式稍微变换下(将第 i 列的值放置在第 i 行,虽然公式)并却掉括号,如下所示,

= (\ a_{11} \cdot x_1 \cdot x_1+a_{12} \cdot x_1 \cdot x_2 + \dots + a_{1n} \cdot x_1 \cdot x_n )

+ (\ a_{21} \cdot x_2 \cdot x_1+a_{22} \cdot x_2 \cdot x_2 + \dots + a_{2n} \cdot x_2 \cdot x_n )

+ (\ a_{31} \cdot x_3 \cdot x_1+a_{32} \cdot x_3 \cdot x_2 + \dots + a_{3n} \cdot x_3 \cdot x_n )

+ \cdots+\cdots+\cdots

+ (\ a_{n1} \cdot x_n \cdot x_1+a_{n2} \cdot x_n \cdot x_2 + \dots + a_{nn} \cdot x_n \cdot x_n )

=\sum_{j=1}^n a_{1j} x_1 x_j+ \sum_{j=1}^n a_{2j}x_2x_j + \cdots + \sum_{j=1}^n a_{nj}x_nx_j = \sum_{i=1}^n \sum_{j=1}^{n} a_{ij}x_ix_j (每一行求一次和,然后所有行的和相加)

即,

f(x_1, x_2, x_3, ..., x_n)= \sum_{i=1}^n \sum_{j=1}^{n} a_{ij}x_ix_j n * n 个乘积项的和)

现在对 x_k 求偏导,我们会发现上面 n*n 个乘积项中与 x_k 相关的项中,只有第 k 行和第 k 列的那些项对x_k求导才可能不为0,其他项对x_k的导数都是0。例如对 x_1 求偏导,只有第1行和第1列的那些项对 x_1 求偏导才可能不为0,其他项由于不存在x_1,所以对x_1的导数都是0,如下图所示,

那么通过上面的分析可以得知,对 x_k 求偏导数由以下四种不重叠的情况组成,我们以 k=1 为例,如图所示:

i \neq k, j \neq k(k=1) ,表示上图中的黄色框,由于该框中所有项都不包含 x_1 ,所以这部分对x_1偏导数为0;

\nabla 1 = 0

i \neq k, j = k(k=1) ,表示上图中的绿色框,该框中共有 n-1 项,且都包含 x_1 ,所以这部分对x_1偏导数为:

\nabla = \sum_{i \neq k}^{}a_{ik}x_{i} (共有 n-1 项,包括 a_{11} 那一项)

= \frac{\partial (a_{21}x_2x_1)}{\partial x_1} + \frac{\partial (a_{31}x_3x_1)}{\partial x_1} + \cdots \frac{\partial (a_{n1}x_nx_1)}{\partial x_1}

= a_{21}x_2+a_{31}x_3 + \cdots a_{n1}x_n

i = k, j \neq k(k=1) ,表示上图中的蓝色框,该框中共有 n-1 项,且都包含 x_1 ,所以这部分对x_1偏导数为:

\nabla = \sum_{j \neq k}^{}a_{kj}x_{j} (共有 n-1 项,包括 a_{11} 那一项)

=\frac{\partial (a_{12}x_1x_2)}{\partial x_1} + \frac{\partial (a_{13}x_1x_3)}{\partial x_1} + \cdots + \frac{\partial (a_{1n}x_1x_n)}{\partial x_1}

=a_{12}x_2 + a_{13}x_3 + \cdots + a_{1n}x_n

i = k, j = k(k=1) ,表示上图中的红色框,该框中仅有1项,且包含两个 x_1 ,所以这部分对x_1偏导数为:

\nabla = 2a_{kk}x_{k}

=2a_{11}x_{1}

综上可得,

\frac{df}{dx_k}= \sum_{i \neq k}^{}a_{ik}x_{i} +  \sum_{j \neq k}^{}a_{kj}x_{j} + 2a_{kk}x_k

= (\sum_{i \neq k}^{}a_{ik}x_{i} +  a_{kk}x_k) + (\sum_{j \neq k}^{}a_{kj}x_{j} + a_{kk}x_k)

= \sum_{i = 1}^{n}a_{ik}x_{i}  + \sum_{j =1}^{n}a_{kj}x_{j}

上面是对 x_1 的计算过过程,其他值也类似,例如 k=2 ,则示意图如下,

因此,对向量 x 的导数为,

\frac{d f}{d x} = \begin{bmatrix} \frac{\partial f}{\partial x_{1}} \\  \frac{\partial f}{\partial x_{2}} \\  \cdots \\  \frac{\partial f}{\partial x_{n}} \end{bmatrix} =  \begin{bmatrix} \sum_{i=1}^{n} a_{i1}x_{i} + \sum_{j = 1}^{n}a_{1j}x_{j} \\  \sum_{i=1}^{n} a_{i2}x_{i} + \sum_{j = 1}^{n}a_{2j}x_{j} \\  \cdots \\  \sum_{i=1}^{n} a_{in}x_{i} + \sum_{j = 1}^{n}a_{nj}x_{j} \end{bmatrix} =  \begin{bmatrix} \sum_{i=1}^{n} a_{i1}x_{i} \\  \sum_{i=1}^{n} a_{i2}x_{i} \\  \cdots \\  \sum_{i=1}^{n} a_{in}x_{i} \end{bmatrix} + \begin{bmatrix} \sum_{j = 1}^{n}a_{1j}x_{j} \\  \sum_{j = 1}^{n}a_{2j}x_{j} \\  \cdots \\  \sum_{j = 1}^{n}a_{nj}x_{j} \end{bmatrix}

进一步得

\frac{d f}{d x} =  \begin{bmatrix} \sum_{i=1}^{n} a_{i1}x_{i} \\  \sum_{i=1}^{n} a_{i2}x_{i} \\  \cdots \\  \sum_{i=1}^{n} a_{in}x_{i} \end{bmatrix} + \begin{bmatrix} \sum_{j = 1}^{n}a_{1j}x_{j} \\  \sum_{j = 1}^{n}a_{2j}x_{j} \\  \cdots \\  \sum_{j = 1}^{n}a_{nj}x_{j} \end{bmatrix}  = \begin{bmatrix} a_{11} & a_{21} & \cdots & a_{n1} \\  a_{12} & a_{22} & \cdots & a_{n2} \\  \cdots & \cdots & \cdots & \cdots \\  a_{1n} & a_{2n} & \cdots & a_{nn} \end{bmatrix} \begin{bmatrix} x_{1} \\  x_{2} \\  \cdots \\  x_{n} \end{bmatrix} + \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\  a_{21} & a_{22} & \cdots & a_{2n} \\  \cdots & \cdots & \cdots & \cdots \\  a_{n1} & a_{n2} & \cdots & a_{nn} \end{bmatrix} \begin{bmatrix} x_{1} \\  x_{2} \\  \cdots \\  x_{n} \end{bmatrix}

\forall i \in[1,n],j\in[1,n],a_{ij}=a_{ji} ,则矩阵 A 是对称阵, A=A^T ,则有

\frac{df}{dx} = Ax + A^{T}x = 2Ax

即,当 A 是对称阵时,有

\frac{d(x^TAx)}{dx}  = 2Ax

3)f(x)=x^Tx,x=(x_1,x_2,\cdots,x_n)^T ,求 \frac{df}{dx}

这个可以换个形式,即 f(x)=x^Tx=x^TEx ,其中 E 是对称阵,则偏导数为,

\frac{d(x^Tx)}{dx} = 2Ex = 2x

参考资料

标量对向量求导 - _yanghh - 博客园



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3