实验数据 · 曲线拟合

数据拟合(最小二乘) · 先看散点,再选模型

线性、二次、指数三种模型的最小二乘拟合,输出系数、R² 与指定点的预测值。指数模型会自动线性化。

线性:y = a + bx二次:y = a + bx + cx²指数:y = a·e^(bx)R² = 1 − SS残/SS总
数据与模型每行 x y

每行一对「x y」;指数拟合要求 y 全为正。

AI 讲解需人机验证
算法会算,AI 会讲为什么
计算结果等待输入
R²
—
拟合方程
—
R²
—
预测值
—
样本量
—
计算过程
  1. 填入数据后点「计算」,这里给出代入过程。
模型怎么选
散点形态模型
近似直线线性
一个弯,先升后降二次
越来越陡 / 越来越缓指数
S 形Logistic(本工具不含)

最小二乘在最小化什么

最小二乘让残差平方和 Σ(y−ŷ)² 最小。对线性模型可以直接解正规方程;对指数模型先取 ln y,化成线性再拟合,最后还原参数。

R² 越接近 1 拟合越好,但增加模型复杂度(如二次)必然让 R² 不降。比较不同模型要看调整 R² 或残差分布。

拟合后的三项检查

  • 残差是否随机分布(不应有明显形状)
  • 系数是否有物理意义(单位、量级)
  • 外推是否合理(不要超出数据范围太远)

常见问题

指数拟合为什么要求 y>0?

因为要对 y 取对数,非正值无定义。

R²=0.99 就说明模型对吗?

不一定。可能是过拟合,或数据范围太窄。要看残差与物理背景。

二次拟合一定比线性好吗?

R² 会更高,但多一个参数。若二次项不显著,优先用线性模型。

能拟合自定义函数吗?

本工具提供三种常用模型。复杂模型建议用 Python/Origin 做非线性拟合。

相关工具