矩阵和向量
虽然线性代数有很强的理论性,但是我们做机器学习的研究只需要了解基本的矩阵和向量
运算就可以了。下面用解图的方式来跟大家讨论下线性代数。
什么是矩阵?
矩阵就是一系列数字按照一定的格式组成的集合的数据结构,由行和列来确定矩阵中某一个元素的位置。
什么是向量?
向量只有一列,也就是说每一行对应一个数据,就可以用 i 来表述不同的行 Yi 对应不同的行值。上标
表示是第几个向量,那么不同的向量就可以用一个 n X 1维的向量分别表示出来。
矩阵加法:
矩阵的加法是元素间的加法,就是每一个对应位置的元素非别相加,并且只能是行列排列相同的矩阵才能
做加法,形状不同的矩阵不能做矩阵加法。
标量乘除矩阵:
一个标量对矩阵的乘除运算,就是这个标量跟矩阵中的每一个元素单独做运算。
向量乘法:
向量乘法的基本原理是 m X n 的矩阵和 n X 1 的矩阵相乘之后得到一个 m X 1 的矩阵,
运算的时候就是前一个矩阵的某一行元素对应乘以后一个矩阵的列元素求和,得到的
元素的行列位置关系就是前一个矩阵的行和后一个矩阵的列。
解读一下,向量可以理解为在某一个空间中某一点的方向,延伸下就是某一方向的权重。以
上图房价预测为例,我们现在的特征是面积,假设函数是 h(θ), h(θ)的各个特征和权重的
乘积就是目标变量,这时候对于没有特征的系数我们给他一个偏置,值设为1,使得特征个数
和系数相同。
向量乘法:
第一个矩阵的行数和第二个矩阵的列数组成了相乘后的矩阵的行列,如上图,矩阵 C 的每一列都是
矩阵 B 的对应的列乘以矩阵 A 中对应的行。
还是用一个房屋价格的例子来说明:
假设有三个不同的公司做了三个假设函数来预测房价,那么这个三个公司的假设函数系数(权重)
就可以组成一个三列的矩阵,每一列都是一组系数(权重)。这样用特征乘以系数(权重)之后又会得
到一个三列的目标变量,每一列的值对应一组预测结果。
矩阵乘法不符合交换律:
矩阵乘法符合结合律:
单位阵:
逆矩阵:
矩阵的转秩:
一句话,行和列的位置互换~~~
基本机器学习中用到的矩阵和运算就这么多~~~