2. 非线性模型的基本形式与识别

在非线性曲线拟合中,第一步往往不是打开软件点“拟合”,而是先判断数据大致属于哪一类函数族。函数族选错,后续无论怎样调初值、加权重,残差都难以呈现随机分布,参数也失去物理解释。本节围绕五类最常用的非线性函数——指数、幂函数、对数、S 型曲线和多项式——说明它们的数学表达、参数含义、适用场景,以及如何从散点形态和机理背景中识别它们。

一、指数族:描述“按比例变化”的过程

最基础的形式是 y = a·e^(b·x),其中 a 是 x=0 时的响应值(尺度参数),b 是增长率参数:b>0 表示加速增长,b<0 表示衰减。更常用的是带渐近线的三参数形式 y = y₀ + A·e^(b·x),y₀ 为基线或饱和值,A 为变化幅度。指数族的典型特征是“等间隔 x 对应近似等比例的 y 变化”,因此对 y 取对数后散点应近似成直线——这是识别指数关系最实用的判据。适用场景包括放射性衰减、药物血药浓度消除、电容放电、细菌对数期增长、以及一级反应动力学。

需要注意,指数拟合对初值敏感,尤其当数据只覆盖衰减尾部时,y₀ 与 A 高度相关,容易得到多组等价解。实践中可先固定 y₀ 为观测到的平台值,再拟合 A 与 b。

二、幂函数:描述“标度关系”

形式为 y = a·x^b。参数 a 是比例系数,b 是幂指数,决定曲线的弯曲方向与标度性质:b>1 上凸加速,0<b<1 下凹减速,b<0 表示随 x 增大而衰减。幂函数与指数函数最容易混淆,区分方法是:对 x 和 y 同时取对数,若 ln y 对 ln x 呈直线,则为幂函数;若只有 ln y 对 x 呈直线,则为指数函数。幂函数广泛用于异速生长(如代谢率与体重的 3/4 次幂)、材料疲劳的 S-N 曲线、以及许多经验标度律。

三、对数函数:描述“边际递减”

形式为 y = a + b·ln(x)。参数 b 表示 x 每增加 e 倍时 y 的增量,因此它刻画的是相对变化带来的绝对响应。对数函数的定义域要求 x>0,曲线单调但增速不断放缓,没有上界。典型场景包括浓度-响应中的低剂量区、心理物理学中的韦伯-费希纳定律、以及某些学习曲线。若数据在 x 较大处仍持续缓慢上升而不趋于平台,对数模型比饱和型 S 曲线更合适。

四、S 型曲线:描述“先慢、后快、再饱和”

最常见的是四参数 Logistic:y = y_min + (y_max − y_min) / (1 + (x/x₀)^p)。四个参数各有明确含义:y_min 与 y_max 是下、上渐近线,x₀ 是半效应浓度(响应达到中点时的 x),p 是斜率因子,控制过渡的陡峭程度。当 p>0 时曲线随 x 上升,p<0 时下降。另一常用形式是 Gompertz 曲线,其增长不对称,拐点偏早,适合肿瘤生长、种群增长等。S 型曲线的识别特征是数据存在明显的上下平台,且中间段近似线性。若数据只覆盖上升段而无平台,强行拟合四参数模型会导致 y_max 不可辨识。

五、多项式:灵活但需警惕过拟合

形式为 y = β₀ + β₁x + β₂x² + … + βₙxⁿ。它本质上是线性模型(对参数线性),可用最小二乘直接求解,无需迭代初值,这是它相对前几类的工程优势。二次多项式可描述单峰或单谷,三次可描述一个拐点。但多项式缺乏机理含义,高阶项在数据边界外极易发散,且各幂次项高度共线。实践中建议阶数不超过 3,并优先在数据范围内使用,外推必须谨慎。

五类常见非线性函数族的形态与识别要点 指数族 y = y₀ + A·e^(bx) b>0 增长 b<0 衰减 识别:ln y 对 x 近似直线 幂函数 y = a·x^b b>1 上凸 0<b<1 下凹 识别:ln y 对 ln x 近似直线 对数函数 y = a + b·ln(x) 增速持续放缓,无上界 识别:x>0,y 对 ln x 呈直线 S 型曲线(四参数 Logistic) x₀ 半效应点 y_max y_min 识别:存在上下平台,中段近似线性 多项式 y = β₀ + β₁x + β₂x² + … 二次:单峰/单谷 三次:一个拐点 识别:对参数线性,无机理含义,慎外推

六、从数据到函数族:一套可操作的识别流程

面对一组散点,建议按以下顺序判断,而不是凭直觉直接选模型。第一步,看定义域与形态:若 x 含 0 或负值,对数与幂函数(b 非整数时)不适用;若曲线明显有上下平台,优先考虑 S 型或带渐近线的指数。第二步,做坐标变换试探:分别绘制 ln y–x、ln y–ln x、y–ln x 三张图,哪张最接近直线,就指向对应的函数族。第三步,结合机理:一级动力学指向指数,异速生长指向幂函数,受体结合或剂量-效应指向 S 型。第四步,用残差验证:拟合后若残差呈系统性弯曲(如 U 形),说明函数族或阶数不足;若残差随机散布且量级与测量误差相当,则可接受。

识别函数族时,坐标变换图只是“线索”而非“结论”。对数变换会压缩大值、放大误差结构,因此最终仍应在原始尺度上拟合,并用原始残差图判断模型是否合适。

七、一个教学示例:同一组数据的三种候选

假设某实验测得底物浓度 x(mmol/L)与反应速率 y(μmol/min)的 8 组数据,散点呈“先快后慢并趋于平台”的形态。此时至少有三个候选:米氏方程 y = Vmax·x/(Km + x)(本质是双曲饱和,可视为 S 型 p=1 的特例)、带渐近线的指数 y = y₀ + A(1−e^(−kx))、以及二次多项式。三者的差别在于:米氏方程有明确的 Vmax 与 Km 机理含义;指数饱和的趋近速度由 k 决定,尾部更“拖”;二次多项式虽能拟合前段,但在高浓度处会向下弯,与平台形态矛盾。因此应优先选米氏或指数饱和,再用残差比较二者:若低浓度段残差偏正、高浓度段偏负,说明模型在过渡区形状不符,可尝试 Hill 形式 y = Vmax·x^n/(K^n + x^n),其中 n 即斜率因子。

函数族典型表达关键参数含义首选识别判据
指数y₀ + A·e^(bx)b:增长率;y₀:基线ln y 对 x 呈直线
幂函数a·x^bb:标度指数ln y 对 ln x 呈直线
对数a + b·ln xb:每 e 倍 x 的增量y 对 ln x 呈直线,无平台
S 型y_min + Δy/(1+(x/x₀)^p)x₀:半效应点;p:陡度存在上下平台,中段近线性
多项式Σβᵢxⁱβᵢ:各阶系数对参数线性,形态灵活无机理

最后强调一点:函数族的“识别”不是一次性判断,而是“假设—拟合—看残差—修正”的循环。初选模型后,务必检查参数是否落在合理范围、标准误是否可接受、残差是否存在结构。若参数置信区间极宽或出现物理上不可能的取值(如负的 Vmax),往往说明函数族或参数化方式需要调整,而不是数据本身有问题。