函数y = at ^ b * exp(-ct)是否有名字?可以线性化吗?我怎样估计a,b,c?

时间:2015-10-15 20:09:16

标签: r nlme

我正在尝试拟合非线性模型,但找不到任何好的例子 线上。

这个功能有名字吗?

可以线性化吗?

我试图估计参数abc随机效应g(如组中)作为时间的函数{{ 1}},下面。我可以使用t来拟合模型而不会产生随机效果,但是我很难让模型收敛。建议欢迎(最好在R内,但任何合适的包装都可以)?

nls

1 个答案:

答案 0 :(得分:9)

在物理学(以及其他一些领域)中,我已经看到它或它的变体称为Hoerl曲线或Hoerl函数e.g. here,尽管它有其他名称。如果 c 为负且 a b 为正,则为缩放的伽玛密度。

当你要求线性化它时,你必须要小心;等式 y = at ^ b 。 exp( ct )实际上并不是你的意思 - 观察, y i ),并不完全等于 a < / em>。 t (i)^ b 。 exp( ct i ))(否则几乎任何3个观察都会给你精确的参数值。)

因此噪音必须以某种方式进入 y 的模型。它是添加剂吗?乘法,或其他什么? (同样重要的是,但由于其他原因: t 更改时,其大小是否会以某种方式发生变化?不同观察的噪声项是否独立?)

如果您的实际型号 y i )= at i )^ b 。 exp( ct i ))+ε( i ),这是不可线性化的。

如果您的实际型号 y i )= at i )^ b 。 exp( ct i ))。 ε(i)和ε( i )= exp(η( i ))对于某些(希望是零均值)η( i ),这是可线性化的。

采取第二种形式,

log( y i ))= log(a)+ b log( t i ))+ c t i )+ log(ε( i ))

y *( i )= a * + b.log( t i ))+ c。 t i )+η( i

在参数 a * = log( a ), b c 中是线性的,并且误差项η( i );因此,如果您准备对错误做出那种假设,那么您应该能够使用适合此类线性模型的方法;在这种情况下,您可能希望考虑有关上述错误术语的括号问题,这些问题可能会影响您对其进行建模。