R中模型族的误差分布和链接函数是什么?

机器算法验证 r 分布 广义线性模型 方差 链接功能
2022-03-04 10:44:20

在使用 R 中的函数构建模型时glm,需要指定族。族指定误差分布(或方差)函数和链接函数。例如,当我执行逻辑回归时,我使用binomial(link = "logit")家庭。

什么是(或表示)R 中的误差分布(或方差)和链接函数?

我假设链接函数是构建的模型类型(因此为什么要使用该logit函数进行逻辑回归。但我不太确定误差分布函数。

我查看了 R 的文档,但除了如何使用它们以及可以指定哪些参数之外找不到详细信息。

2个回答

您不指定“错误”分布,而是指定响应的条件分布。

当您键入将条件分布指定为二项式的族名称(例如binomial)时,这意味着方差函数(例如,在二项式的情况下,它是μ(1μ))。如果你选择不同的族,你会得到不同的方差函数(对于 Poisson,它是μ, 对于 Gamma 它是μ2,对于高斯它是常数,对于逆高斯它μ3, 等等)。

[对于某些情况(例如逻辑回归),您可以对 GLM 采用潜在变量方法 - 在这种情况下,您可能会将潜在变量的分布视为“误差分布”的一种形式。]

链接函数确定平均值 (μ) 和线性预测器 (η=Xβ) 有关系。具体来说,如果η=g(μ)然后g称为链接函数。

您可以在许多标准书籍以及互联网上的所有地方找到指数类常用成员的方差函数表和规范链接函数(具有一些方便的属性)。这是一个小的:

Family Variance fn Canonical link function Other common links Gaussianconstantμ(identity)Binomialμ(1μ)log(μ1μ)(logit)probit, cloglogPoissonμlog(μ)(log)identityGammaμ21/μ(inverse)logInverse Gaussianμ31/μ2log

(R 以相当典型的方式实现这些,在上面提到的情况下,如果您不指定一个,将使用规范链接)

在 R 中,如果您阅读函数?family的文档,您将在顶部的列表中看到默认链接:

Usage

family(object, ...)  

binomial(link = "logit")  
gaussian(link = "identity")  
Gamma(link = "inverse")  
inverse.gaussian(link = "1/mu^2")  
poisson(link = "log")  
quasi(link = "identity", variance = "constant")  
quasibinomial(link = "logit")  
quasipoisson(link = "log")

您可能会注意到默认链接往往是各种发行版的规范链接family=binomial(link="probit")但是,如果您愿意,可以指定替代链接(例如, )。映射拟合参数范围的任何函数(例如,用于逻辑回归πi(0,1)) 到模型右侧的可能范围(总是(,)) 可以接受。事实上,只要样本中的数据不会导致拟合参数超出可接受范围,您就可以使用不符合此标准的函数。(例如,当拟合值不在边界附近时,人们有时会使用恒等函数作为与计数数据或比例(例如轮询结果)的链接。)

我怀疑您会从广义线性模型和链接函数的概述中受益。它可能会帮助您在这里阅读我的答案:Difference between logit and probit models,即使它是在不同的上下文中编写的,它最终也会这样做。您还可以仔细阅读分类下的一些线程标签。