目录
基函数 (Basis Functions)
19 世纪初的物理学家遇到了一个难题:一根金属杆的初始温度分布是任意的——可以是光滑曲线,也可以是有尖角、有折点的“怪”函数(比如一半 100°C、一半 0°C)。要求解热传导方程$ ∂u/∂t = α·∂²u/∂x²$,初值条件 $u(x,0) = f(x)$ 就是这样一个任意函数。
当时的数学只会处理多项式、指数这类“好”函数。面对任意函数,工具完全失效——你不可能为每一个可能的 f(x) 单独设计解法。
问题的本质是:函数的空间是无限维的,没法一个一个地搜。
解法:把函数拆成"积木"
1807 年傅里叶给出了答案:任意函数都能展开成正弦余弦的叠加: \begin{equation} f(x) = a_0/2 + Σₙ (a_n cos(nx) + b_n sin(nx)) \end{equation} 这个想法为什么能解决问题?因为它做了两件事:
- 无限维问题变成可数系数问题:找 f 这个函数(不可搜索),变成找系数 aₙ, bₙ(每个系数是一个定积分,直接可算)
- 每块积木独立演化:sin(nx)、cos(nx) 是热传导算子的本征函数——算子作用上去只乘一个常数(∂²/∂x² sin(nx) = −n²sin(nx)),所以每一项的演化互不干扰,各是一个常微分方程,解完叠加回去即可
一个 PDE 难题被拆成无穷个互相独立的小问题——这就是分离变量法。正弦余弦就是历史上第一组“积木”,也就是基函数。
一般地,基函数定义为:一组简单的、固定的函数 φ₁(x), φ₂(x), …, φₚ(x),任何目标函数都用它们的线性组合搭出来: \begin{equation} f(x) = β₁φ₁(x) + β₂φ₂(x) + … + βₚφₚ(x) \end{equation} 其中 βⱼ 是第 j 个基函数的系数(权重),回答“这块积木用多少”:βⱼ 越大,φⱼ 在组合中占的分量越重——傅里叶展开里的 aₙ、bₙ 就是这样的系数。找函数的问题,从此变成找权重 βⱼ 的问题——p 个数字,可以优化。
与线性代数的对应
“基”的概念直接来自线性代数:
* 欧氏空间的基 e₁, e₂, e₃ → 函数空间的基 φ₁, φ₂, …, φₚ * 向量的坐标 v₁, v₂, v₃ → 函数的系数 β₁, β₂, …, βₚ * 把向量分解到坐标轴上 → 把函数分解到基函数上
唯一区别:函数空间是无限维的,只取前 p 个基函数,所以表达是近似的——这个“≈”就是拟合误差的来源(偏差-方差分解中的 Bias 部分)。
常见基函数家族
- 幂基(多项式):φⱼ(x) = xʲ,即 1, x, x², x³, …。最直观,但高次时数值不稳定
- 三角基(傅里叶):1, sin x, cos x, sin 2x, …。适合周期函数,信号处理的主场
- 样条基(B 样条):分段多项式,每段只在相邻区间非零。局部支撑,改一个点只影响附近,数值最稳
- 径向基(RBF):φⱼ(x) = exp(−‖x − cⱼ‖²/σ²),以 cⱼ 为中心的高斯鼓包。机器学习与散点插值常用
- 正交多项式基:切比雪夫、勒让德等。在给定区间上两两正交,数值性质极好
与最小二乘的联系:基函数就是设计矩阵的列
在最小二乘 min ‖y − Xβ‖² 中,设计矩阵 X 是 N×p 的,第 j 列是第 j 个基函数在所有数据点上的取值:
X[i][j] = φⱼ(xᵢ)
* 每列 = 一个基函数“采样后的样子”;每行 = 一个数据点上所有基函数的取值 * 最小二乘 = 用基函数的线性组合去凑 y,找最优权重 β̂ * 投影视角:X 的 p 列张成 p 维子空间,β̂ 是 y 在该子空间上的投影坐标 * 正规方程 (XᵀX)β = Xᵀy 的几何含义:把“残差垂直于列空间”翻译成代数
严格化与数值化:争议逼出的新数学
严格化(1820s-1930s)。傅里叶的断言遭拉格朗日、柯西等质疑:带尖角的折线函数怎么可能等于光滑正弦函数的和?这场争议催生了现代分析学:
* 狄利克雷(1829):三角级数收敛的第一个严格条件 * 黎曼(1854):为了严格定义系数积分 aₙ = ∫f(x)cos(nx)dx,发明了黎曼积分 * 康托尔研究三角级数唯一性,进而发明集合论 * 希尔伯特、施密特(1907)、Schauder(1927):把基抽象为函数空间的一般概念,“基”成为泛函分析的标准内容
基函数展开的合法性问题,倒逼出了积分理论、收敛理论,甚至集合论。
数值化(1850s-1980s)。理论解决“存在吗、收敛吗”,工程师要“怎么算”:
* 切比雪夫(1850s):最佳逼近研究中提出切比雪夫多项式——数值性质最优的多项式基,计算机数学库的基石 * Schoenberg(1946):发明 B 样条——局部支撑的分段多项式基,解决高次多项式“改一处动全局、数值病态”的问题 * Daubechies(1988):构造紧支撑正交小波基——既能看全局又能看局部,信号处理革命
基函数的好坏标准
* 完备性:基要能表达你要逼近的那类函数(多项式基表达不了强周期函数,得用三角基) * 线性无关:基之间不能互相表达,否则 XᵀX 奇异,权重不唯一 * 数值稳定性:幂基 x, x², …, x¹⁰ 在 [0,1] 上取值一个比一个接近 0,设计矩阵几乎退化(条件数爆炸);换成正交基就稳。同样的拟合问题,换个基,数值结果天差地别 * 局部性:样条基改一个数据点只影响附近几段;幂基改一个点全局都动
总结
基函数 = 预先选定的“词汇表”,拟合 = 用这些词以最优权重造句。选词表(基)决定了能表达什么,找权重(β̂)决定了怎么表达得最好。
贯穿基函数全部历史的核心机制只有一条:把“找无限维对象”的问题降维成“找系数”的问题——代价是展开可能只是近似,收益是原本不可解的问题变成可算的线性代数。