AI基础知识及名词解释
一、思维导图
二、机器学习
2.1 线性代数
内容来自3B1B的教程。
2.1.1 向量
从广义上讲,向量有三种不同解释,我愿称之为物理学视角;计算机科学视角;数学视角。
物理学视角
物理学家的观点是,向量是指向空间的箭头。定义定向量的是它的长度和指向的方向,只要这两个条件相同,向量可以在二位平面任意移动,并且仍然表示相同的向量。
平面上的向量是二维的,空间中的向量是三维的。
计算机科学视角
从计算机科学的角度来看,向量是有序的数字列表。例如,如果你正在做一些关于房价的分析,而你关心的特征是平方米和价格,你可以将每栋房子建模为一对数字,第一个表示平方米,第二个表示价格。
我们可以说房子价格的模型被建模为一个二维向量。
数学视角
数学家将这两种观点进行了概括,基本上认为只要存在合理定义两个向量相加以及将向量乘以一个数的概念,这样的事物就可以视为向量。我们将在本章稍后讨论这些操作。
坐标系
现在,尽管你们中的许多人已经熟悉坐标系统了,但详细地回顾一下它们仍然是有价值的,因为这是线性代数两个主要视角之间所有重要转换发生的地方。暂时将我们的注意力集中在二维上,你有一条水平线,称为x轴,和一条垂直线,称为y轴。
它们相交的地方是原点,你应该将其视为空间的中心和所有向量的根源。
选择一个任意的距离来表示长度为1的单位后,你需要在每个坐标轴上按照这个距离做出刻度标记。
当我们在本文中想要表达二维空间的整体概念时,我们会将这些刻度标记扩展成网格线,如下所示:
让我们在提到“向量”这个词时,确定一个具体的概念。鉴于我们这里强调的是几何重点,每当引入涉及向量的新主题时,我们希望你首先想到的是一支箭头,更具体地说,是在一个坐标系统中(比如xy平面)的箭头,其箭尾位于原点。
向量的坐标是一对数字,基本上提供了从原点处的向量尾部到达其尖端的路线指令。第一个数字告诉你沿着x轴走多远,正数表示向右移动,负数表示向左移动;第二个数字则告诉你随后要沿y轴平行走多远,正数表示向上移动,负数表示向下移动。
练习:
如何表示4个单位向下,7个单位向右的向量?
答案:
在三维空间中,你增加了一个新的坐标轴,称为z轴,它同时垂直于x轴和y轴。在这种情况下,每个向量都与一个有序的三个数字关联:第一个数字告诉你沿着x轴移动多远,第二个数字告诉你沿着y轴平行移动多远,而第三个数字则告诉你沿着新的z轴平行移动多远。
每组三个数字确定了空间中的一个唯一向量,而空间中的每一个向量也确切对应着一组三个数字。
向量运算
那么,向量加法和数乘向量又是怎样的呢?毕竟,线性代数的每个主题都是围绕这两种操作展开的。幸运的是,这两者都相对直观易懂。
加法
假设我们有两个向量,一个向上并稍微偏向右方,另一个则向右并略微向下。
将这两个向量相加,只需将第二个向量移动,使其尾部位于第一个向量的尖端上。然后,如果你从第一个向量的尾部画一条新向量到第二个向量现在所在的尖端位置,那么这条新向量就是它们的和。
为什么这样做是合理的呢?为什么采用这样的向量加法定义而非其他形式?一种理解方式是,将每个向量视作一种特定的移动——具有确定的距离和方向的步伐。如果你先沿着第一个向量迈出一步,再按照第二个向量指示的方向和距离迈出一步,那么总体效果等同于直接沿这两个向量之和的方向迈出一步。
这可以视为我们在数轴上加数字思维的一种自然延伸。比如,教导孩子理解加法概念时,比如,我们可以解释为先向右移动2步,再向右移动5步。整体效果就如同直接向右移动了7步一样。
因此,向量加法的定义不仅贴合直观的物理运动概念,也与我们在一维数轴上对数字加法的理解相契合,确保了数学运算在更高维度上的连贯性和一致性。
实际上,让我们从数值角度看看向量加法是如何进行的。这里的第一个向量坐标为,而第二个向量的坐标为。当你使用“首尾相接”的方法来计算它们的向量和时,可以想象从第一个向量的起点到第二个向量的终点有一个四步走的路径:首先向右走1个单位,然后向上走2个单位,接着再向右走3个单位,最后向下走1个单位。
如果你重新整理这些步骤,先完成所有的水平移动,然后再完成所有的垂直移动,那么可以这样理解:首先向右移动个单位,然后向上移动个单位。因此,新向量的坐标是(向右)和(向上),即和向量为。
一般来说,计算两个向量相加,只需将它们的对应元素对齐相加。具体来说,
这意味着向量的第一个分量与第二个向量的第一个分量相加,第二个分量与第二个向量的第二个分量相加,以此类推。
练习:
这里有两个向量相加:,描述如何从原点走到它们的和。
答案:
沿x轴向右走10个单位乘法
另一个基本的向量操作是乘以一个数。理解这个最好的方式就是看几个例子。如果你取数字2,然后乘以一个给定的向量,你会把这个向量拉长,使得它的长度变成原来的两倍。
如果你将一个向量乘以,你会把它压缩,使其变为原来长度的三分之一。
如果你将它乘以一个负数,比如,那么这个向量会先翻转方向,然后再沿翻转后的方向拉伸倍。
这个拉伸、压缩,有时还伴随方向反转的过程,被称为“缩放”。每当遇到像、或这样的数字以这样的方式作用于某个向量,进行“缩放”时,我们就称其为“标量”。实际上,在线性代数中,数字的主要功能之一就是对向量进行缩放,因此通常可以互换使用“标量”和“数字”这两个词。数值上,将向量沿其长度方向拉伸倍等同于将其每个坐标都乘以。因此,将向量视为数字列表的概念下,用一个标量乘以一个给定向量意味着将该向量的每个分量都乘以那个标量。
练习:
答案:
2.1.2 线性组合、跨度(生成集)与基向量
在上一节中,我们除了介绍向量加法和标量乘法的概念外,还讲述了向量坐标,其间涉及二维向量与数字对之间的相互转换。
现在,对于你们中的许多人来说,向量坐标可能已经很熟悉了,但在线性代数中,还有另一种思考这些坐标的方式,这是非常核心的。当你有一对用来描述向量的数字,比如,试着将每个坐标视为一个标量,也就是说,考虑每一个坐标是如何拉伸或压缩向量的。
在坐标系统中,有两个特殊的向量。一个指向右侧,长度为,通常称为"i帽"()或"x方向上的单位向量"。另一个则垂直向上,长度也为,通常称为"j帽"()或"y方向上的单位向量"。
现在,想象一下坐标作为一个标量,它按比例因子拉伸;而坐标作为另一个标量,它不仅按比例因子拉伸,而且还使其方向翻转。从这个意义上说,这些坐标所描述的向量就是两个经过缩放的向量之和。
将两个经过缩放的向量相加的这个想法是一个重要的概念。那两个向量和有一个特别的名字:它们一起被称为坐标系统的“基”。这意味着当你将坐标视为标量时,这些基向量就是那些标量实际作用于其上的对象。
“基”的定义还有更技术性的表述,我们稍后会讲到。用这两个特殊基向量来构建我们熟悉的坐标系框架,引出了一个有趣且微妙的观点:我们其实可以选择一对不同的基向量,从而得到一个完全合理的新的坐标系。
选择不同的基向量
例如,取一个向上并向右指的向量,以及一个向下并向右指的向量。
花点时间思考一下,通过选取两个标量,分别对这两个向量进行缩放,然后将它们相加,你能得到的所有不同向量。通过改变你选择的标量,你能达到哪些二维向量?
答案是,对于这两个向量,你可以通过这种方式描述所有可能的二维向量,这是一个值得深思的好问题,为什么能这样。像这样一组新的基向量仍然给你提供了一种在数字对与二维向量之间来回转换的方式,但这种关联确实与使用标准基底和时得到的不同。
我们将在后面的章节更详细地讨论这一点,描述不同坐标系统之间的关系,但目前我们只是希望你能理解,任何数值描述向量的方法都取决于你选择的基向量。
线性组合
任何时候,如果你像这样对两个向量进行缩放并相加,这被称为这两个向量的“线性组合”。
这里的“线性”一词从何而来?这和直线有什么关系呢?当你用一个标量乘以一个向量时,它会改变该向量的大小。将实数域中的每一个数乘以同一个向量,会产生一条穿过原点并经过由该向量定义的点的无限直线。因此,“线性”在这个上下文中指的是这种操作保持了通过原点的直线特性,即当你改变向量的长度(通过标量乘法)时,你实质上是在同一直线上移动,没有改变其方向。
因此,两个向量的线性组合就是结合这两条直线的一种方式。对于大多数向量对而言,如果你让两个标量自由取值,并考虑所有可能得到的向量,你将能够达到平面上的每一个可能点。这样一来,二维空间中的每一个向量都在你的掌控之中了。
然而,如果你的两个原始向量恰好共线,那么通过标量乘法产生的线将是同一条直线,所以将它们相加无法得到这条直线外的任何向量。
张成
通过某一特定对向量的线性组合所能达到的所有可能向量的集合,被称为这两个向量的“张成(Span)”。用这个术语重述我们刚才看到的内容,大多数二维向量对的生成空间是二维空间中的所有向量,但当这两向量共线时,它们的生成空间则是所有其终点位于某一特定直线上的向量。
记得我们之前说过线性代数主要围绕着向量加法和标量乘法吗?两个向量的生成空间本质上是在讨论,仅使用这些基本操作——向量加法和标量乘法,你能得到的所有可能向量的集合是什么。
练习:
什么样的两个向量和构成的线性组合只会生成位于同一直线上的向量?
A.
B.
C.
D.
答案:
A向量 与 的张成空间是什么?
A. 一个点
B. 一条直线
C. 一个完整二维平面
答案:
B这两个向量是共线的,因为
这意味着它们的张成空间是通过原点以及向量末端的一条直线。如果这两个向量不位于同一直线上,那么它们的张成空间将是整个二维平面。或者,如果两个向量都是零向量,那么它们的张成空间就只是原点那个点。
向量与点
这是讨论人们如何普遍将向量视为点的好时机。想象一整组向量都坐落在一条直线上会显得非常拥挤,而同时考虑所有填充平面的二维向量则更为纷繁复杂。
因此,在处理这样的向量集合时,通常仅用空间中的一个点(即向量的末端点)来表示每个向量。这样一来,如果你想考虑所有其末端位于某特定直线上的向量,只需考虑那条直线本身即可。
同样地,为了思考所有可能的二维向量,可以将每一个向量概念化为其末端所处的点。然后,为了同时考虑所有这些向量,你可以只想象构成二维空间的那个无限广阔的平面,而不必考虑箭头指向。
总的来说,如果你单独考虑一个向量,可以把它想象成一支箭;而如果你考虑的是向量的集合,把它们想象成点会更为方便。
3D空间的张成
当我们开始考虑三维空间中的向量时,"张成空间"的概念就变得更加有趣了。例如,如果你取三维空间中的两个不指向相同方向的向量,那么它们的“张成空间”意味着什么呢?
它们的张成空间是指所有这些向量的可能线性组合的集合,意味着通过以某种方式缩放开始的两个向量中的每一个,然后将它们相加,所能得到的所有可能的向量。
你可以想象转动两个旋钮来改变定义线性组合的两个标量,将缩放后的向量相加,并跟随结果向量的末端移动。这个末端的轨迹会在三维空间的原点处切出某种平面。
这个平面就是这两个向量的张成空间。或者更准确地说,所有其末端位于这个平面上的可能向量的集合,构成了你的两个向量的张成空间。
如果你再加上第三个向量,并考虑这三个向量的张成空间,会发生什么?三个向量的线性组合定义方式与两个向量的基本相同:选择三个标量,用它们分别缩放你的每一个向量,然后将它们全部相加。同样,这些向量的张成空间就是所有可能线性组合的集合。
当我们加入第三个向量时,可能会发生两种情况:
- 如果第三个向量恰好位于前两个向量的张成空间内,那么张成空间不会改变,你仍然局限在那个相同的平面上。换句话说,将第三个向量的缩放版本添加到前两个向量的线性组合中并不会让你获得任何新的向量。
- 如果你随机选择第三个向量,它几乎肯定不在前两个向量的张成空间上。因为它指向一个独立的方向,它就解锁了访问所有可能的三维向量的能力!理解这一点的方式是,当你缩放这个新的第三个向量时,它围绕着前两个向量的张成空间移动,将这个平面扫过整个空间。
这就像是你在充分利用你所拥有的三个可自由变化的标量,来访问空间的全部三个维度。
当第三个向量位于前两个向量的张成空间上,或者两个向量恰好共线时,我们需要一些术语来描述至少有一个向量是多余的,没有为我们的张成空间增加任何新内容这一事实。每当出现这种情况时,即你有多个向量,并且移除其中一个向量并不会减小它们的张成空间,相关的术语就是称这些向量是“线性相关的”。
换一种说法就是,其中一个向量可以表示为其他向量的线性组合。也就是说,它已经被包含在其他两个向量的张成空间里了。
另一方面,如果说每个向量都确实为张成空间增添了另一个维度,那么就说这些向量是“线性独立”的。
练习:
已知两个向量和的张成空间:
下列哪个向量与向量和是线性相关的?
A.
B.
C.
D.
答案:
D已知如下图所示的两个向量的线性组合:
哪两个标量值和作为上面给出的向量的线性组合,能构成向量?
A.
B.
C.
D.
答案:
C首先,写下向量的坐标
建立这两个向量的线性组合
将向量的分量对应相等以得到一个线性方程组
解出b关于a的表达式。
将b的表达式代入第一个方程中解出a。
将a带入表达式解出b