最近在研究GWPR,参考了很多广义线性模型,特别是泊松回归的相关内容,知识琐碎且繁杂,做个笔记。 泊松回归(Poisson regression)是用来为计数资料和列联表建模的一种回归分析.泊松回归假设反应变量Y是泊松分布,并假设它期望值的对数可被未知参数的线性组合建模.泊松回归模型有时(特别是当用作列联表模型时)又被称作对数-线性模型.需要注意的是,对数线性模型和泊松回归模型并不完全相同,通常对数线性回归的响应变量是连续的,而泊松回归则是离散的.再给出泊松回归模型的形式之前,我们先考虑几个概念: e的概念 二项式分布 泊松分布与泊松回归泊松回归
定义
n→∞lim(1−n1)n=en→∞lim(1−nλ)n=eλ
P(X=k)=(kn)pk(1−p)n−k
如果我们令
p=λ/n,当
n→∞时
P的极限是:
n→∞limP(X=k)=n→∞lim(kn)pk(1−p)n−k=n→∞lim(n−k)!k!n!(nλ)k(1−nλ)n−k=n→∞lim[nk(n−k)!n!](k!λk)→exp(−λ)(1−nλ)n→1(1−nλ)−k=n→∞lim[(1−n1)(1−n2)⋯(1−nk−1)](k!λk)(1−n1)n(1−nλ)−k=(k!λk)exp{−λ}
这也说明当
n→∞时,二项式分布可以近似至泊松分布
P(X=k)=k!λke−λ,k=0,1,⋯
其中有
E(X)=λ,Var(X)=λ,为导出泊松回归的形式,我们记上式为
Y,则有:
Y=k!λke−λ,k=0,1,⋯
做对数变换:
log(Y;λ)=log(e−λλk)−log(k!)=log(e−λ)+log(λk)−log(k!)=−λ+klog(λ)−log(k!)
再做指数变换:
elog(Y;λ)=f(Y;λ)=exp{klog(λ)−λ−log(k!)}
其中
log(Y)称为链接函数,由此得到了泊松回归模型的形式.那么为什么说泊松回归模型是一种广义线性模型(GLM)呢?首先考虑线性回归模型:
y=Xβ+eη=Xβμ=E(y)
在广义线性模型中,我们不再要求
y服从
N(μ,σ2)而是服从于指数分布族,例如Normal;Poisson;Gamma;Binomial.现证明泊松回归属于指数分布族,首先考虑指数分布族的定义:
f(y;θ,ϕ)=exp{a(ϕ)(yθ−b(θ))+c(y,ϕ)}
现在我们回顾一下泊松回归模型的形式:
f(Y;λ)=exp{klog(λ)−λ−log(k!)}
记
θ=log(λ),λ=exp{θ},则有:
f(Y=k;θ,ϕ)=exp{yθ−exp{θ}−log(k!)}=exp{1yθ−exp{θ}+(−)log(k!)}
所以泊松回归模型也属于指数分布族参数估计
再给出了模型的形式以后,进一步需要对参数进行估计,采用极大似然估计法,从总体
(Y,X)中抽取容量为
n的随机样本,此时有似然函数:
L(β)=i=1∏nf(β;yi,xi)=i=1∏nexp{yiXiTβi−exp(XiTβi)−log(yi!)}
对数似然:
l(β)=i=1∑n[yixiβi−exp(xiβi)−log(yi!)]
对
βi求偏导:
∂βi∂l(β)=i=1∑n[yixi−xiexp(xiβi)]=0
上式方程组一般情况下并没有解析解,但我们可以通过牛顿拉夫逊迭代法求解:
F(β)=⎣⎢⎢⎢⎡∑i=1n[yi−exp(xiβi)]∑i=1n[yixi1−xi1exp(xiβi)]⋮∑i=1n[yixiq−xiqexp(xiβi)]⎦⎥⎥⎥⎤
其中
β0=1,x0=1.则
F(βi)关于
β的雅克比矩阵:
J(β)=∂βk∂βj∂2l(β)=−i=1∑nxixikexp(XTβ),k=0,1,⋯,q;j=0,1,⋯,q.
此时有Newton-Raphson算法:
β(m+1)=β(m)−[J(β(m))]−1F(β(m)),m=0,1,⋯
在这个迭代过程中,需要给定
β的初值和精度
ε,不断计算上述过程直至
∣β(m+1)−β(m)∣<ε收敛后结束.
同时附上MATLAB代码function F = PoissionRegressopt(b,Y,X) n = length(Y); F = 0; for k = 1:n F = F + Y(k)*X(k,:)*b - exp(X(k,:)*b);% - factorial(Y(k)); end F = - F; function F = PoissionF(b,Y,X) n = length(Y); F = zeros(size(b)); for k = 1:n F = F + Y(k)*X(k,:)'- exp(X(k,:)*b)*X(k,:)'; end function JM = PoissionJM(b,Y,X) n = length(Y); JM = zeros(size(b,1)); for k = 1:n JM = JM + exp(X(k,:)*b)*X(k,:)'*X(k,:); end function [ bm fv1,fv2] = PoissionNR(bm0,Y,X) itermax = 30; errstol = 1e-4; iters = 0; deltabm = ones(size(bm0)); bm1 = bm0 + deltabm; while (iters<itermax)||(max(abs(deltabm))>errstol) deltabm = pinv(PoissionJM(bm0,Y,X))*PoissionF(bm0,Y,X); bm1 = bm0 + deltabm; bm0 = bm1; iters = iters +1; end bm = bm0; fv1 = PoissionF(bm,Y,X); fv2 = PoissionRegressopt(bm,Y,X);
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算