1. 课程导入与问题定义
设想你接手一个真实的地球物理反演任务:某工区布设了 24 个测点,采集到一组视电阻率观测数据,需要反演出地下介质的层状电阻率结构。你手里有一个正演程序,给定模型参数 m 就能算出理论响应 F(m);现在的问题是——如何从观测数据 d 出发,找到一个"足够好"的模型?
最朴素的想法是:让理论响应与观测数据的差异尽可能小。把这种差异写成向量形式就是残差 r = d − F(m),而"尽可能小"需要一个度量。最小二乘反演选择的是残差平方和 ‖r‖² 最小化。这个选择并非随意:在观测噪声近似服从零均值高斯分布的假设下,最小化残差平方和等价于最大似然估计,因此它既有几何上的"最短距离"含义,也有统计上的最优性依据。
为什么"残差小"不等于"反演成功"
初学者最容易犯的错误,是把残差降到很小就认为任务完成。实际上,反演问题普遍是欠定的:测点数量有限,而地下模型参数在空间上连续分布,存在无穷多个模型能拟合同一组数据。更麻烦的是,数据本身带有噪声,过度追求残差最小会把噪声也"拟合"进去,得到剧烈振荡、地质上不合理的模型——这就是过拟合。
因此,残差诊断的意义不在于"看残差是不是零",而在于回答三个问题:残差的量级是否与估计的观测噪声水平相当?残差的分布是否呈现随机特征,还是残留了系统性结构?残差在空间或时间上的模式是否暗示正演算子、数据加权或模型参数化存在问题?这三个问题构成了后续所有诊断手段的出发点。
从"能算"到"算得可信":本课程的学习路径
上面的闭环图揭示了本课程的整体逻辑:最小二乘反演不是一个"一次性求解"的动作,而是"建模—求解—诊断—修正"的循环。围绕这个循环,课程将依次展开四个层次的内容。
第一层是数学基础与问题定义。需要明确残差、目标函数、雅可比矩阵(敏感度矩阵)的定义,理解线性最小二乘的解析解 m = (GᵀG)⁻¹Gᵀd 及其几何解释——它把数据向量投影到正演算子张成的空间上。同时要清楚 GᵀG 的条件数如何反映问题的病态程度。
第二层是非线性反演的迭代实现。实际正演算子 F(m) 对模型参数是非线性的,需要高斯-牛顿法或阻尼最小二乘法(Levenberg-Marquardt)。核心操作是每步计算雅可比矩阵 J,求解线性化子问题 (JᵀJ + λI)Δm = Jᵀr,并观察目标函数与残差范数随迭代的变化。这里要特别注意:迭代收敛不代表结果可信,只代表在当前参数化与正则化下找到了局部极小。
第三层是残差诊断的具体方法。包括残差直方图与正态性检验、残差随测点编号或深度的散点图、残差自相关分析、以及基于残差的噪声水平估计(如用残差均方根与自由度校正)。诊断的目标是区分"拟合不足"(残差仍有系统结构,说明模型参数化不够或正演有偏)与"过拟合"(残差已接近白噪声但模型剧烈振荡,说明正则化不足)。
第四层是实战与复盘。以一个完整的层状模型反演案例贯穿,从数据准备、加权设置、初始模型选择,到迭代监控、残差诊断、模型合理性判断,形成可复现的操作流程。
本节要点与实战目标
本节需要建立三个基本认识。其一,最小二乘反演的本质是在"数据拟合"与"模型合理性"之间寻找平衡,残差平方和只是拟合程度的度量,不是反演质量的唯一标准。其二,残差是诊断反演结果的最直接信息载体,它的量级、分布和空间模式分别对应噪声水平、统计假设和模型结构三类问题。其三,反演是一个需要人工判断的迭代过程,算法给出的是候选模型,诊断给出的是接受或修正的依据。
实战目标可以具体化为:给定一组含噪观测数据和正演程序,能够独立完成一次阻尼最小二乘反演,输出迭代收敛曲线与残差图,并依据残差诊断结论判断当前结果属于"拟合不足""合理拟合"还是"过拟合",进而给出下一步调整方向(修改正则化权重、调整数据加权、改变模型分层数或参数化方式)。这个判断能力,正是本课程区别于单纯"会调库函数"的核心价值。
在进入具体数学推导之前,不妨先记住一句话:反演的解不是算出来的,是"算出来再诊断出来"的。接下来的章节,将围绕这句话逐步展开。