【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(10):向量组及其线性组合

1,055 阅读6分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

前言

Hello!小伙伴!

非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~

 

自我介绍 ଘ(੭ˊᵕˋ)੭

昵称:海轰

标签:程序猿|C++选手|学生

简介:因C语言结识编程,随后转入计算机专业,有幸拿过一些国奖、省奖...已保研。目前正在学习C++/Linux/Python

学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!

 

机器学习小白阶段

文章仅作为自己的学习笔记 用于知识体系建立以及复习

知其然 知其所以然!

若查看数学公式不全或显示错误

可以查看:MML学习笔记(十):线性代数之向量组及其线性组合

4.1 向量组及其线性组合

定义1

1. n维向量

定义:n个有次序的数a1,a2,....,ana_1,a_2,....,a_n所组成的数组,其中这n个数成为该向量的n个分量,第i个数aia_{i}称为第i个分量

2. 实向量

定义:向量中的所有的分量均为实数

3. 复向量

定义:向量中至少有一个分量为复数

4. n维列向量a

a=[a1a2...an]a =\begin{bmatrix} a_1\\ a_2\\ .\\ .\\ .\\ a_n \end{bmatrix}

5. n维行向量b

b=(b1,b2,...,bn)b = (b_1,b_2,...,b_n)

一般来说,列向量用黑体小写字母αβ\alpha 、\beta等表示,行向量用αTβT\alpha^{T}、\beta^{T}等表示 无特殊说明时,一般看作为列向量

6. 三维向量空间

定义:三维向量的全体所组成的集合

R3={r=(x,y,z)Tx,y,zR}\mathbb{R}^3 = \{r = (x, y, z)^T | x, y, z \in \mathbb{R} \}

称为三维向量空间

在讨论向量的运算时,将向量看作有向线段

在讨论向量集合时,则把向量r看作以r为向径的点P,从而把点P的轨迹作为向量集的图形

向径:一般指位置矢量。在某一时刻,以坐标原点为起点,以运动质点所在位置为终点的有向线段

