通过转换为线性拟合非线性模型的缺陷

机器算法验证 造型 非线性回归 计算统计 非线性 nls
2022-04-06 03:57:53

一些非线性模型可以转换为线性模型。我的理解是,非线性模型的估计与其线性模型形式之间可能存在一对一的关系,但它们对应的标准误差彼此不相关。这个说法是真的吗?通过转换为线性来拟合非线性模型是否有任何陷阱?在此先感谢您的帮助。

1个回答

一些非线性模型可以转换为线性模型。

通常只能通过忽略误差项,除非有某种惊人的机会,它以这样一种方式进入,即误差项在转换后变得可加。

我的理解是非线性模型的估计与其线性模型形式之间可能存在一对一的关系

一般不会。例如考虑:

y=exp(α+βx)+e

log(y)=α+βx+η

其中 n 在每种情况下,模型都具有误差项常数的方差。

如果您通过最小二乘法将两个模型拟合到相同的数据(非线性最小二乘法和线性最小二乘法),则参数估计值会有所不同。

但它们对应的标准误彼此不相关。

是的,如果我们使用“and”而不是“but”。

这是 R 中的一个示例(该模型并不真正适合,但这不会改变问题):

> carsfit=lm(log(dist)~speed,cars)
> summary(carsfit)

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  1.67612    0.19614   8.546 3.34e-11 
speed        0.12077    0.01206  10.015 2.41e-13 

Residual standard error: 0.4463 on 48 degrees of freedom
Multiple R-squared:  0.6763,    Adjusted R-squared:  0.6696 
F-statistic: 100.3 on 1 and 48 DF,  p-value: 2.413e-13

(删除了一些不必要的输出)

与:

> carsexp=nls(dist~exp(a+b*speed),data=cars,start=list(a=1.67,b=0.12))
> summary(carsexp)

Formula: dist ~ exp(a + b * speed)

Parameters:
  Estimate Std. Error t value Pr(>|t|)    
a  2.24119    0.20815  10.767 2.13e-14 ***
b  0.09168    0.01028   8.917 9.38e-12 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 15.07 on 48 degrees of freedom

Number of iterations to convergence: 4 
Achieved convergence tolerance: 3.598e-07

在此处输入图像描述

有时,您选择哪种型号真的很重要!

通过转换为线性来拟合非线性模型是否有任何陷阱?

好吧,可能很多,具体取决于这个问题的范围——回答它可能会写满一本书。一旦你清楚你的错误术语是什么,模型是否应该(以及如何)转换通常会更清楚。

显然,至少,它可能会对参数估计产生很大的影响。

其次,考虑加性误差是否足够大,以至于一些较小的观察结果可能是负面的;

在此处输入图像描述

显然我们不能只记录日志。