我可以使用glm算法进行多项式逻辑回归吗?


14

我在项目中使用Spotfire(S ++)进行统计分析,并且必须对大型数据集运行多项逻辑回归。我知道最好的算法应该是mlogit,但不幸的是,这在s ++中不可用。但是,我可以选择使用glm算法进行回归。我想在这里澄清两件事:

1.我的理解是否正确,glm也可以用于运行多项式逻辑回归?

  1. 如果对上一个问题的回答是“是”,那么应在glm算法中使用哪些参数?

谢谢,

Answers:


9

是的,使用Poisson GLM(对数线性模型)可以拟合多项式模型。因此,多项逻辑或对数线性泊松模型是等效的。

您需要将随机数yij视为具有均值泊松随机变量,并指定以下对数线性模型μij

log(μij)=o+pi+cj+xiβj

要获得多项式logit模型,参数为:

每个多项式观察的参数,例如个人或小组。这样可以确保多项式分母的精确再现,并实际上建立了泊松和多项式模型的等价性。它们在多项式似然中是固定的,但在泊松似然中是随机的。pi

每个响应类别的参数。这样,每个响应类别的计数可能会有所不同,并且边距可能会不一致。cj

您真正感兴趣的是交互项,它们表示对响应对数奇数的影响。xiβjxij

对数奇数可以简单地通过。观察值i相对于响应类别属于响应类别j的对数赔率是对数比。log(μij/μik)=(cjck)+xi(βjβk)k

然后,在多项式logit模型的参数(在拉丁字母表示)可以在相应的数-线性模型中的参数之间的差异来获得,即b Ĵ = β Ĵ - β ķaj=αjαkbj=βjβk


谢谢Momo。这真的很有帮助。我的软件为我提供了在运行GLM徽标时选择“系列”作为“位置”和“链接”作为“日志”的选项。所以我认为这正是这里所需要的。
拉格芬德拉

7

是的,您可以,实际上,这正是R包GLMNET用于多项逻辑回归的功能。将对数似然函数编写为:

LogL=icniclog(pic)

其中表示观测值,c表示多项式类别n i c是类别c中观测i的观测值。观测值由其唯一的协变量组合定义-或者,我们也可以允许重复项,并设置每个n i c = 1,以便获得分类的“二进制”数据(.....不知道二进制的复数是什么。 ..)。对于逻辑回归,概率定义为:icnicicnic=1

pic=exp(xiTβc)cexp(xiTβc)

(β1,,βC)

pic=exp(xiTβc)exp(xiTβc)+A where Aβc=0
pic=Bexp(xiTβc)+A where Bβc=0

βcWii,c=nicpic(1pic)(XTWX)1XTWY


w ^ķ

β

pXpkp
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.