【理解线性代数】(四)线性运算的推广与矩阵基础

这篇具有很好参考价值的文章主要介绍了【理解线性代数】(四)线性运算的推广与矩阵基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 批量化的发展趋势

工业生产的发展趋势总是从单件生产到批量生产。科学技术研究也是一样,总是从简单计算到复合运算、批量运算。批量意味着生产能力、处理能力的提升。计算机从16位发展到64位,从单核发展到多核;计算机从CPU处理数据发展到GPU处理数据;大数据、人工智能领域的大模型等一些前沿的信息技术的发展都体现了这一点。

前面我们讲了向量点乘,向量点乘向批量化发展,可以得到向量组点乘。

2. 向量组

向量加法和乘法,总是两两进行运算,这种运算比较简单。

现实应用中,往往需要对很多向量组成的向量集合进行批量运算。为了研究向量的批量运算,需要将一个向量集合视为一个整体,将向量按行排列,用括号括起来,我们称之为“向量组”。

例如下图是一个向量组,此向量组由 (a, b, c) 和 (d, e, f) 两个三维向量组成:
( a b c d e f ) \begin{pmatrix} a & b & c\\ d & e & f \end{pmatrix} (adbecf)

向量组的行数表示向量个数,向量组的列数表示向量的维度。目前向量仅仅表示多个向量的集合,没有其他任何含义,不需要想得太复杂。

下面将根据我们自己的理解,对向量组运算规则进行推导。

3. 向量组运算

3.1 向量组加法

向量组加法很简单,将向量组中对应位置的向量相加即可。向量组相加,两个相加的向量组包含的向量个数必须相等,否则对应行会因为缺少向量而无法进行。

可以正确进行的矩阵加法如下:
( a 1 b 1 c 1 d 1 e 1 f 1 ) + ( a 2 b 2 c 2 d 2 e 2 f 2 ) = ( a 1 + a 2 b 1 + b 2 c 1 + c 2 d 1 + d 2 e 1 + e 2 f 1 + f 2 ) \begin{pmatrix} a1 & b1 & c1\\ d1 & e1 & f1 \end{pmatrix} + \begin{pmatrix} a2 & b2 & c2\\ d2 & e2 & f2 \end{pmatrix} = \begin{pmatrix} a1+a2 & b1+b2 & c1+c2\\ d1+d2 & e1+e2 & f1+f2 \end{pmatrix} (a1d1b1e1c1f1)+(a2d2b2e2c2f2)=(a1+a2d1+d2b1+b2e1+e2c1+c2f1+f2)

无法进行的矩阵向量组加法如下:
( a 1 b 1 c 1 d 1 e 1 f 1 ) + ( a 2 b 2 c 2 ) = 非法 \begin{pmatrix} a1 & b1 & c1\\ d1 & e1 & f1 \end{pmatrix} + \begin{pmatrix} a2 & b2 & c2 \end{pmatrix} = 非法 (a1d1b1e1c1f1)+(a2b2c2)=非法

3.2 向量组乘法

3.2.1 1行3列向量组 * 1行3列向量组

设向量组A:
A = ( a 1 b 1 c 1 ) A= \begin{pmatrix} a1 & b1 & c1 \end{pmatrix} A=(a1b1c1)

和向量组B
B = ( a 2 b 2 c 2 ) B= \begin{pmatrix} a2 & b2 & c2 \end{pmatrix} B=(a2b2c2)

进行乘法运算,因为每个向量组都只有一个向量,可以尝试将这两个向量进行点乘运算,即:
A ∗ B = a 1 a 2 + b 1 b 2 + c 1 c 2 = ( a 1 a 2 + b 1 b 2 + c 1 c 2 ) A * B = a1a2 + b1b2 + c1c2 = (a1a2 + b1b2 + c1c2) AB=a1a2+b1b2+c1c2=(a1a2+b1b2+c1c2)

结果是一个一维向量。

分析:
向量组A包含1个三维向量,向量组B包含1个三维向量,向量组B可以代表三维空间中的一个一维子空间,所以A中的所有向量投影到B,投影后的向量为一维空间中的一维向量。

3.2.2 2行3列向量组 * 1行3列向量组

增加向量组A的行数,设向量组A:
A = ( a 1 b 1 c 1 d 1 e 1 f 1 ) A= \begin{pmatrix} a1 & b1 & c1 \\ d1 & e1 & f1 \end{pmatrix} A=(a1d1b1e1c1f1)

和向量组B
B = ( a 2 b 2 c 2 ) B= \begin{pmatrix} a2 & b2 & c2 \end{pmatrix} B=(a2b2c2)

