R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言教程

 

上周在课程中,我们了解了广义线性模型的理论,强调了两个重要组成部分

  • 链接函数(这实际上是在预测模型的关键)

  • 分布或方差函数

考虑数据集

­lin.mod = lm(dist~speed,data=cars)

线性模型 

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_02

假设残差独立且具有相同的方差。如果我们可视化线性回归,会看到:

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_03

 

这里的想法(在GLM中)是假设

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言教程_04

它将基于某些误差项生成与先前描述的模型相同的模型。该模型可以在下面看到,

C=trans3d(c(x,x),c(y,rev(y)),c(z,z0),mat)
polygon(C,border=NA,col="light blue",density=40)
C=trans3d(x,y,z0,mat)
lines(C,lty=2)
C=trans3d(x,y,z,mat)
lines(C,col="blue")}

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_05

 

这里确实有两部分:平均值的线性增加  R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言教程_06 和正态分布的恒定方差  R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_07

另一方面,如果我们假设泊松回归,

poisson.reg = glm(dist~speed,data=cars,family=poisson(link="log"))

我们有这样的结果

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_08

 

有两件事同时发生了变化:我们的模型不再是线性的,而是指数的R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_09,并且方差也随着解释变量的增加而增加R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_10,因为有了泊松回归,

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_11

如果改编前面的代码,我们得到

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言教程_12

 

问题是,当我们从线性模型引入Poisson回归时,我们改变了两件事。因此,让我们看看当我们分别更改两个组件时会发生什么。首先,我们可以使用高斯模型来更改链接函数,但是这次是乘法模型(具有对数链接函数)

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言开发_13

 

这次是非线性的。或者我们可以在Poisson回归中更改链接函数,以获得线性模型,但异方差

R语言中GLM(广义线性模型),非线性和异方差可视化分析_R语言教程_14

 

因此,这基本上就是GLM的目的。