惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Archives - TechRepublic
Security Archives - TechRepublic
罗磊的独立博客
T
The Blog of Author Tim Ferriss
The GitHub Blog
The GitHub Blog
Apple Machine Learning Research
Apple Machine Learning Research
The Register - Security
The Register - Security
J
Java Code Geeks
V2EX - 技术
V2EX - 技术
Vercel News
Vercel News
N
News and Events Feed by Topic
腾讯CDC
P
Proofpoint News Feed
N
News | PayPal Newsroom
www.infosecurity-magazine.com
www.infosecurity-magazine.com
爱范儿
爱范儿
O
OpenAI News
酷 壳 – CoolShell
酷 壳 – CoolShell
月光博客
月光博客
Martin Fowler
Martin Fowler
Engineering at Meta
Engineering at Meta
D
Docker
Y
Y Combinator Blog
博客园 - 聂微东
G
Google Developers Blog
S
Security @ Cisco Blogs
Simon Willison's Weblog
Simon Willison's Weblog
S
Schneier on Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
SegmentFault 最新的问题
云风的 BLOG
云风的 BLOG
阮一峰的网络日志
阮一峰的网络日志
C
CXSECURITY Database RSS Feed - CXSecurity.com
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
C
CERT Recently Published Vulnerability Notes
I
Intezer
G
GRAHAM CLULEY
有赞技术团队
有赞技术团队
Attack and Defense Labs
Attack and Defense Labs
V
Visual Studio Blog
博客园 - Franky
博客园 - 三生石上(FineUI控件)
W
WeLiveSecurity
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hugging Face - Blog
Hugging Face - Blog
Scott Helme
Scott Helme
T
Troy Hunt's Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
L
LINUX DO - 最新话题
C
Cybersecurity and Infrastructure Security Agency CISA

博客园 - 立体风

当AI构建自身 nana gui库的回调函数 Nana c++ gui库的对话框函数 -- 理解 nana 的运行机制 介绍 MSVC 的编译命令/ Zc CMake 变量 ${CMAKE_CURRENT_BINARY_DIR} 学习 nana c++ 库 (一) AutoHotkey v2 的源码学习路线 Visual Studio 中行号右边的黄色竖条 大O表示法推导 allocate 中为什么有两个L vs的cl.exe 编译器 c++20 基本配置 IT高频词 address Python Install Manager (PIM,官方安装管理器)简介 debian 中 contrib 软件仓库 debian 版本号及 apt 命令对软件的区分 sysctl的历史及常用命令 极限运算的法则 TeX 的 ctex 宏包的基本用法 XeLaTeX 的基本用法 XeLaTeX 介绍 为什么梯度向量 ∇f 指向函数值增长最快的方向 三角函数的余弦定理的证明 向量点积的几何定义的证明 方向导数公式的证明 凸集的定义及证明 在 LaTeX 公式中处理英文单词 梯度下降法 (Gradient Descent)的数学原理。 梯度下降法简介 向量形式表达最小二乘法 线性回归模型的核心数学表达式 risidual 音标和本义 coefficients的音标及本义(线性模型)
仿射函数的定义及用途
立体风 · 2025-09-07 · via 博客园 - 立体风

仿射函数的定义

仿射函数是数学中的一个基本概念,是线性函数的一种推广。如果一个函数可以表示为一个线性函数和一个常向量的和,则这个函数 \(f: \mathbb{R}^n \to \mathbb{R}^m\) 被称为仿射函数(affine function),。

用数学公式表达就是:
\(f(x) = Ax + b\)

其中:

  • \(x\) 是一个 \(n\) 维向量。
  • \(A\) 是一个 \(m \times n\) 的矩阵,代表了线性变换部分。
  • \(b\) 是一个 \(m\) 维向量,代表了平移(或偏移)部分。

\(b = 0\) 时,仿射函数就退化为线性函数 \(f(x) = Ax\)。因此,我们可以简单地理解为:仿射函数 = 线性函数 + 平移

一个常见的例子是高中数学中的一次函数 \(f(x) = ax + b\)。这里,\(a\) 相当于矩阵 \(A\),而 \(b\) 则是平移向量。


仿射函数的用途

仿射函数在许多领域都有广泛的应用,因为它们能够描述许多现实世界中的变换和关系。

1. 几何学与计算机图形学
在计算机图形学中,仿射变换(affine transformation)是处理二维和三维空间中物体位置、大小和方向变化的核心工具。一个仿射变换可以由一个仿射函数来描述,它能够执行以下操作:

  • 缩放 (Scaling):改变物体的大小。
  • 旋转 (Rotation):改变物体的方向。
  • 剪切 (Shearing):使物体倾斜。
  • 平移 (Translation):移动物体的位置。
    通过组合这些基本操作,可以方便地对图形对象进行复杂的几何变换。

2. 机器学习与深度学习
在机器学习和深度学习中,仿射函数构成了许多模型的基础:

  • 线性模型:例如线性回归,其模型形式就是 \(y = w^Tx + b\),这是一个典型的仿射函数。
  • 神经网络:在神经网络中,每一层的前向传播计算通常都涉及一个仿射变换。输入向量首先与一个权重矩阵相乘(线性变换),然后加上一个偏置向量(平移),最后再通过一个非线性激活函数。这个“线性 + 平移”的步骤正是仿射函数的应用。

3. 优化理论
在优化问题中,仿射函数扮演着重要角色。例如,线性规划(linear programming)中的约束条件通常都是由仿射函数定义的等式或不等式。此外,许多凸优化算法也依赖于仿射函数的性质,因为它们能保持凸性,使得求解过程更加高效和可靠。

4. 经济学与物理学
在经济学中,仿射函数可以用来建立简单的线性模型,描述供给和需求之间的关系。在物理学中,它们可以用于描述一些简单的物理定律,例如胡克定律 \(F = kx\),如果加上一个初始力,就变成一个仿射函数的形式。

总而言之,仿射函数因其简洁而强大的数学形式,能够很好地捕捉许多“线性”关系,并且通过增加一个平移项,使其比纯粹的线性函数更具灵活性和普适性,因此在科学和工程的多个分支中都扮演着基础性的角色。