Skip to main content
Version: Next

通用拟合说明

Fit 模块用于用一个数学表达式描述一组数据之间的关系,并围绕这个表达式做三件事:

  1. 拟合系数。
  2. 正向计算函数值。
  3. 反向求解变量。

适用场景

  1. 经验公式标定,例如 y = a*x + by = a*exp(-k*x)
  2. 工艺参数回归,例如温度、时间、功率与结果值之间的关系。
  3. 目标反求,例如给定目标厚度或目标光谱指标,反求一个最佳工艺参数。

基本组成

一个拟合任务通常由四部分组成:

  1. 表达式:例如 a*x+b
  2. 变量:例如 x,并定义它的含义、单位和取值范围。
  3. 系数:例如 ab,并定义它们的初值和上下界。
  4. 数据:变量序列与目标函数值序列。

三种核心操作

1. 拟合系数

给定:

  1. 表达式。
  2. 变量样本值。
  3. 函数目标值。

输出:

  1. 最优系数。
  2. 残差或目标函数值。
  3. 迭代诊断信息。

2. 正向计算

给定:

  1. 表达式。
  2. 系数值。
  3. 变量值。

输出:

  1. 对应的函数值序列。

3. 反向求解

给定:

  1. 表达式。
  2. 系数值。
  3. 目标函数值。
  4. 变量范围。

输出:

  1. 一个最接近目标值的变量解,或一组变量解。

建议做法

  1. 变量和系数命名尽量使用英文和下划线,例如 temp, power_ratio, a1
  2. 先做一次正向计算确认表达式没有错误,再执行拟合。
  3. 拟合前给出合理初值和边界,避免求解陷入无效区域。
  4. 多变量反求时必须给定边界,否则结果通常不稳定。

当前能力边界

当前模块适合数值表达式拟合与优化,不面向复杂符号化推导、整数规划或大规模约束优化。