例如点集 Π={P(x,y,z)ax+by+cz=d\Pi = \{ P(x, y, z) | ax + by + cz = d是一个平面(a、b、c不全为0)

假设a = b = c = 1 d = 0 则为 x + y + z = 0 稍微变形一下 z = - x - y 这样就容易看出其是一个平面了

于是向量集 {r=(x,y,z)Tax+by+cz=d}\{ r = (x, y, z)^T | ax + by + cz = d \}

也叫做向量空间R3\mathbb{R}^3中的平面,并把Π\Pi作为它的图形

7. n维向量空间

n维向量的全部所组成的集合

Rn={x=(x1,x2,....,xn)Tx1,x2,...,xnR}\mathbb{R}^n = \{ x = (x_1, x_2,...., x_n)^T | x_1,x_2,...,x_n \in \mathbb{R} \}

其中n维向量的集合{x=(x1,x2,...,xn)Ta1x1+a2x2+....+anxn=b\{ x = (x_1,x_2,...,x_n)^T | a_1x_1 + a_2x_2 +.... + a_nx_n = b叫做n维向量空间Rn中的n1维超平面\mathbb{R}^n中的n - 1维超平面

8. 向量组

定义:若干个同维数的列向量(或同维数的行向量)所组成的集合

一个 m * n 矩阵的全体列向量 是一个含有 n个 m维列向量的向量组 全体行向量是一个含 m个 n维行向量的向量组

矩阵的列向量组和行向量组都是只含 有限个向量 的向量组;反之,一个含有限个向量组总可以构成一个矩阵

比如,m个n维列向量所组成的向量组A:a1,a2,...,am(ai,i[1,m]表示一个n维列向量)A:a_1,a_2,...,a_m(a_i,i \in [1,m] 表示一个n维列向量)可以构成一个n * m 矩阵 A=(a1,a2,...,am)A = (a_1,a_2,...,a_m)

m个n维行向量所组成的向量B:β1T,β2T,...,βmTB: \beta_1^T, \beta_2^T,...,\beta_m^T构成一个m * n 矩阵

B=(β1Tβ2T...βmT)B = \begin{pmatrix} \beta_1^T\\ \beta_2^T \\ .\\ .\\ .\\ \beta_m^T \\ \end{pmatrix}

βi\beta_i为列向量

总之,含有有限个向量的有序向量组可以与矩阵一一对应

定义2

(1)给定向量组A:a1,a2,...,amA:a_1,a_2,...,a_m,对于任何一组实数k1,k2,...,kmk_1,k_2,...,k_m,表达式k1a1+k2a2+...+kmamk_1a_1 + k_2a_2 + ... + k_m a_m称为向量组A的一个线性组合,k1,k2....,kmk_1,k_2 .... , k_m称为这个线性组合的系数

(2)给定向量组A:a1,a2,...,amA:a_1,a_2,...,a_m和向量b,如果存在一组数λ1,λ2,...,λm\lambda_1,\lambda_2,...,\lambda_m,使得b=λ1a1+λ2a2+....+λmamb = \lambda_1a_1 + \lambda_2a_2 + .... + \lambda_ma_m

(3)则向量b是向量组A的线性表示,也就是说方程组x1a1+x2a2+...+xmam=bx_1a_1 + x_2a_2 + ... + x_ma_m = b有解

定理1

向量bb能由向量A:a1,a2,...,amA:a_1,a_2,...,a_m线性表示的充分必要条件是矩阵A=(a1,a2,...,am)A=(a_1,a_2,...,a_m)的秩等于矩阵B=(a1,a2,...am,b)B = (a_1,a_2,...a_m,b)的秩

其实就是方程组x1a1+x2a2+...+xmam=bx_1a_1 + x_2a_2 + ... + x_ma_m = b有解 因为线性方程组Ax=bAx=b有解,充分必要条件是R(A)=R(A,b)R(A)=R(A,b)(上一章的定理5)

定义3

设有两个向量组A:a1,a2,...,amA:a_1,a_2,...,a_mB:b1,b2,....,blB:b_1,b_2,....,b_l,若B组中的每个向量都能由向量组A线性表示,则称向量组B能由向量组A线性表示。

若向量组A与向量组B互相线性表示,则称这两个向量组等价

设向量组A=(a1,a2,...,am)A = (a_1,a_2,...,a_m),向量组B=(b1,b2,...,bl)B=(b_1,b_2,...,b_l)

BB能由AA线性表示 那么对每个向量bj(j=1,2,...,l)b_j(j = 1,2,...,l)

存在数k1j,k2j,...,kmjk_{1j},k_{2j},...,k_{mj},使得

bj=k1ja1+k2ja2+...+kmjam=(a1,a2,...,am)(k1jk2j...kmj)b_j = k_{1j}a_1 + k_{2j}a_2 + ... + k_{mj}a_m = (a_1,a_2,...,a_m)\begin{pmatrix} k_{1j}\\ k_{2j}\\ .\\ .\\ .\\ k_{mj} \end{pmatrix}

从而得到

(b1,b2,....,bl)=(a1,a2,...,am)(k11k12...k1lk21k22...k2l.........km1km2...kml)(b_1,b_2,....,b_l) = (a_1,a_2,...,a_m)\begin{pmatrix} k_{11} & k_{12} & ... & k_{1l}\\ k_{21} & k_{22} & ... & k_{2l}\\ . & . & & .\\ . & . & & .\\ . & . & & .\\ k_{m1} & k_{m2} & ... & k_{ml}\\ \end{pmatrix}

进而 B=AKB = AK 其中矩阵Kml=(kij)K_{m * l} = (k_{ij})则称为这一线性表示的系数矩阵

上面向量组A、B都是使用列向量组进行组合的,现在来讨论为行向量组来组成A、B

A=(a1Ta2T...amT)B=(b1Tb2T...blT)A=\begin{pmatrix} a_1^T\\ a_2^T\\ .\\ .\\ .\\ a_m^T \end{pmatrix} \quad B =\begin{pmatrix} b_1^T\\ b_2^T\\ .\\ .\\ .\\ b_l^T \end{pmatrix}

因为B中的任意一条向量都可以用AA线性表示

那么有

bjT=kj1a1T+kj2a2T+...+kjmamT=(kj1,kj2,...,kjm)(a1Ta2T...amT)(j[1,l])b_j^T = k_{j1}a_1^T + k_{j2}a_2^T + ... + k_{jm}a_m^T =(k_{j1},k_{j2},...,k_{jm})\begin{pmatrix} a_1^T\\ a_2^T\\ .\\ .\\ .\\ a_m^T \end{pmatrix} (j \in [1,l])

进而得到

(b1Tb2T...blT)=(k11k12...k1mk21k22...k2m.........kl1kl2...klm)(a1Ta2T...amT)\begin{pmatrix} b_1^T\\ b_2^T\\ .\\ .\\ .\\ b_l^T \end{pmatrix} =\begin{pmatrix} k_{11} & k_{12} & ... & k_{1m}\\ k_{21} & k_{22} & ... & k_{2m}\\ . & . & & .\\ . & . & & .\\ . & . & & .\\ k_{l1} & k_{l2} & ... & k_{lm}\\ \end{pmatrix} \begin{pmatrix} a_1^T\\ a_2^T\\ .\\ .\\ .\\ a_m^T \end{pmatrix}

推出 B=KAB = K A

由以上可知,若Cmn=AmlBlnC_{m * n} = A_{m * l} B_{l * n},则矩阵C的列向量组都能由矩阵A的列向量组线性表示,B则为这一表示的系数矩阵

CC对应上式中的BBAA对应AA,那么BB就对应KB=AKK(B = AK)

(c1,c2,...,cn)=(a1,a2,...,al)(b11b12....b1nb21b22....b2n.........bl1bl2....bln)(c_1,c_2,...,c_n) = (a_1,a_2,...,a_l)\begin{pmatrix} b_{11} & b_{12} & .... & b_{1n} \\ b_{21} & b_{22} & .... & b_{2n} \\ . & . & & .\\ . & . & & .\\ . & . & & .\\ b_{l1} & b_{l2} & .... & b_{ln} \\ \end{pmatrix}

同时,若C的行向量组都可以由B的行向量组线性表示,那么A就为这一表示的系数矩阵

利用B=KAB = KA 对应这里的 C=ABC=AB 得到 A就是系数矩阵

定理2

向量组B:b1,b2,...,blB:b_1,b_2,...,b_l能由向量组A:a1,a2,...,amA:a_1,a_2,...,a_m线性表示的充分必要条件是矩阵A=(a1,a2,...,am)A= (a_1,a_2,...,a_m)的秩等于矩阵(A,B)=(a1,...,am,b1,...,bl)(A,B) = (a_1,...,a_m,b_1,...,b_l)的秩,即R(A)=R(A,B)R(A) = R(A, B)

说明

因为BB可以由AA进行线性表示

那么就存在一个系数矩阵KK,使得B=AKB = AK

也就可以说

AX=BAX = B 至少存在一个解

又因为

线性方程组Ax=bAx=b有解的充分必要条件是R(A)=R(A,b)R(A)=R(A,b)

所以 R(A)=R(A,B)R(A) = R(A, B)

推论

向量组A:a1,a2,...,amA:a_1,a_2,...,a_m与向量组 B:b1,b2,...,blB:b_1,b_2,...,b_l等价的充分必要条件是 R(A)=R(B)=R(A,B)R(A) = R(B) = R(A, B)

其中,A和B是向量组A和B所构成的矩阵

证明

因为BB可以由AA进行线性表示,那么由定理2可以得

R(A)=R(A,B)R(A) = R(A, B)

同理,AA也可以由BB进行线性表示,那么一样有

R(B)=R(B,A)R(B) = R(B, A)

又因为

R(A,B)=R(B,A)R(A, B) = R(B, A)

得到

R(A)=R(B)=R(A,B)=R(B,A)R(A) = R(B) = R(A, B) = R(B, A)

证明完成!

举例

例 1

a1=[1122],a2=[1212],a3=[1140],b=[1031]a_1=\begin{bmatrix} 1\\ 1\\ 2\\ 2 \end{bmatrix},a_2=\begin{bmatrix} 1\\ 2\\ 1\\ 2 \end{bmatrix},a_3=\begin{bmatrix} 1\\ -1\\ 4\\ 0 \end{bmatrix},b=\begin{bmatrix} 1\\ 0\\ 3\\ 1 \end{bmatrix}

证明向量bb能由向量组a1,a2,a3a_1,a_2,a_3线性表示,并求出表达式

证明:

A=(a1,a2,a3)B=(A,b)A=(a_1,a_2,a_3),B=(A,b)

由定理1可知 向量b若能由向量组a1,a2,a3a_1,a_2,a_3线性表示

R(A)=R(A,b)=R(B)R(A)=R(A,b)=R(B)

这里我们只需要对BB进行化简,求秩(求R(B)R(B)的同时,R(A)R(A)也就一目了然了)

在这里插入图片描述

(1032012100000000)\begin{pmatrix} 1 & 0 & 3 & 2\\ 0 & 1 & -2 & -1\\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ \end{pmatrix}

可得

{x1+3x3=2x22x3=1\begin{cases} x_1 + 3x_3 = 2\\ x_2 - 2x_3 =-1 \end{cases}

移项,得

{x1=3x3+2x2=2x31\begin{cases} x_1 = -3x_3 + 2\\ x_2 = 2x_3 -1 \end{cases}

x3=cx_3 = c

{x1=3c+2x2=2c1x3=c\begin{cases} x_1 = -3c + 2\\ x_2 = 2c -1\\ x_3 = c \end{cases}

推出

x=c(321)+(210)=(3c+22c1c)x = c\begin{pmatrix} -3\\ 2\\ 1 \end{pmatrix} + \begin{pmatrix} 2\\ -1\\ 0 \end{pmatrix} = \begin{pmatrix} -3c + 2\\ 2c - 1\\ c \end{pmatrix}

注:x=(x1x2x3)x = \begin{pmatrix} x_1\\ x_2\\ x_3 \end{pmatrix}

所以

b=(a1,a2,a3)x=(3c+2)a1+(2c1)a2+ca3b = (a_1,a_2,a_3)x = (-3c + 2)a_1 + (2c - 1)a_2 + ca_3,其中c可以取任何值

例2

a1=[1111],a2=[3113],b1=[2011],b2=[1102],b3=[3120]a_1=\begin{bmatrix} 1\\ -1\\ 1\\ -1 \end{bmatrix},a_2=\begin{bmatrix} 3\\ 1\\ 1\\ 3 \end{bmatrix},b_1=\begin{bmatrix} 2\\ 0\\ 1\\ 1 \end{bmatrix},b_2=\begin{bmatrix} 1\\ 1\\ 0\\ 2 \end{bmatrix}, b_3=\begin{bmatrix} 3\\ -1\\ 2\\ 0 \end{bmatrix}

证明向量组a1,a2a_1,a_2与向量组b1,b2,b3b_1,b_2,b_3等价

证明:

A=(a1,a2),B=(b1,b2,b3)A=(a_1,a_2),B=(b_1,b_2,b_3)

定理2的推论 可知 AABB等价

说明

R(A)=R(B)=R(A,B)R(A)=R(B)=R(A,B)

(A,B)(A,B)进行化简

在这里插入图片描述 得到

R(A)=R(A,B)=2R(A)=R(A,B)=2

又可以明显的看出来BB中有不等于0的2阶子式

说明

R(B)2R(B) \geq 2

又因为

R(B)R(A,B)=2R(B) \leq R(A,B)=2

所以有

2R(B)22 \leq R(B) \leq 2

推出

R(B)=2R(B)=2

综上

R(A)=R(B)=R(A,B)R(A)=R(B)=R(A,B)

所以AABB等价

定理3

设向量组B=b1,b2,...,blB = b_1, b_2,..., b_l 能由向量组A:a1,a2,...,amA:a_1,a_2,...,a_m线性表示,则R(b1,b2,...,bl)R(a1,a2,...,an)R(b_1,b_2,...,b_l) \leq R(a_1,a_2,...,a_n)

证明:

A=(a1,a2,...,am)A=(a_1,a_2,...,a_m)B=(b1,b2,...,bl)B=(b_1,b_2,...,b_l)

因为BB可以由AA线性表示

那么就有

R(A)=R(A,B)(由定理2得来)R(A) = R(A, B)(由定理2得来)

又因为 R(B)<=R(A,B)R(B) <= R(A,B)

所以

R(B)<=R(A)R(B) <= R(A)

小结

由上面的定律、推论可得

向量组B:b1,b2,...,blB:b_1,b_2,...,b_l能由向量组A:a1,a2,...,amA:a_1,a_2,...,a_m线性表示\Leftrightarrow有矩阵KK,使得B=AKB=AK\Leftrightarrow方程AK=BAK=B有解

结语

文章仅作为学习笔记,记录从0到1的一个过程

希望对您有所帮助,如有错误欢迎小伙伴指正~

我是 海轰ଘ(੭ˊᵕˋ)੭

如果您觉得写得可以的话,请点个赞吧

谢谢支持 ❤️

在这里插入图片描述