线性代数作为数学的一个分支,广泛用于科学和工程中,掌握好线性代数对于理解和从事机器学习算法相关工作是很有必要的。因此,本书首先探讨一些必备的线性代数知识。学习线性代数,会涉及以下几类数学概念:
8.1.1 标量(scalar)
一个标量就是一个单独的数,它不同于线性代数中研究的其他大部分对象(通常是多个数的数组)。我们用斜体表示标量。标量通常被赋予小写的变量名称。当我们介绍标量时,会明确它们是哪种类型的数。比如在定义实数标量时,我们可能会说“令 s∈R 表示一条线的斜率”;在定义自然数标量时,我们可能会说“令 n∈N 表示元素的数目”。
8.1.2 向量(vector)
一个向量是一列数。这些数是有序排列的。通过次序中的索引,我们可以确定每个单独的数。通常我们赋予向量粗体的小写变量名称,比如
x
。向量中的元素可以通过带脚标的斜体表示。向量
我们可以把向量看作空间中的点,每个元素时不同坐标轴上的坐标。
有时我们需要索引向量中的一些元素。在这种情况下,我们定义一个包含这些元素索引的集合,然后将该集合写在脚标处。比如,指定 x1 , x3 和 x6 ,我们定义集合 S={1,3,6} ,然后写作 xs 。我们用符号 − 表示集合的补集中的索引。比如
8.1.3 矩阵(matrix)
矩阵是具有相同特征和纬度的对象的集合,表现为一张二维数据表。其意义是一个对象表示为矩阵中的一行,一个特征表示为矩阵中的一列,每个特征都有数值型的取值。
通常会赋予矩阵粗体的大写变量名称,比如
A
。如果一个实数矩阵高度为
我们在表示矩阵中的元素时,通常以不加粗的斜体形式使用其名称,索引用逗号间隔。比如,
A1,1
表示左上的元素,
Am,n
表示右下的元素。
我们通过用“
:
”表示水平坐标,以表示垂直坐标
有时我们需要矩阵值表达式的索引,而不是单个元素。在这种情况下,我们在表达式后面接下标,但不必将矩阵的变量名称小写化。比如, f(A)i,j 表示函数 f 作用在
8.1.4 张量(tensor)
在某些情况下,我们会讨论坐标超过两维的数组。一般地,一个数组中的元素分布在若干维坐标的规则网格中,我们将其称之为张量。使用粗体
A
来表示张量“A”。张量