矩阵求导是机器学习与深度学习的基础,它是高等数学、线性代数知识的综合,并推动了概率论与数理统计向多元统计的发展。在一般的线性代数的课程中,很少会提到矩阵导数的概念;而且在网上寻找矩阵求导的知识点,也是五花八门,各有各的说法,各有各自的定义,好多东西也是很容易弄得混淆。那么兔兔今天就从头到尾详细讲解矩阵求导的本质,原理与一般解法的推导。
一:认识函数,认识自变量(变元)
认识函数,认识自变量是非常重要的,这是我们的立足点。回顾高数中的知识,我们大部分情况下遇到的都是自变量是一个数,值是一个数,函数的作用是把一个数映射成另一个数。但是也有自变量是多个数,值是一个数(即多元函数)。
那么在从传统的高等数学向矩阵延伸时,自变量就不一定是一个数了。自变量可以是一个数,可以是多个数(多个数是一个向量或是一个矩阵);经函数映射处理后得到的值以是一个数,一个向量或矩阵。至于值是数还是向量、矩阵,与函数function有关。
这样我们就把自变量分成数,向量,矩阵三种,我们也可以把自变量叫做函数function的变元。把函数function分成三种:function是标量、向量、矩阵,我们就把function分别叫做——实值标量函数(映射成数)、实向量函数(映射成向量)、实矩阵函数(映射成矩阵)。
(1)function是实标量函数(用f表示),其变元是标量(用x表示)
这个其实就是我们最最常见的一元函数。比如,
等。它就是把一个数映射成另一个数。
(2)function是实标量函数(用f表示),其变元是向量(用x或表示)
如果我们纸上书写,最好用表示,便于区分,而在电脑上一般用加粗表示向量。
对于这种情况,就是高数中的多元函数。只不过自变量的多元我们用向量表示,并且我们通常都认为是列向量(这个是约定俗成的东西,而且大家用同样的标准,交流起来也很方便)。例如,变元x就是
;
,变元x就是
。
(3)function是实标量函数(用f表示),其变元是矩阵(用X表示)
比如函数,变元X=
。函数
,变元X=
。
(4)function是实向量函数(用f或表示),其变元是标量(用x表示)。
这时function就是把一个数x映射成向量。例如,里面的f1,f2,f3其实就是前面讲的实标量函数。组合成向量形成的就是一个实向量函数。
(5)function是实向量函数(用f或表示),其变元是向量(用x或
表示)。
这时function把向量映射成向量。例如,x=
。和刚才一样,里面f1,f2,f3是实标量函数,每个都把向量映射成数,又把数排列一起成向量。
注意:我们在高数等其它教材或是网上看到的“向量函数(vector function)”对应的就是该(5)条的情形。那里的向量函数定义是:从的映射。对应这里就是function是m维的,把n维向量x在function作用下映射成m维向量。
(6)function是实向量函数(用f或表示),其变元是矩阵(用X表示)
例子就是。变元就是
。它其实就是把矩阵映射成了向量。里面f1,f2,f3分别把矩阵X映射成数,也就是(3)那一部分。
(7)function是实矩阵函数(用F表示),其变元是标量(用x表示)。
比如,就是在实矩阵函数的映射下,变成了相应的矩阵。
(8)function是实矩阵函数(用F表示),其变元是向量(用x

本文深入浅出地介绍了矩阵求导的基本概念,包括不同类型的函数及其变元,导数的定义和计算方法。并通过实例展示了矩阵求导的具体步骤,最后给出了矩阵求导的通用方法。
最低0.47元/天 解锁文章
1313





