矩阵力量:线性代数全彩图解+微课+Python编程
上QQ阅读APP看书,第一时间看更新

1.2 有矩阵的地方,更有向量

行向量

首先,矩阵X可以看作是由一系列行向量(row vector)上下叠加而成的。

如图1.4所示,矩阵X的第i行可以写成行向量xi。上标圆括号中的i代表序号,对于鸢尾花数据集,i=1~150。

举个例子,X的第1行行向量记做x(1),具体为

行向量x(1)代表鸢尾花数据集编号为1的样本。行向量x(1)的四个元素依次代表花萼长度(sepal length)、花萼宽度(sepal width)、花瓣长度(petal length)和花瓣宽度(petal width)。长、宽的单位均为厘米(cm)。

行向量x(1)也可以看做1行、4列的矩阵,即形状为1×4。

虽然Python是基于0编号(zero-based indexing),但是本书对矩阵行、列编号时,还是延续线性代数传统,采用基于1编号(one-based indexing)。鸢尾花书《编程不难》专门介绍过两种不同的编号方式。

图1.4 鸢尾花数据,行向量代表样本数据点

列向量

矩阵X也可以看做是由一系列列向量(c olumn vector)左右排列而成的。

如图1.2所示,矩阵X的第j列可以写成列向量xj,下标j代表列序号。对于鸢尾花数据集,若不考虑分类标签,则j=1~4。

比如,X的第1列向量记做x1,具体为

列向量x1代表鸢尾花150个样本数据花萼长度数值。列向量x1可以看做150行、1列的矩阵,即形状为150×1。整个数据矩阵X可以写成四个列向量,即X=[x1, x2, x3, x4]。

再次强调:为了区分数据矩阵中的行向量和列向量,在编号时,本书中行向量采用上标加圆括号,如x(1);而列向量编号采用下标,如x1

此外,大家熟悉的三原色光模式(RGB color mode)中的每种颜色实际上也可以写成列向量,如图1.5所示的7种颜色。在本书第7章中,我们将用RGB解释向量空间等概念。

图1.5 7种颜色对应的RGB颜色向量

大家可能会问,元素数量均为150的x1x2x3x4这四个向量到底意味着什么?有没有什么办法可视化这四个列向量?怎么量化它们之间的关系?答案会在本书第12章揭晓。

当然,我们不要被向量、矩阵这些名词吓到。矩阵就是一个表格,而这个表格可以划分成若干行、若干列,它们分别叫行向量、列向量。