进行乘法运算,将A中每个向量分别与B中的每个向量进行点乘运算,结果为:
A ∗ B = ( a 1 a 2 + b 1 b 2 + c 1 c 2 d 1 a 2 + b 1 b 2 + c 1 c 2 ) A * B = \begin{pmatrix} a1a2 + b1b2 + c1c2 \\ d1a2 + b1b2 + c1c2 \end{pmatrix} AB=(a1a2+b1b2+c1c2d1a2+b1b2+c1c2)

结果是一个2行1列的向量组。

分析:
向量组A包含2个三维向量,向量组B包含1个三维向量,向量组B可以代表三维空间中的一个一维空间,所以A中的所有向量投影到B,最终的结果变成了2个一维向量,符合我们对向量点乘的理解。

3.2.3 2行3列矩阵 * 2行3列矩阵

设向量组A:
A = ( a 1 b 1 c 1 d 1 e 1 f 1 ) A= \begin{pmatrix} a1 & b1 & c1 \\ d1 & e1 & f1 \end{pmatrix} A=(a1d1b1e1c1f1)

和向量组B
B = ( a 2 b 2 c 2 d 2 e 2 f 2 ) B= \begin{pmatrix} a2 & b2 & c2 \\ d2 & e2 & f2 \end{pmatrix} B=(a2d2b2e2c2f2)

进行乘法运算,将A中每个向量分别与B中的每个向量进行点乘运算,结果为:
A ∗ B = ( a 1 a 2 + b 1 b 2 + c 1 c 2 a 1 d 2 + b 1 e 2 + c 1 f 2 d 1 a 2 + e 1 b 2 + f 1 c 2 d 1 d 2 + e 1 e 2 + f 1 f 2 ) A * B = \begin{pmatrix} a1a2 + b1b2 + c1c2 & a1d2+b1e2+c1f2\\ d1a2 + e1b2 + f1c2 & d1d2+e1e2+f1f2 \end{pmatrix} AB=(a1a2+b1b2+c1c2d1a2+e1b2+f1c2a1d2+b1e2+c1f2d1d2+e1e2+f1f2)

结果是一个2行2列的向量组。

分析:
向量组A包含2个二维向量,向量组B包含2个三维向量,向量组B可以代表三维空间中的一个二维平面空间(两条线组成一个面),向量组B中的两个向量,分别成为了二维空间中的坐两个标轴,这两个坐标轴不一定垂直。所以,A中的所有向量投影到B,最终的结果变成了2个二维向量,符合我们对向量点乘的理解。

这个向量组乘法稍微有些复杂,但相乘过程中有一个量没变,那就是向量组A中向量的个数等于投影结果向量组中向量的个数,即向量组A的行数等于投影结果向量组的行数。投影前后维度可能会变化,但是向量个数始终是不变的,因为投影各投各的,互不干扰。

在行数相等不变的情况下,只能将向量点乘的结果按列依次向后摆放,最终,结果向量组的列数,和向量组B的行数一定相同,读者可以自己演算一遍,加深理解。

3.2.4 向量组不能相乘的情况

如果两个向量组列数不同,也就是维度不同,还能相乘吗?

不能,因为向量点乘要求两个向量具有相同的维度。如果两个向量组列数不同,向量组中的向量互相无法点乘。不同维度的向量,坐标个数不一样,无法做乘法。

所以,两个向量组相乘,必须乘号两边的向量组有相同的维度。

3.2.5 推广


A ∗ B = C A * B = C AB=C
为例。

只要向量组A和向量组B的列数相同,不管向量组A、向量组B各自有多少行,都可以进行相乘。并且有:

  • 结果向量组C包含的向量个数和A中的向量个数相同,投影过程是一个线性变换,向量个数不会增加也不会减少,故投影前后向量个数不变。
  • 结果向量组C的向量维度和矩阵B的维度相同,因为向量组C包含的向量,是向量组A向向量组B的投影,所以它们全部位于向量组B所代表的空间中,所以C和B的维度必然相同。
3.2.6 验证复杂向量组相乘:2行3列向量组 * 3行3列向量组

设向量组A:
A = ( a 1 b 1 c 1 d 1 e 1 f 1 ) A= \begin{pmatrix} a1 & b1 & c1 \\ d1 & e1 & f1 \end{pmatrix} A=(a1d1b1e1c1f1)

和向量组B
B = ( a 2 b 2 c 2 d 2 e 2 f 2 g 2 h 2 i 2 ) B= \begin{pmatrix} a2 & b2 & c2 \\ d2 & e2 & f2 \\ g2 & h2 & i2 \end{pmatrix} B= a2d2g2b2e2h2c2f2i2

