一个数怎么能对一个向量求导

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个数怎么能对一个向量求导相关的知识,希望对你有一定的参考价值。

  1. 矩阵Y对标量x求导:
  相当于每个元素求导数后转置一下,注意M×N矩阵求导后变成N×M了
  Y = [y(ij)] --> dY/dx = [dy(ji)/dx]
  2. 标量y对列向量X求导:
  注意与上面不同,这次括号内是求偏导,不转置,对N×1向量求导后还是N×1向量
  y = f(x1,x2,..,xn) --> dy/dX = (Dy/Dx1,Dy/Dx2,..,Dy/Dxn)\'
  3. 行向量Y\'对列向量X求导:
  注意1×M向量对N×1向量求导后是N×M矩阵。
  将Y的每一列对X求偏导,将各列构成一个矩阵。
  重要结论:
  dX\'/dX = I
  d(AX)\'/dX = A\'
  4. 列向量Y对行向量X’求导:
  转化为行向量Y’对列向量X的导数,然后转置。
  注意M×1向量对1×N向量求导结果为M×N矩阵。
  dY/dX\' = (dY\'/dX)\'
  5. 向量积对列向量X求导运算法则:
  注意与标量求导有点不同。
  d(UV\')/dX = (dU/dX)V\' + U(dV\'/dX)
  d(U\'V)/dX = (dU\'/dX)V + (dV\'/dX)U\'
  重要结论:
  d(X\'A)/dX = (dX\'/dX)A + (dA/dX)X\' = IA + 0X\' = A
  d(AX)/dX\' = (d(X\'A\')/dX)\' = (A\')\' = A
  d(X\'AX)/dX = (dX\'/dX)AX + (d(AX)\'/dX)X = AX + A\'X
  6. 矩阵Y对列向量X求导:
  将Y对X的每一个分量求偏导,构成一个超向量。
  注意该向量的每一个元素都是一个矩阵。
  7. 矩阵积对列向量求导法则:
  d(uV)/dX = (du/dX)V + u(dV/dX)
  d(UV)/dX = (dU/dX)V + U(dV/dX)
  重要结论:
  d(X\'A)/dX = (dX\'/dX)A + X\'(dA/dX) = IA + X\'0 = A
  8. 标量y对矩阵X的导数:
  类似标量y对列向量X的导数,
  把y对每个X的元素求偏导,不用转置。
  dy/dX = [ Dy/Dx(ij) ]
  重要结论:
  y = U\'XV = ΣΣu(i)x(ij)v(j) 于是 dy/dX = = UV\'
  y = U\'X\'XU 则 dy/dX = 2XUU\'
  y = (XU-V)\'(XU-V) 则 dy/dX = d(U\'X\'XU - 2V\'XU + V\'V)/dX = 2XUU\' - 2VU\' + 0 = 2(XU-V)U\'
  9. 矩阵Y对矩阵X的导数:
  将Y的每个元素对X求导,然后排在一起形成超级矩阵。
  
参考技术A 如果是单变量向量,对它的每个坐标分别求导就行了。
比如x=(sin(t),cos(t)),对x求导就是x'=(cos(t),-sin(t)).
如果是多变量向量,有两种导数,分别是旋度和散度。具体公式看书吧。本回答被提问者采纳

对向量方阵的求导

         本总结是是个人为防止遗忘而作,不得转载和商用。


         平时都是对一个数求导,那对向量求导呢?看下面的例子:

         假设有下面这样的矩阵A和向量X

                  

         我们很容易求出

                  

         现在另 y = A·X,那矩阵y对向量x求偏导的结果是多少?

         我们来分析一下,既然是矩阵y对向量x求偏导,那就的让矩阵y中的每一个元素对向量x中的每一个元素分布求偏导。

         我们一个个来

                   1,先求矩阵y的第一行第一个元素a11x1对向量x的第一个元素x1的偏导,即求:

                            f(x1)= a11x1

                   的导数,这个很简单

                            f’(x1)= a11

                   2,因为x是一个向量,所以我们让y中的每一个元素对x中的每一个元素求偏导啊,于是我们还得继续求a11x1对向量x的第二个元素x2的偏导,即求:

                            f(x2)= a11x1

                   的导数,这个很简单

                            f’(x2)= 0

                   3,同理我们继续求....嗯?等等,接下来不用算了!为什么?因为矩阵y的第一行第一个元素a11x1中只有x1,所以a11x1除了对向量x的第一个元素x1之外的所有元素求偏导,其结果都是0!

                   4,于是y的第一行第一个元素a11x1对向量x求偏导的结果是a11

                   5,同理!可以求出:y的第一行第二个元素a12x2对向量x求偏导的结果是a12,y的第一行第三个元素a13x3对向量x求偏导的结果是a13

                   6,总结起来就是:y的第i行第j列元素aijxj对向量x求偏导的结果是aij,即:

                  

 

结论和推广

         就向上面那样,我们可以得出几个向量偏导公式:

                  

 标量对向量的导数

         如果 y = xT·A·x的话,y对向量x求偏导的结果是

                  

         如果这时A有时对称阵,则:

                  

         PS:xT·A·x其实是一个标量,也就是一个数。

 标量对方阵的导数

        

以上是关于一个数怎么能对一个向量求导的主要内容,如果未能解决你的问题,请参考以下文章

向量的非线性函数对向量求导怎么求

1 矩阵分析:二次型的求导

矩阵求导

矩阵向量求导法则

机器学习中的矩阵向量求导 矩阵向量求导之微分法

详解矩阵求导法则