指数回归计算器
将你的数据拟合为 y = ab^x 指数模型,并预测未来值。
输入成对的 (x, y) 数据点,计算指数回归方程、R² 和预测值。
指数回归计算器
将你的数据拟合为 y = ab^x 指数模型,并预测未来值。
每行输入一对数据,用空格或逗号分隔。例如:1 2.5
关于指数回归计算器
指数回归是一种曲线拟合技术,用于为给定的数据点集寻找最匹配的指数函数 y = ab^x。当数据呈现指数增长或衰减时,就适合使用这种方法——从图形上看,数据点通常会形成 J 形曲线(增长)或向下弯曲的凹形曲线(衰减)。指数模型在取对数后会变成线性形式:对两边取自然对数可得 ln(y) = ln(a) + x·ln(b),这就是关于 ln(y) 和 x 的线性方程。
拟合过程采用对线性化方程应用最小二乘法的方式。具体来说,我们在 ln(y) 空间中最小化残差平方和。由此可得公式:ln(b) = [n·Σ(x·ln y) − Σx·Σ(ln y)] / [n·Σx² − (Σx)²],以及 ln(a) = [Σ(ln y) − ln(b)·Σx] / n,从而恢复 a = e^(ln a) 和 b = e^(ln b)。
模型 y = ab^x 可以这样理解。系数 a 是 y 截距:它表示 x = 0 时 y 的值。底数 b 控制变化率:如果 b > 1,模型表示增长,每增加 1 个 x,y 都会按 b 的倍数变化(例如 b = 1.05 表示 x 每增加 1,增长 5%)。如果 0 < b < 1,模型表示衰减。增长率百分比为 (b − 1) × 100%。
决定系数 R² 用 0 到 1 的尺度衡量模型与数据的拟合程度。R² = 0.95 表示原始 y 值中有 95% 的方差可由指数模型解释。对于科学数据来说,R² 高于 0.90 通常可认为拟合良好。相关系数 R = √R² × sign(ln b) 表示指数关系的方向与强度。
重要限制:由于对数在 0 和负数上无定义,指数回归要求所有 y 值都为正。如果你的数据包含非正 y 值,可能需要对数据进行变换或平移,或者考虑改用其他回归模型,例如多项式回归。
示例
这些示例展示了指数回归在生物、金融和物理数据中的应用。
| 数据点 | 方程 | 场景 |
|---|---|---|
| (1,2), (2,4.1), (3,7.9), (4,16.2), (5,33.0) | y ≈ 0.98 × 2.01^x, R² ≈ 0.999 | 细菌菌落大约每小时翻一倍 |
| (0,1000), (1,1050), (2,1102.5), (3,1157.6), (4,1215.5) | y = 1000 × 1.05^x, R² = 1.000 | 完全的 5% 复利增长;R² = 1 |
| (0,100), (10,82), (20,67), (30,55), (40,45) | y ≈ 100 × 0.981^x, R² ≈ 0.999 | 放射性衰变;b < 1 表示指数衰减 |
| (1971,2300), (1982,134000), (1993,3.1M), (2000,42M), (2011,2.6B) | y 符合指数关系,R² ≈ 0.97 | 摩尔定律:晶体管数量大约每 2 年翻一倍 |
如何使用此计算器
- 在文本框中输入数据点——每行一对,x 和 y 用空格或逗号分隔(例如 '1 2.5' 或 '1,2.5')。至少需要 3 个数据点。
- 确保所有 y 值都严格大于 0——指数回归算法需要对 y 取对数。
- 如果需要,可以在“预测 Y”字段中输入一个 x 值,以便从拟合模型中获取预测结果。
- 点击“计算”即可查看回归方程 y = ab^x、系数 a 和 b、R²、相关系数 R 以及所请求的预测值。
- 使用快速加载按钮载入预置示例,了解回归方程是如何推导出来的。
常见问题
什么是指数回归?
指数回归会将形如 y = ab^x 的曲线拟合到一组数据点上,其中 a 是初始值,b 是每单位 x 的增长/衰减因子。当数据以与当前值成比例的速率增长或衰减时,就会使用它。拟合过程通过对模型取对数进行线性化,并对变换后的数据应用普通最小二乘法来完成。
系数 a 和 b 表示什么?
系数 a 是 y 截距——即 x = 0 时 y 的预测值。底数 b 决定 y 随 x 每增加 1 的乘法变化。如果 b = 1.1,则 x 每增加 1,y 增加 10%。如果 b = 0.9,则每单位减少 10%。增长率百分比为 (b − 1) × 100%。
R² 衡量什么?什么数值算好?
R²(决定系数)衡量原始 y 值中有多大比例的方差可由拟合的指数模型解释。它的取值范围是 0 到 1,其中 1 表示完全拟合。对于科学数据,R² > 0.95 通常非常优秀,0.80–0.95 表示较好,低于 0.80 则说明指数模型可能不合适,应该尝试其他模型。
为什么 y 值必须为正?
指数回归算法通过取 ln(y) 来线性化模型。自然对数只对严格正数定义——ln(0) 为负无穷,而负数的对数在实数范围内无定义。如果你的数据中有非正 y 值,可以考虑平移数据(为所有 y 值加上常数)、改用其他模型(如多项式或幂函数),或者重新判断数据是否真的符合指数增长。
这和线性回归有什么不同?
线性回归为数据拟合直线 y = mx + b,假设变化率恒定。指数回归拟合 y = ab^x,假设相对变化率恒定。选择时,可以在普通坐标下观察数据(若接近直线则偏向线性),也可以在半对数坐标下观察(若在半对数图上接近直线则偏向指数)。你也可以比较 R²,不过由于指数回归最小化的是对数空间中的残差,因此两种模型的 R² 不能直接比较。
这个计算器可以用于指数衰减吗?
可以。指数衰减是 0 < b < 1 的特殊情况。如果 b = 0.95,则数量会随每单位 x 减少 5%。计算器会自动处理增长和衰减——你无需更改任何设置。只要输入数据点,算法就会确定正确的 b 值。放射性衰变、血液中的药物浓度以及物体冷却温度都符合这种模式。