进行乘法运算,结果为:
A ∗ B = ( a 1 a 2 + b 1 b 2 + c 1 c 2 a 1 d 2 + b 1 e 2 + c 1 f 2 a 1 g 2 + b 1 h 2 + c 1 i 2 d 1 a 2 + e 1 b 2 + f 1 c 2 d 1 d 2 + e 1 e 2 + f 1 f 2 d 1 g 2 + e 1 h 2 + f 1 i 2 ) A * B = \begin{pmatrix} a1a2 + b1b2 + c1c2 & a1d2+b1e2+c1f2 & a1g2+b1h2+c1i2\\ d1a2 + e1b2 + f1c2 & d1d2+e1e2+f1f2 & d1g2+e1h2+f1i2 \end{pmatrix} AB=(a1a2+b1b2+c1c2d1a2+e1b2+f1c2a1d2+b1e2+c1f2d1d2+e1e2+f1f2a1g2+b1h2+c1i2d1g2+e1h2+f1i2)

结果是一个2行3列的向量组。

分析:
向量组A包含2个三维向量,向量组B包含3个三维向量,向量组B可以代表三维空间中的一个三维立体子空间,所以A中的所有向量投影到B,最终的结果变成了2个三维向量,符合我们对向量组点乘的理解。

4. 矩阵与矩阵乘法

4.1 什么是矩阵

矩阵由向量组发展而来,它在向量组的基础上,增加了新的规则,但是本质上二者几乎是一样的。

4.2 矩阵乘法

理解了向量组乘法,理解矩阵乘法就非常简单了。
以两个2行3列向量组A,B点乘为例
A ∗ B = C A * B = C AB=C
为例。

我们知道,向量组A点乘向量组B,是A中的每个行代表的向量和B中的每个行代表的向量点乘。

若将A,B视为矩阵,做矩阵乘法,但此时矩阵乘法无法进行。因为矩阵乘法规则为:乘号左边矩阵的列数必须和乘号右边矩阵的行数相等。必须将矩阵B的第一行写为第一列,第二行写为第二列…依此类推。这种将矩阵行写成列的操作叫做矩阵转置。此时,矩阵乘法变为A与B的转置矩阵相乘,相乘过程为:“将A中的每一个行所代表的向量与B中的每一列所代表的向量点乘”。

显而易见,先将矩阵转置,再将A中的每一个行所代表的向量与B中的每一列所代表的向量点乘,和直接将A中的每个行代表的向量和B中的每个行代表的向量点乘,逻辑上是完全等价的,正因如此,矩阵相乘和向量组相乘结果是完全一样的。

既然矩阵相乘和向量组相乘结果是一样的,那么矩阵相乘的规则是不是多此一举,把简单的问题复杂化了?可能是也可能不是,随着我们的深入探究,这个问题一定会被解决。

由于矩阵从向量组发展而来,从几何意义上说,我们完全可以认为矩阵相乘是向量投影。

4.3 特别矩阵乘法

如果矩阵B为三行三列的单位矩阵(单位矩阵用E表示),即
B = E = ( 1 0 0 0 1 0 0 0 1 ) B = E = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix} B=E= 100010001

任意一个m行3列的矩阵A,乘以矩阵B,都等于矩阵A本身,即
A ∗ B = A ∗ E = A A * B = A * E = A AB=AE=A

这个大家可以自己尝试演算一下。我们这里不做演算,我们这里仅做理论分析:

B矩阵为单位矩阵时,B矩阵所代表的空间,和当前的整个三维空间完全重合。矩阵A乘矩阵B,就是将矩阵A投影到原空间,而且B中每个向量的长度为1,不会改变投影后向量的长度,则投影结果必然也和A重合,也就是说结果矩阵等于A。通过分析,我们可以很容易地理解,为什么一个矩阵乘以单位矩阵,结果是它本身。


下一篇:《矩阵乘法与仿射变换》文章来源地址https://www.toymoban.com/news/detail-698829.html

