本文是斯坦福大学CS229机器学习课程的基础材料,原始文件下载 原文作者:Zico Kolter,修改:Chuong Do,Tengyu Ma 翻译:黄海广备注:请关注github的更新,线性代数和概率论已经更新完毕.
CS229机器学习课程复习材料-线性代数 CS229机器学习课程复习材料-线性代数 线性代数复习和参考 1.基础概念和符号 1.1基本符号 2.矩阵乘法 2.1向量-向量乘法 2.2矩阵-向量乘法 23矩阵-矩阵乘法 3运算和属性 3.1单位矩阵和对角矩阵 3.2转置 3.3对称矩阵 3.4矩阵的迹 3.5范数 3.6 线性相关性和秩 3.7方阵的逆 3.9 矩阵的值域和零空间 3.10行列式 3.11二次型和半正定矩阵 3.12特征值和特征向量 3.13对称矩阵的特征值和特征向量 4.矩阵微积分 4.1梯度 4.2黑塞矩阵 43二次函数和线性函数的梯度和黑塞矩阵 4.4最小二乘法 4.5行列式的梯度 4.6特征值优化 线性代数复习和参考 1.基础概念和符号 线性代数提供了一种紧凌地表示和操作线性方程组的方法.
例如,以下方程组: 421 -5x =-13 2x13x=9 这是两个方程和两个变量,正如你从高中代数中所知,你可以找到x1和2的唯一解(除非方程以某 种方式退化,例如,如果第二个方程只是第一个的倍数,但在上面的情况下,实际上只有一个唯一 解).
在矩阵表示法中,我们可以更紧凑地表达:
Ax= b with A = 我们可以看到,这种形式的线性方程有许多优点(比如明显地节省空间).
1.1基本符号 我们使用以下符号: A∈Rmx,表示A为由实数组成具有m行和n列的矩阵.
∈R”,表示具有n个元素的向量.
通常,向量r将表示列向量:即,具有n行和1列的矩阵.
如果 我们想要明确地表示行向量:具有1行和n列的矩阵我们通常写a”(这里x”x的转置).
a表示向量r的第i个元素 21 32 [2] 我们使用符号aij(或AA等)来表示第i行和第列中的A的元素: 012 01n G21 022 0/2n A= Lam1 αm2 Gmn 我们用a或者A表示矩阵A的第例: 我们用a或者A表示矩阵A的第行: -am- 在许多情况下,将矩阵视为列向量或行向量的集合非常重要且方便.
通常,在向量而不是标量上 操作在数学上(和概念上)更清晰.
只要明确定义了符号,用于矩阵的列或行的表示方式并没有通 用约定.
2.矩阵乘法 两个矩阵相乘,其中A∈RmnandB∈R",则: C' = AB ∈ Rmxp 其中: C ABx =1
请注意,为了使矩阵乘积存在,A中的列数必须等于B中的行数.
有很多方法可以查看矩阵乘法,我们 将从检查一些特殊情况开始.
2.1向量-向量乘法 给定两个向量r,y∈R"ry通常称为向量内积或者点积,结果是个实数.
y1 xy∈R=[zzzn] 注意:xy=y”x始终成立.
给定向量x∈R",y∈R”(他们的维度是否相同都没关系),xy”∈Rm×叫做向量外积,当 (y)=2(3的时候,它是-个矩阵.
Z1 xiy 21y2 21yn zy” ∈ Rmxn 32 231 Z2/2 Z23n yn]= my1正my2 举一个外积如何使用的一个例子:让1∈R"表示一个n维向量,其元素都等于1,此外,考虑矩阵 A∈R,其列全部等于某个向量∈R.
我们可以使用外积紧凌地表示矩阵A: 2 1 2 1 2.2矩阵-向量乘法 给定矩阵A∈Rx,向量∈R”,它们的积是一个向量y=Az∈R".有几种方法可以查看矩阵 向量乘法,我们将依次查看它们中的每一种.
如果我们按行写A,那么我们可以表示Ar为: y= Ar = am 换句话说,第i个y是A的第i行和z的内积,即:=3=a.
同样的,可以把A写成列的方式,则公式如下: y = Az = x2 换句话说,y是A的列的线性组合,其中线性组合的系数由r的元素给出.
到目前为止,我们一直在右侧乘以列向量,但也可以在左侧乘以行向量.
这是写的,3”=x”A表示 A∈Rmxn,∈R",y∈R".
和以前一样,我们可以用两种可行的方式表达y”,这取决于我们是 否根据行或列表达A.
第一种情况,我们把A用列表示: y=x²A xa²..za] 这表明y”的第个元素等于x和A的第列的内积.
最后,根据行表示A,我们得到了向量-矩阵乘积的最终表示: -a- g7 =aA=[z2] a? = 21 [a-] x2[a ] ... xn [a] -a- 所以我们看到y是A的行的线性组合,其中线性组合的系数由z的元素给出.
2.3矩阵-矩阵乘法 有了这些知识,我们现在可以看看四种不同的(形式不同,但结果是相同的)矩阵-矩阵乘法:也就是 本节开头所定义的C=AB的乘法.
首先,我们可以将矩阵-矩阵乘法视为一组向量-向量乘积.
从定义中可以得出:最明显的观点是C的 (.)元素等于A的第行和B的的列的内积.
如下面的公式所示: i [abab-..ab abab...ab C=AB = abab...abp 这里的A∈Rmx,B∈R×,a;∈R”,∈RxP,这里的A∈Rm×,B∈Rx,a∈R” ,beR"P,所以它们可以计算内积.
我们用通常用行表示A而用列表示B.
或者,我们可以用列表 示A,用行表示B,这时AB是求外积的和.
公式如下: C=AB= 换句话说,AB等于的A的第例和B第行的外积的和.
因此,在这种情况下,a∈R"和b;∈R” ,外积a²bT的维度是m×p,与C的维度一致.
其次,我们还可以将矩阵-矩阵乘法视为一组矩阵向量积.
如果我们把B用列表示,我们可以将C的列 视为A和B的列的矩阵向量积.
公式如下: [] [T 11 C=AB=Abb bp Ab Ab...Abp LI1 |] 这里C的第例由矩阵向量乘积给出,右边的向量为c=Ab.
这些矩阵向量乘积可以使用前一小节中 给出的两个观点来解释.
最后,我们有类似的观点,我们用行表示A,C的行作为A和C行之间的矩阵 向量积.
公式如下:
a²B aB C=AB= =8 -am 这里第行的C由左边的向量的矩阵向量乘积给出:c=aB 将矩阵乘法剖析到如此大的程度似乎有点过分,特别是当这些观点都紧跟在我们在本节开头给出的 初始定义(在一行数学中)之后.
这些不同方法的直接优势在于它们允许您在向量的级别/单位而不是标量上进行操作.
为了完全理解线 性代数而不会迷失在复杂的索引操作中,关键是要用尽可能多的概念进行操作.
实际上的线性代数都处理某种矩阵乘法,花一些时间对这里提出的观点进行直观的理解是非常必要 的.
除此之外,了解一些更高级别的矩阵乘法的基本属性是很有必要的: 矩阵乘法结合律:(AB)C=A(BC) 矩阵乘法分配律:A(BC)=ABAC 矩阵乘法通常不是可交换的:也就是说,通常AB≠BA.
(例如,假设A∈Rmn,B∈R"× ,如果m和g不相等,矩阵乘积BA甚至不存在!
) 如果您不熟悉这些属性,请花点时间自已验证它们.
例如,为了检查矩阵乘法的相关性,假设 A ∈Rmxn,B∈R×,C∈RP注意AB∈R×P,所以(AB)C∈Rmx4类似地, BC∈R9,所以A(BC)∈R"×.
因此,所得矩阵的维度一致.
为了表明矩阵乘法是相关的,足 以检查(AB)C的第(ij)个元素是否等于A(BC)的第(i )个元素.
我们可以使用矩阵乘法的定义直接 验证这一点: k1 k=1 7=1 (ABC=(ABeC) =ABuC=Aa(BC)=(A(BC))) 3运算和属性 在本节中,我们介绍矩阵和向量的几种运算和属性.
希望能够为您复习大量此类内容,这些笔记可以作 为这些主题的参考.
3.1单位矩阵和对角矩阵 单位矩阵,I∈R",它是一个方阵,对角线的元素是1,其余元素都是0: I=0i≠j {1i=j 对于A∈Rm,有: AI = A = IA 注意,在某种意义上,单位矩阵的表示法是不明确的,因为它没有指定I的维数.
通常,的维数是从上 下文推断出来的,以便使矩阵乘法成为可能.
例如,在上面的等式中,Af=A中的是n×n矩阵,而 A=IA中的I是m×m矩阵.