通过 MLE 拟合指数(回归)模型?

机器算法验证 r 广义线性模型 最大似然 指数分布
2022-03-15 08:04:09

假设我有一个呈指数分布的结果,所以然而,我们也知道如果我们想估计的 MLE ,给定数据的最佳方法是什么?p(y|λi)=λieλiylogλi=β0+β1xiβ0β1

我正在考虑使用以下代码:

summary(glm(y~x,family=Gamma(link="log")))

不是 100% 确定各种争论的结果。

2个回答

这已由 Adelchi Azzalini 在R 帮助列表中回答:重要的一点是色散参数(将指数分布与更一般的 Gamma 分布区分开来)不会影响广义线性模型中的参数估计,只有参数/置信区间/p值等的标准误差;在 R 中,会自动报告色散参数的估计值,但正如 Azzalini 评论summary.glm的那样,允许用户指定色散参数。因此,正如 Azzalini 所说,

Gamma 系列在 glm() 中通过两个参数进行参数化:均值和色散;“分散”调节形状。

因此 [one] 必须将 GLM 与 Gamma 族相匹配,然后生成色散参数集等于 1 的“摘要”,因为该值对应于 Gamma 族中的指数分布。

在实践中:

fit <- glm(formula =...,  family = Gamma(link="log"))
summary(fit,dispersion=1)   

[Azzalini 有family=Gamma,即使用默认反向链接;我将其更改为在您的问题中指定日志链接。]

按照您的建议,使用 GLM 调用是最简单的正确方法,但要实际使 Gamma 变为指数,您可以将离散度指定为 1。它不会改变拟合的均值/系数,但会影响标准误差。

[即你建议的调用summary(glm(y~x,family=Gamma(link="log")))应该给你你想要的,但如果你对指数假设下的系数的重要性等感兴趣,你会,dispersion=1在最后的括号之前添加。如果您想更普遍地拟合 Gamma GLM MASS,R 附带的包中有几个有用的帮助函数,但默认情况下不加载。]

(另一种选择可能是考虑使用参数生存模型,它也提供了拟合指数、威布尔和各种其他模型的方法。)