神经网络之仿射变换

📐 一、什么是仿射变换?

仿射变换 = 线性变换 + 平移

它是一种**保持点之间的相对关系(平行性、比例)**的变换。通俗来说,仿射变换可以包括:

  • 旋转
  • 缩放
  • 剪切(shear)
  • 平移

🧮 数学定义

对于向量 x∈Rnx \in \mathbb{R}^nx∈Rn,仿射变换定义为:

f(x)=Ax+b f(x) = A x + b f(x)=Ax+b

其中:

  • A∈Rm×nA \in \mathbb{R}^{m \times n}A∈Rm×n:一个矩阵,表示线性变换(如旋转、缩放等)
  • b∈Rmb \in \mathbb{R}^mb∈Rm:一个向量,表示平移
  • xxx:输入向量
  • f(x)f(x)f(x):变换后的输出向量

🧠 直观理解

组成 解释
AxAxAx 线性变换(拉伸、旋转、投影等)
+b+b+b 平移操作(将结果整体平移)

仿射变换比线性变换更通用,因为它不需要满足「原点映射到原点」这一限制。


📌 举个例子

在二维空间中:

设:

A=[2002],b=[11] A = \begin{bmatrix} 2 & 0 \\ 0 & 2 \end{bmatrix}, \quad b = \begin{bmatrix} 1 \\ 1 \end{bmatrix} A=[2002],b=[11]

则:

f(x)=2x+[11] f(x) = 2x + \begin{bmatrix}1\\1\end{bmatrix} f(x)=2x+[11]

这个仿射变换会先把所有点缩放 2 倍 ,再整体平移 (1, 1)


🤖 在神经网络中的应用

神经网络中的每一层(不加激活函数)本质上就是一个仿射变换

z=Wx+b z = W x + b z=Wx+b

其中:

  • xxx:上一层的输出
  • WWW:权重矩阵
  • bbb:偏置向量
  • zzz:本层输出(未激活)

激活函数 的作用就是在仿射变换的基础上引入非线性,否则整个网络就是一系列仿射变换叠加,最终仍是一个仿射变换。


🧭 与其他变换的区别

类型 表达式 特点
线性变换 f(x)=Axf(x) = Axf(x)=Ax 不含平移,原点映射到原点
仿射变换 f(x)=Ax+bf(x) = Ax + bf(x)=Ax+b 包含平移,原点不一定映射到原点
仿射变换 + 激活函数 f(x)=σ(Ax+b)f(x) = \sigma(Ax + b)f(x)=σ(Ax+b) 神经网络的基本单元,增加非线性表达能力

✅ 总结

项目 内容
名称 仿射变换(Affine Transformation)
定义 f(x)=Ax+bf(x) = Ax + bf(x)=Ax+b
包含操作 旋转、缩放、剪切、平移
应用领域 图形学、几何变换、神经网络等
神经网络中体现 每一层的线性变换 + 偏置项
与线性变换的区别 仿射变换多了一个平移项 bbb
相关推荐
北京耐用通信4 分钟前
电磁阀通讯频频“掉链”?耐达讯自动化Ethernet/IP转DeviceNet救场全行业!
人工智能·物联网·网络协议·安全·自动化·信息与通信
cooldream200910 分钟前
小智 AI 智能音箱深度体验全解析:人设、音色、记忆与多场景玩法的全面指南
人工智能·嵌入式硬件·智能音箱
oil欧哟12 分钟前
AI 虚拟试穿实战,如何低成本生成模特上身图
人工智能·ai作画
央链知播43 分钟前
中国移联元宇宙与人工智能产业委联席秘书长叶毓睿受邀到北京联合大学做大模型智能体现状与趋势专题报告
人工智能·科技·业界资讯
人工智能培训1 小时前
卷积神经网络(CNN)详细介绍及其原理详解(2)
人工智能·神经网络·cnn
YIN_尹1 小时前
目标检测模型量化加速在 openEuler 上的实现
人工智能·目标检测·计算机视觉
mys55182 小时前
杨建允:企业应对AI搜索趋势的实操策略
人工智能·geo·ai搜索优化·ai引擎优化
小毅&Nora2 小时前
【人工智能】【深度学习】 ⑦ 从零开始AI学习路径:从Python到大模型的实战指南
人工智能·深度学习·学习
牛阿大2 小时前
关于前馈神经网络
人工智能·深度学习·神经网络
2的n次方_2 小时前
从0到1打造专属数字人:魔珐星云SDK接入实战演示
人工智能·具身智能·魔珐星云