到了这里,关于【理解线性代数】(四)线性运算的推广与矩阵基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 线性代数(二) 矩阵及其运算

    行列式det(A) 其实表示的只是一个值 ∣ a b c d ∣ = a d − b c begin{vmatrix} a b\\\\ c dend{vmatrix} = ad -bc ​ a c ​ b d ​ ​ = a d − b c ,其基本变化是基于这个值是不变。而矩阵表示的是一个数表。 矩阵与线性变换的关系 即得 ( a 11 a 12 . . . a 1 n a 21 a 22 . . . a 2 n . . . . . . . . . . . . . a

    2024年02月14日
    浏览(45)
  • 0205矩阵分块法-矩阵及其运算-线性代数

    1 分块矩阵的定义 将矩阵A用若干条纵线和横线分成许多个小矩阵,每一个小矩阵称为A的子快,以子块为元素的形式上的矩阵称为分块矩阵。 2 分块矩阵的运算(性质) 设矩阵A与B的行数相同,列数相同,采用相同的分块法,有 A = ( A 11 ⋯ A 1 r ⋮ ⋮ A s 1 ⋯ A s r ) , B = ( B 11 ⋯

    2024年04月26日
    浏览(37)
  • 线性代数|分块矩阵的运算规则

    定理 1 设矩阵 A boldsymbol{A} A 与 B boldsymbol{B} B 的行数相同、列数相同,采用相同的分块法,有 A = ( A 11 ⋯ A 1 r ⋮ ⋮ A s 1 ⋯ A s r ) , B = ( B 11 ⋯ B 1 r ⋮ ⋮ B s 1 ⋯ B s r ) boldsymbol{A} = begin{pmatrix} boldsymbol{A}_{11} cdots boldsymbol{A}_{1r} \\\\ vdots vdots \\\\ boldsymbol{A}_{s1} cdots boldsymbol{

    2024年02月07日
    浏览(45)
  • 线性代数第二章矩阵及其运算详解

    一.线性方程组和矩阵 1.概念 如图所示,该矩阵称为 m行n列矩阵 若行数和列数都等于n,则该矩阵称为 n阶方阵 两个矩阵的行数相等,列数也相等,就称它们为 同型矩阵 若A=(aij)和B=(bij)是同型矩阵,且aij=bij(i=1,2,...,m;j=1,2,...,n),则称 矩阵A与矩阵B相等 ,记作 A=B 2.特殊

    2024年01月25日
    浏览(48)
  • 线性代数:矩阵运算(加减、数乘、乘法、幂、除、转置)

    目录 加减 数乘  矩阵与矩阵相乘  矩阵的幂 矩阵转置  方阵的行列式  方阵的行列式,证明:|AB| = |A| |B|        

    2024年01月22日
    浏览(50)
  • 矩阵运算之外积:解决线性代数问题的关键技巧

    线性代数是数学的一个分支,主要研究的是线性方程组和矩阵。线性方程组是指每个变量的方程都是线性的方程组,矩阵是一种数学结构,可以用来表示和解决线性方程组。在现实生活中,线性方程组和矩阵广泛应用于各个领域,如物理学、生物学、经济学、计算机科学等。

    2024年02月21日
    浏览(39)
  • 【线性代数】从矩阵分块的角度理解矩阵乘法

    概念: 例: 1. 分块矩阵计算的数学步骤 使用Numpy计算例1 按列分块 按行分块 分块后的计算公式 矩阵分块法提供了行数和列数较多的矩阵相乘的一种计算方法,以此来简化矩阵相乘的运算次数; 按行列分块将矩阵A分为n个列向量和m个行向量,利用矩阵乘法的定义,殊途同归

    2024年02月13日
    浏览(59)
  • 线性代数中涉及到的matlab命令-第二章:矩阵及其运算

    目录 1,矩阵定义 2,矩阵的运算 3,方阵的行列式和伴随矩阵  4,矩阵的逆  5,克莱默法则  6,矩阵分块  矩阵与行列式的区别: (1)形式上行列式是数表加两个竖线,矩阵是数表加大括号或中括号; (2)行列式可计算得到一个值,矩阵不能; (3)两个行列式相加与两

    2024年02月08日
    浏览(48)
  • 【课后习题】 线性代数第六版第二章 矩阵及其运算 习题二

    习题二 1. 计算下列乘积: (1) ( 4 3 1 1 − 2 3 5 7 0 ) ( 7 2 1 ) left(begin{array}{rrr}4 3 1 \\\\ 1 -2 3 \\\\ 5 7 0end{array}right)left(begin{array}{l}7 \\\\ 2 \\\\ 1end{array}right) ⎝ ⎛ ​ 4 1 5 ​ 3 − 2 7 ​ 1 3 0 ​ ⎠ ⎞ ​ ⎝ ⎛ ​ 7 2 1 ​ ⎠ ⎞ ​ ; (2) ( 1 , 2 , 3 ) ( 3 2 1 ) (1,2,3)left(begin{array}{l}3 \\\\ 2 \\\\ 1end{ar

    2024年02月05日
    浏览(42)
  • 第一百二十一天学习记录:线性代数:矩阵乘法运算(宋浩板书)

    在编程和学习数据结构的过程中,发现有些算法会用到矩阵和矩阵的乘法运算,因此先将这一个知识点学习一下。 乘法☆ 总结三条不满足

    2024年02月13日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包