Skip to main content
 首页 » 人工智能

指数回归实战教程

2022年07月19日147lhb25

指数回归是一种回归模型,主要用于下列场景:

  • 指数增长:开始增长缓慢,然后无限制快速加速;
  • 指数衰减:开始快速衰减,然后衰减缓慢直至趋近0.

指数回归模型的方程形式如下:

y = a b x {y = ab^x} y=abx

  • y : 响应变量
  • x : 预测变量
    a,b : 描述x和y关系的回归系数

下面通过R示例展示其实现过程。

指数回归R示例

准备数据

首先创建有x,y组成的模拟数据:

x=1:20 
y=c(1, 3, 5, 7, 9, 12, 15, 19, 23, 28, 33, 38, 44, 50, 56, 64, 73, 84, 97, 113) 

数据可视化

这里利用散点图展示x, y 直接的关系:

plot(x, y) 

在这里插入图片描述

从上图中可以看到,两个变量存在清晰的指数增长模型。似乎使用指数回归方程拟合变量关系是不错的选择。

拟合指数回归模型

我们使用lm()函数拟合指数回归模型,取y的自然对数作为响应变量,x作为预测变量:

# 拟合模型 
model <- lm(log(y)~ x) 
 
# 查看模型信息 
summary(model) 
 
# Call: 
# lm(formula = log(y) ~ x) 
#  
# Residuals: 
#     Min      1Q  Median      3Q     Max  
# -1.1858 -0.1768  0.1104  0.2720  0.3300  
#  
# Coefficients: 
#             Estimate Std. Error t value Pr(>|t|)     
# (Intercept)  0.98166    0.17118   5.735 1.95e-05 *** 
# x            0.20410    0.01429  14.283 2.92e-11 *** 
# --- 
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
#  
# Residual standard error: 0.3685 on 18 degrees of freedom 
# Multiple R-squared:  0.9189,	Adjusted R-squared:  0.9144  
# F-statistic:   204 on 1 and 18 DF,  p-value: 2.917e-11 

模型的总体F值为204,对应P值非常小(2.917e-11),表明模型可用。从输出表中可以相应系数,最终指数方程为:

ln(y) = 0.9817 + 0.2041(x)

两边同时应用e,我们可以重写方程为:

y = 2.6689 * 1.2264 x {^x} x

现在我们可以使用该方程预测响应变量.举例x=12, 对应计算出来y值为30.897:

y = 2.6689 * 1.226412 = 30.897


本文参考链接:https://blog.csdn.net/neweastsun/article/details/124916951