作者:33 | 来源:互联网 | 2023-09-03 08:02
一个列向量和矩阵乘,矩阵必须在前面、列向量必须在后面。我们还是以卖房子的事为例,假设我有四套房,每个房的面积不同,而房屋面积和房屋售价之间的线性模型我已经确定了。frompc˃上图
本文是过期煎饼《机器学习》的第15个视频笔记,对应第1周的第15个视频。
“线性代数复习(可选)——矩阵向量乘法”
最后一节讲了矩阵加法、矩阵乘法和标量乘法。此外,矩阵还可以乘以矩阵。这一节讲一个稍微特殊的情况,就是矩阵乘以向量。
00-1010如下图所示,将32矩阵乘以2维列向量,会得到什么样的结果?
操作规则如下:
从上图可以看出,矩阵和向量的乘法规则很有意思。矩阵和向量相乘得到一个新的列向量。列向量的维数就是矩阵的行数,矩阵的形状和方程左侧的向量也是有意义的。矩阵的列数必须等于向量的维数,这样矩阵和向量的乘法才能进行。在上面的例子中,一个3x2矩阵乘以一个2x1向量,得到一个3x1向量。
一个示例将上述特例抽象成更一般的形式如下所示:
一个mn矩阵乘以一个n1向量。这里需要注意的是,矩阵的列数必须等于要相乘的向量的行数,结果是一个m1的向量。
而且,我们还可以看到,矩阵和向量相乘时的顺序也很重要。列向量乘以矩阵,矩阵必须在前面,列向量必须在后面。例如:
那么,矩阵和向量相乘有什么用呢?
我们以卖房子为例。假设我有四套房,每套房面积不同,我确定了房子面积和房子售价之间的线性模型。
下图:
上图中,如果把左边四套房的面积代入右边的公式,就可以分别得到四套房的价格。如果用刚才提到的矩阵和向量的乘法来表达上面的事情,写出来的公式会很漂亮。下图:
我们拉出模型中的两个参数,形成一个列向量。然后,因为-40参数对应1,0.25对应X,我们得到一个42的矩阵,矩阵的第一列全是1。上图下半部分我们会得到这样一个矩阵和向量相乘的公式,然后我们就可以用前面提到的矩阵和向量相乘的运算规则,用一个公式来表示四套房子卖价的计算,是不是很牛逼?
有些学生可能会觉得这种写法多余,比较麻烦。需要注意的是,现在我们的基本操作都是由计算机实现的,用代码写这样的过程更容易,这样一行代码就可以完成这样的事情,房子数量的增加也不会影响程序的结构,非常方便。如果没有这样的规则,我们可能需要for循环在代码中实现这一点,这有点麻烦。
下节课将介绍更一般的矩阵和矩阵乘法。