人工智能数学基础----矩阵

2,655 阅读4分钟

人工智能数学基础系列文章



今天复习矩阵,作为程序员,矩阵在程序中的应用想必或多或少都接触过,特别是在图像变化算法上的应用。


一、矩阵

1. 定义

矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。(此定义来自百度百科)

下面通过一个方程组来声明一个矩阵(数学符号在PC上书写真是很麻烦,不知道谁有好用的公式符号书写软件推荐下):

三元一次方程组
以上是一个三元一次方程组,根据矩阵的来源定义,有矩阵A如下图

2. 矩阵的运算

2.1. 矩阵的加法

矩阵相加
从上图中我们可以看出,矩阵A和矩阵B相加,它们都是2 x 2的矩阵,相加就是两个矩阵对应的元素值的相加,比如:矩阵A的一行一列元素3和矩阵B的一行一列的元素-7相加,得到新的矩阵的一行一列元素-4,以此类推计算出一个新的矩阵。上图中A+B计算的结果和B+A是一样的,符合加法的交换律。 重新定义两个矩阵A[2x2]和B[2x3]:

如此之丑的矩阵
矩阵A是2行2列,矩阵B是2行3列,如果A+B,根据上面两个矩阵相加的计算法则,会发现矩阵B的第三列元素没有办法相加。所以结论是: 当两个矩阵相加的时候,这两个矩阵的维数(行列个数)必须是相同的,比如要么都是 2x2,要么都是3x3等等。 同样的如果是A+B+C三个或者更多的矩阵的相加计算方式也是一样的。

2.2. 矩阵的减法

矩阵的减法计算
上图可以看出,矩阵A-B的计算就是对应的每个元素的相减,而且有个规律是: 矩阵A-B = -(B-A),同矩阵加法一样,做减法的两个或者多个矩阵的维数(行列个数)必须是一样的,否则无法进行减法运算。

2.3. 矩阵的乘法

矩阵的乘法
有矩阵AB,两个矩阵相乘,A的a11(表示矩阵的第一行第一列元素)、a12 分别和B的第一列的两个元素相乘后相加,作为新的矩阵的a11元素值。

上图就很清楚的描述了,矩阵乘法的计算规则。

假设有两个矩阵CD,分别是C·DD·C,很明显计算出的结果不相同,所以通常情况下矩阵的乘法是不满足:乘法交换律的,即:C·DD·C

如上图,你会发现也不是任何两个矩阵都能够相乘,只有乘数矩阵A的列数和被乘矩阵B的行数相同的时候,两个矩阵才能相乘。

3. 单位矩阵

在介绍单位矩阵之前,说介绍什么是方阵,顾名思义,方阵就是方的,行数和列数一样的矩阵,比如:

像上图这样,行列一样的矩阵就是方阵,这很直观也很好理解。

单位矩阵,是一直特殊的方阵,它的所有元素由0和1组成,并且对角线的元素为1,其余元素为0,当然一阶的单位矩阵只含有一个元素1:I₁ = [1]。

以上四个方阵都是单位矩阵,分别是I₂二阶单位矩阵、I₃三阶单位矩阵、四阶和五阶的单位矩阵。单位矩阵的阶数可以无限扩大,比如n阶的单位矩阵:

单位矩阵有一个特殊重要的性质,I·A = AA·I = A,这里的矩阵A是一个和单位矩阵同个维数的方阵,不是方阵无法和单位矩阵相乘,这个性质很容易证明,举个例子就知道了:
反过来A·I 也等于A

4. 逆矩阵

如上图,如果一个矩阵可逆,那么就会有性质:A^-1·A=II是一个单位矩阵。逆矩阵的求法,如上图所示,逆矩阵 = 矩阵行列式的倒数值 * 矩阵A的伴随矩阵。当矩阵A的行列式如果等于0,即ad - bc = 0,或者 a/c = b/d,那么这个矩阵不存在逆矩阵(行列式的倒数1/|A|没有定义),我们也称这样的矩阵叫 “奇异矩阵”


(未完待续。。。。)


人工智能数学基础系列文章