人工智能入门学习DAY2
一、今日学习目标
1、掌握矩阵核心算法:加法,数乘,矩阵乘法,转置
2、理解矩阵乘法的几何意义
3、 用NumPy实现所有的基础矩阵运算
二、矩阵的核心算法
1、矩阵加法
本质:
矩阵的对应位置相加
条件:
矩阵的行列数必须完全相同
公式:
若:A = (ai,j),B=(bi,j)
则:C = A + B = (ai,j + bi,j)
例如:
\( A= \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} , \quad B = \begin{bmatrix} 5 & 6 \\ 7 & 8 \end{bmatrix}\)
那么:
\( A + B = \begin{bmatrix} 6 & 8 \\ 10 & 12 \end{bmatrix} \)
2、矩阵数乘
本质:
对矩阵整体进行放缩
规则:
矩阵内的每个数都与这个数相乘
例如:
\( 2A= \begin{bmatrix} 2 & 4 \\ 6 & 8 \end{bmatrix} \)
3、矩阵乘法
本质:
矩阵行与列的点积
条件:
A 是 m×n
B 是 n×p
中间维度必须相同!!!!
规则:
第i行 × 第j列
公式:
\[C_{ij} = \sum_{k=1}^{n} A_{ik} B_{kj} \]
例如:
\( AB= \begin{bmatrix} 1 × 5 + 2 × 7 = 19 & 1 × 6 + 2 × 8 = 22\\ 3 × 5 + 4 × 7 = 43 & 3 × 6 + 4 × 8 = 50 \end{bmatrix} \)
重要性质:
- 不满足交换律!!!
4、转置
本质:
行列互换
定义:
\[A^T \]
例如:
\( A= \begin{bmatrix} 1 & 2 & 3\\ 4 & 5 & 6 \end{bmatrix} \)
\( A^T= \begin{bmatrix} 1 & 4 \\ 2 & 5 \\ 3 & 6 \end{bmatrix} \)
补充:单位矩阵
记作:
性质:
三、矩阵乘法的几何意义
1、核心结论
矩阵本质上表示一种“线性变换”
矩阵乘法 = 线性变换的复合(叠加)
2、矩阵如何作用在向量上
设一个二维向量:
一个矩阵:
作用结果为:
3、列向量视角
将矩阵拆成两列:
那么有:
这意味着:
- 原来的坐标 \((x, y)\)
- 被映射为:
- \(x\) 倍的第一列向量
- 加上 \(y\) 倍的第二列向量
4、几何直观理解
1. 矩阵在“改变坐标系”
矩阵的两列:
- 第一列:原本的 x轴 变成哪里
- 第二列:原本的 y轴 变成哪里
本质:坐标轴被重新定义了
2. 常见几何变换
(1)拉伸 / 压缩
x方向放大 2 倍
(2)旋转
整个空间旋转 \(\theta\)
(3)剪切(Shear)
图形被“斜着拉”
5、矩阵乘法的几何意义(重点)
设两个矩阵:
它作用在向量上:
含义:
- 先进行 B 变换
- 再进行 A 变换
6、直观理解:变换的叠加
想象一个单位正方形:
- 先用矩阵 \(B\) 进行变形
- 再用矩阵 \(A\) 再变形一次
最终效果就是矩阵乘积 \(AB\)
7、为什么矩阵乘法不满足交换律?
原因:
- 先旋转再拉伸 ≠ 先拉伸再旋转
- 变换顺序不同,结果不同
本质:变换是有顺序的
8、更高阶理解:基底变换
矩阵乘法还可以理解为:
- 第一个矩阵:改变坐标系
- 第二个矩阵:在新坐标系下继续变换
本质是:基底(basis)的连续变化
9、在计算机 / 深度学习中的意义
在线性模型中:
矩阵 \(W\) 的作用:
- 特征组合
- 信息压缩 / 扩展
- 空间投影
本质仍然是:线性变换
10、一句话总结
矩阵乘法 = 线性变换的复合
四、用NumPy实现所有的基础矩阵运算
NumPy 是 Python 中进行数值计算的核心库,矩阵运算非常高效且简洁。
1、安装与导入
pip install numpy
import numpy as np
2、创建矩阵
A = np.array([[1, 2],
[3, 4]])
B = np.array([[5, 6],
[7, 8]])
3、矩阵加法
C = A + B
print(C)
输出
[[ 6 8]
[10 12]]
4、数乘
C = 2 * A
print(C)
输出
[[2 4]
[6 8]]
5、矩阵乘法
方法1:使用 @
C = A @ B
print(C)
方法2:使用 np.dot
C = np.dot(A, B)
print(C)
输出:
[[19 22]
[43 50]]
6、转置矩阵
A_T = A.T
print(A_T)
输出:
[[1 3]
[2 4]]
总结
关于矩阵的运算是机器学习的前置知识中非常重要的一个点,在理解矩阵是如何运算的同时,我们要明白其在处理数据当中的应用,我将其归纳如下:
- 加法 = 数据叠加
- 数乘 = 权重缩放
- 乘法 = 信息融合 / 线性变换
- 转置 = 改变数据视角
在理解了这些后,我们才能够更深一步的了解神经网络相关的内容

浙公网安备 33010602011771号