当前位置: 首页 > article >正文

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

理解矩阵乘法的解析

矩阵乘法(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.kler.cn/a/512012.html

相关文章:

  • 如何使用C++来实现OPENAI协议通过OLLAMA来与AI大模型通信
  • Linux自动挂载磁盘的方法
  • gitignore忽略已经提交过的
  • 神经网络常见面试题
  • Vue3数据响应式原理
  • 循环队列(C语言)
  • 如何解析返回的快递费用数据?
  • Android开发与网络请求
  • 【sass+css变量实现换肤】
  • Maven项目中没有.iml文件
  • 编辑器Vim基本模式和指令 --【Linux基础开发工具】
  • 深入解析MIMIC IV数据库中 labevents 和 chatevents 数据表的区别与联系
  • .Net Core微服务入门全纪录(五)——Ocelot-API网关(下)
  • 定制setsockopt只设置一次实现指定sock的永久quickack
  • 如何在Nginx服务器上配置访问静态文件目录并提供文件下载功能
  • 实用技巧:快速修复电脑dxgidebug.dll缺失
  • 什么是报文的大端和小端,有没有什么记忆口诀?
  • WPF基础 | 初探 WPF:理解其核心架构与开发环境搭建
  • javaEE初阶(计算机是如何工作的(2) )
  • 用Zig开发Web后端独特好处
  • k8s 部署kafka单机和集群
  • 使用 Parcel 和 NPM 脚本进行打包
  • 【大数据】机器学习------聚类
  • 常见的图形库概览-03-D3.js 入门例子
  • 计算机系统原理:一些断言
  • Transformer详解:Attention机制原理