版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
这是《机器学习中的数学基础》系列的第4篇。
上一篇我们知道了,矩阵其实就是一个线性变换,矩阵的各列就是由原来的基向量变换而来。在此基础上,假如我们把两个矩阵放在一起,也就是说,让两个矩阵做乘法,它又有什么含义呢?
矩阵乘法
我们还是先从矩阵和向量的乘法看起:
矩阵乘以一个向量,得到一个新向量。如果我们把新向量再乘以一个矩阵呢?又得到一个向量:
把(1)式代入(2)式,就得到:
我们已经知道矩阵是一个线性变换,从上面的式子可以看出,两个矩阵相乘,就相当于连续进行两个线性变换,作用还是将一个旧向量变成一个新向量。那我们不禁会想,肯定存在一个复合矩阵,它的效果等同于两个矩阵相乘。用公式表示就是:
很明显,我们要找的这个复合矩阵,就是两个矩阵的乘积:
思路有了,那复合矩阵到底怎么算呢?别急,我们还是从基的角度去解决这个问题。
上式中的矩阵[a,b;c,d]就是由原来的基向量i和j变换而来,我们把它看做新的基(a,c)和(b,d)。那么新的基再乘以矩阵[i,j;k,l]是什么含义呢?就相当于把新的基分别再做了一次线性变换。因此,复合矩阵就相当于:
复合矩阵的第一列,就是矩阵[i,j;k,l]与向量(a,c)的乘积;复合矩阵的第二列,就是矩阵[i,j;k,l]与向量(b,d)的乘积。把上式展开,得到复合矩阵为:
这就是矩阵乘法的定义,我们从另一个角度去理解了它的内涵。
行列式
接下来,我们来看矩阵的行列式在几何上的意义。这里先放结论,行列式就是线性变换前后,面积的缩放倍数。到底是怎么回事呢?我们先看下图:
如图,是我们的i、j基向量所围成的面积。现在让它乘以一个矩阵[2,0;0,2],看看有什么变化:
从上图可以很容易看出,在矩阵的作用下,i变为原来的2倍,j也变为原来的2倍,因此新的基向量围成的面积是原来的4倍。
所以,矩阵[2,0;0,2]的行列式就等于4.
哦,或许你还是有点不明白。没关系,我们把它一般化,看看行列式的公式到底怎么来的。二维矩阵行列式的公式如下:
我们用det()来表示矩阵的行列式,那上面的公式是怎么得出的呢?我们来画个图:
如图,OA