数学基础 --线性代数之理解矩阵乘法

news/2025/1/21 10:28:21/

理解矩阵乘法的解析

矩阵乘法(Matrix Multiplication)是线性代数中的核心操作之一。在数学、几何和工程实际中,它不仅是一种代数运算规则,还承载着丰富的几何和映射意义。本文将从多个角度深入解析矩阵乘法,帮助读者理解其本质及应用。


矩阵乘法的基础运算规则

1.1 行×列的点积

设矩阵 A A A m × n m \times n m×n 维度,矩阵 B B B n × p n \times p n×p 维度,则它们的乘积 C = A × B C = A \times B C=A×B 是一个 m × p m \times p m×p 的矩阵。

  • C C C 中的第 i i i 行第 j j j 列元素 c i j c_{ij} cij 的计算公式为:
    c i j = ∑ k = 1 n a i k b k j c_{ij} = \sum_{k=1}^n a_{ik}\, b_{kj} cij=k=1naikbkj
    A A A 的第 i i i 行向量与 B B B 的第 j j j 列向量做点积

1.2 示例计算


A = ( 1 2 3 4 5 6 ) , B = ( − 1 2 0 1 2 1 ) . A = \begin{pmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \end{pmatrix}, \quad B = \begin{pmatrix} -1 & 2 \\ 0 & 1 \\ 2 & 1 \end{pmatrix}. A=(142536),B=102211.

  • A A A 的大小是 2 × 3 2 \times 3 2×3
  • B B B 的大小是 3 × 2 3 \times 2 3×2

乘积 C = A × B C = A \times B C=A×B 将是一个 2 × 2 2 \times 2 2×2 的矩阵。

计算 C C C 的第 ( 1 , 1 ) (1,1) (1,1) 元素 c 11 c_{11} c11
c 11 = ( 1 , 2 , 3 ) ⋅ ( − 1 , 0 , 2 ) = 1 × ( − 1 ) + 2 × 0 + 3 × 2 = − 1 + 0 + 6 = 5. c_{11} = (1,2,3) \cdot (-1,0,2) = 1 \times (-1) + 2 \times 0 + 3 \times 2 = -1 + 0 + 6 = 5. c11=(1,2,3)(1,0,2)=1×(1)+2×0+3×2=1+0+6=5.

类似地可以算出其余元素,最终得到:
C = ( 5 9 8 18 ) . C = \begin{pmatrix} 5 & 9 \\ 8 & 18 \end{pmatrix}. C=(58918).


几何视角:线性变换的复合

矩阵乘法可以理解为线性变换的组合

2.1 线性变换的定义

  • 矩阵 A A A 对一个列向量 x x x 的乘积 A x A x Ax,可以视为对向量 x x x 的某种线性变换,比如拉伸、旋转、剪切等。
  • 如果有另一个矩阵 B B B 对向量做线性变换,则先用 A A A,再用 B B B 的过程可以表示为 B ( A x ) B(Ax) B(Ax)
  • 这个组合变换可以用一个矩阵 C = B A C = B A C=BA 表示。

2.2 矩阵乘法与变换级联

因此,两个矩阵相乘实际上是两个线性变换的复合:
B × A ↔ T B ∘ T A , B \times A \quad \leftrightarrow \quad T_B \circ T_A, B×ATBTA,
其中「 ∘ \circ 」表示函数的组合:先执行 T A T_A TA,再执行 T B T_B TB

矩阵乘积的顺序反映了变换的执行顺序,这也是矩阵乘法不满足交换律的原因之一(即通常 A B ≠ B A AB \neq BA AB=BA)。


从行和列的视角理解

3.1 行向量视角

矩阵乘法的结果的某一行,可以看作前一个矩阵的那一行选取并线性组合另一个矩阵的对应列。

例如:
C = A × B , C = A \times B, C=A×B,
C C C 的第 i i i 行等于:
(第  i 行的  A ) × B . \text{(第 }i\text{ 行的 }A) \times B. ( i 行的 A)×B.

假设「第 i i i 行的 A A A」是向量 ( a i 1 , a i 2 , … , a i n ) (a_{i1}, a_{i2}, \dots, a_{in}) (ai1,ai2,,ain),它会将 B B B 的第 1 行加权 a i 1 a_{i1} ai1、第 2 行加权 a i 2 a_{i2} ai2、…、第 n n n 行加权 a i n a_{in} ain 后相加。

3.2 列向量视角

矩阵 B B B 可以被看作由其列向量 b 1 , b 2 , … , b p b_1, b_2, \dots, b_p b1,b2,,bp 构成。

  • 矩阵乘法 A B AB AB 的结果,可以理解为 A A A B B B 的每一个列向量进行线性变换后,将这些新向量拼成结果矩阵。
  • 即:
    A B = [ A b 1 A b 2 … A b p ] . AB = \bigl[A b_1 \quad A b_2 \quad \dots \quad A b_p\bigr]. AB=[Ab1Ab2Abp].

矩阵乘法的多重意义

4.1 几何意义:线性映射

矩阵乘法对应两个线性映射的复合操作,体现了几何变换的顺序性。

4.2 应用意义

矩阵乘法广泛应用于:

  1. 神经网络
    • 在深度学习的全连接层中,矩阵乘法用于线性组合输入特征,生成下一层的输出。
  2. 图像变换
    • 矩阵用于表示旋转、缩放、平移等操作,多个变换叠加可通过矩阵乘法实现。
  3. 马尔可夫链
    • 状态转移矩阵的多步转移可以通过矩阵幂次乘法实现。

矩阵乘法的定义为何是「行×列」?

矩阵乘法定义为「行向量与列向量的点积」,是为了满足以下性质:

  1. 复合线性变换的一一对应:矩阵乘法能表示线性映射的复合。
  2. 分配率与结合律:保证代数操作的完整性。
  3. 与向量运算兼容:保证行×列运算能与向量操作自然衔接。

总结

  • 运算层面:矩阵乘法是通过「行向量」与「列向量」的点积计算得到的。
  • 几何层面:它对应了线性变换的复合。
  • 行和列的视角:从行角度看是线性组合,从列角度看是逐列映射。
  • 应用层面:广泛应用于神经网络、图像处理、状态转移等领域。

一句话概括:

矩阵乘法既是一种代数运算规则,也是线性变换复合的几何抽象,连接了数值计算与线性代数的核心思想。


http://www.ppmy.cn/news/1564921.html

相关文章

ros2-7.5 做一个自动巡检机器人

7.5.1 需求及设计 又到了小鱼老师带着做最佳实践项目了。需求:做一个在各个房间不断巡逻并记录图像的机器人。 到达目标点后首先通过语音播放到达目标点信息, 再通过摄像头拍摄一张图片保存到本地。 7.5.2 编写巡检控制节点 在chapt7_ws/src下新建功…

【解锁新技能!Flux.1如何实现远程AI生成图像随时随地创作】

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

20250120面试鸭特训营第28天

更多特训营笔记详见个人主页【面试鸭特训营】专栏 250120 1. 说说 Java 中 HashMap 的原理? HashMap 的底层结构 HashMap 底层由 node 数组、单链表、红黑树构成。根据哈希函数计算得到哈希值,哈希值确定了元素保存在 node 数组中的具体下标。HashMap…

Ghost硬盘对拷教程分享

Ghost32是一款老古董级别的备份和恢复软件,通常用于创建系统镜像以及恢复系统。它最初由Symantec公司开发,用于在计算机系统上进行备份、克隆和恢复操作。 由于这个软件早已停止更新很多年了,并且也是全英文的用户界面,对国内用户…

山西省乡镇界面图层shp格式arcgis数据乡镇名称和编码2020年wgs84坐标无偏移测评

这篇文档将深入解析标题和描述中提及的IT知识点,主要关注地理信息系统(GIS)和ArcGIS软件的应用,以及shp文件格式的相关知识。 我们要理解"山西省乡镇界面图层shp格式arcgis数据乡镇名称和编码2020年wgs84坐标无偏移.zip&quo…

[HDCTF2019]Maze

[HDCTF2019]Maze 一、查壳 有壳upx,32位,解壳 二、IDA分析 刚一点进去就发现花指令,不出意外无法F5. 花指令,其特征就是在jnz后面call里面出现非法指令。(会爆红) 所以我们现在要解决花指令 三、解决…

c# PDF文件合并工具

界面 主要用于发票PDF文件的合并。经常出差要报销的很有用。 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.IO; using System.Linq; using System…

Python毕业设计选题:基于django+vue的智能租房系统的设计与实现

开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 租客注册 添加租客界面 租客管理 房屋类型管理 房屋信息管理 系统管理 摘要 本文首…