广义线性模型[generalize linear model]是线性模型的扩展,通过联结函数建立响应变量的数学期望值与线性组合的预测变量之间的关系。其特点是不强行改变数据的自然度量,数据可以具有非线性和非恒定方差结构。是线性模型在研究响应值的非正态分布以及非线性模型简洁直接的线性转化时的一种发展。

1.指数分布族

指数族分布是指概率密度函数(或是离散型随机变量的概率分布)具有特定形式的一类分布的集合,其概率密度函数的形式如下:
f(yi,θi,ϕ)=exp⁡{yiθi−b(θi)a(ϕ)+h(yi,ϕ)}f(y_i,\theta_i,\phi)=\exp\left\{\cfrac{y_i\theta_i-b(\theta_i)}{a(\phi)}+h(y_i,\phi)\right\}f(yi​,θi​,ϕ)=exp{a(ϕ)yi​θi​−b(θi​)​+h(yi​,ϕ)}
常见的指数分布族有高斯分布,伯努利分布,多项分布,泊松分布,Γ\GammaΓ分布等。分别以高斯分布和伯努利分布为例来说明这个问题。
高斯分布:
f(yi,μi,σ)=exp⁡{−(yi−μi)22σ2−ln⁡(2πσ)}=exp⁡{yiμi−μi22σ2−yi22σ−ln⁡(2πσ)}f(y_i,\mu_i,\sigma)=\exp\left\{-\cfrac{(y_i-\mu_i)^2}{2\sigma^2}-\ln(\sqrt{2\pi}\sigma)\right\}=\exp\left\{\cfrac{y_i\mu_i-\frac{\mu_i^2}{2}}{\sigma^2}-\cfrac{y_i^2}{2\sigma}-\ln(\sqrt{2\pi}\sigma)\right\}f(yi​,μi​,σ)=exp{−2σ2(yi​−μi​)2​−ln(2π​σ)}=exp{σ2yi​μi​−2μi2​​​−2σyi2​​−ln(2π​σ)}
可以看出,θi=μi,b(θi)=μi22,a(ϕ)=σ2,h(yi,ϕ)=−yi22σ−ln⁡(2πσ)\theta_i=\mu_i,b(\theta_i)=\cfrac{\mu_i^2}{2},a(\phi)=\sigma^2,h(y_i,\phi)=-\cfrac{y_i^2}{2\sigma}-\ln(\sqrt{2\pi}\sigma)θi​=μi​,b(θi​)=2μi2​​,a(ϕ)=σ2,h(yi​,ϕ)=−2σyi2​​−ln(2π​σ)
伯努利分布:
p(yi,πi)=πiyi(1−πi)1−yi=exp⁡{yiln⁡πi1−πi+ln⁡(1−πi)}p(y_i,\pi_i)=\pi_i^{y_i}(1-\pi_i)^{1-y_i}=\exp\left\{y_i\ln\cfrac{\pi_i}{1-\pi_i}+\ln(1-\pi_i)\right\}p(yi​,πi​)=πiyi​​(1−πi​)1−yi​=exp{yi​ln1−πi​πi​​+ln(1−πi​)}
显然,θi=ln⁡πi1−πi,b(θi)=−ln⁡(1−πi),a(ϕ)=1,h(yi,ϕ)=0\theta_i=\ln\cfrac{\pi_i}{1-\pi_i},b(\theta_i)=-\ln(1-\pi_i),a(\phi)=1,h(y_i,\phi)=0θi​=ln1−πi​πi​​,b(θi​)=−ln(1−πi​),a(ϕ)=1,h(yi​,ϕ)=0
指数族分布的概率密度函数在R\mathbb{R}R上的积分应当为1,根据这个性质,进一步地能推出更多普适结论,比如,对密度函数关于θ\thetaθ求导:
0=∂∂θi∫Rf(yi,θi,ϕ)dyi=∫R∂∂θif(yi,θi,ϕ)dyi=1a(ϕ)∫R(yi−db(θi)dθi)f(yi,θi,ϕ)dyi=1a(ϕ)(μi−db(θi)dθi)0=\cfrac{\partial}{\partial\theta_i}\displaystyle{ \int_{\mathbb{R}} f(y_i,\theta_i,\phi) dy_i }=\displaystyle{\int_{\mathbb{R}} \frac{\partial}{\partial\theta_i}f(y_i,\theta_i,\phi) dy_i }=\cfrac{1}{a(\phi)}\displaystyle{ \int_{\mathbb{R}} \left(y_i-\frac{db(\theta_i)}{d\theta_i}\right)f(y_i,\theta_i,\phi) dy_i }=\cfrac{1}{a(\phi)}\displaystyle{ \left(\mu_i-\frac{db(\theta_i)}{d\theta_i}\right)}0=∂θi​∂​∫R​f(yi​,θi​,ϕ)dyi​=∫R​∂θi​∂​f(yi​,θi​,ϕ)dyi​=a(ϕ)1​∫R​(yi​−dθi​db(θi​)​)f(yi​,θi​,ϕ)dyi​=a(ϕ)1​(μi​−dθi​db(θi​)​)
得到指数分布族的期望μi=db(θi)dθi\mu_i=\cfrac{db(\theta_i)}{d\theta_i}μi​=dθi​db(θi​)​;在此基础上再对θi\theta_iθi​求一次导数:
0=∂2∂θi2∫Rf(yi,θi,ϕ)dyi=1[a(ϕ)]2(E(yi2)−μi2−a(ϕ)d2b(θi)dθi2)0=\cfrac{\partial^2}{\partial\theta_i^2}\displaystyle{ \int_{\mathbb{R}} f(y_i,\theta_i,\phi) dy_i }=\cfrac{1}{[a(\phi)]^2}\displaystyle{ \left(E(y_i^2)-\mu_i^2-a(\phi)\frac{d^2b(\theta_i)}{d\theta_i^2}\right)}0=∂θi2​∂2​∫R​f(yi​,θi​,ϕ)dyi​=[a(ϕ)]21​(E(yi2​)−μi2​−a(ϕ)dθi2​d2b(θi​)​)
即E(yi2)=μi2+a(ϕ)d2b(θi)dθi2E(y_i^2)=\mu_i^2+a(\phi)\cfrac{d^2b(\theta_i)}{d\theta_i^2}E(yi2​)=μi2​+a(ϕ)dθi2​d2b(θi​)​,再由方差公式知 var(yi)=a(ϕ)d2b(θi)dθi2=a(ϕ)dμidθi\text{var}(y_i)=a(\phi)\cfrac{d^2b(\theta_i)}{d\theta_i^2}=a(\phi)\cfrac{d\mu_i}{d\theta_i}var(yi​)=a(ϕ)dθi2​d2b(θi​)​=a(ϕ)dθi​dμi​​
整理一下上面所做的工作:通过推导,我们得到了指数分布族期望与方差的计算公式
μi=db(θi)dθi\mu_i=\cfrac{db(\theta_i)}{d\theta_i}μi​=dθi​db(θi​)​
var(yi)=a(ϕ)d2b(θi)dθi2=a(ϕ)dμidθi\text{var}(y_i)=a(\phi)\cfrac{d^2b(\theta_i)}{d\theta_i^2}=a(\phi)\cfrac{d\mu_i}{d\theta_i}var(yi​)=a(ϕ)dθi2​d2b(θi​)​=a(ϕ)dθi​dμi​​
这两个公式作为指数分布族的重要性质将会在下文用到,至于指数分布族的其他一些性质,比如充分性和完备性,由于超出本文范畴,此处不再介绍。

2.广义线性模型

普通线性模型具有的模型形式为:yi=xiTβ+εiy_i=\pmb{x}_i^T\pmb{\beta}+\varepsilon_iyi​=xxxiT​β​β​​β+εi​;建立普通线性模型是基于常数方差,独立性和高斯假设前提;如果误差项不满足常数方差和独立性假设,那么我们已经有一些以广义最小二乘法(GLS)为代表的解决方案;但是,如果数据不满足常数方差及高斯分布的假设呢?比如,如果响应变量yi∈{0,1}y_i\in\left\{0,1\right\}yi​∈{0,1},这是一个只含二值的问题,我们建立模型:yi=E(yi∣xi,β)+εiy_i=E(y_i|\pmb{x}_i,\pmb{\beta})+\varepsilon_iyi​=E(yi​∣xxxi​,β​β​​β)+εi​则误差项显然是离散型随机变量,而且它的方差随期望的变化而变化,当然,我们仍然可以用线性模型来拟合数据,然后用GLS学习参数取值,不过由于真实数据不再具有线性结构,所以由GLS强行用线性函数拟合得到的估计量不再是BLUE估计量,另一方面,这样得到的模型鲁棒性不够的,容易受新样本的影响,而且预测时,由线性模型计算出的预测值可能远远大于1或者小于0.
考虑到线性模型在解决非线性结构数据时存在的这些问题,可以利用一个连接函数g(⋅)g(\cdot)g(⋅),然后建立模型yi=g(xiTβ)+εiy_i=g(\pmb{x}_i^T\pmb{\beta})+\varepsilon_iyi​=g(xxxiT​β​β​​β)+εi​,比如对于上文提到的二值问题,可以取g(x)=sigmoid(x)g(x)=\text{sigmoid}(x)g(x)=sigmoid(x).指数分布族为这类广义线性模型(GLM)中连接函数的寻找提供了一个一般的思路。
为了说明这个问题,先以最简单的普通线性模型为例。当响应变量服从高斯分布时,我们假设响应变量的期望是回归变量的线性函数,即μi=xiTβ\mu_i=\pmb{x}_i^T\pmb{\beta}μi​=xxxiT​β​β​​β,将高斯分布的密度函数化成指数族的形式后可以看到θi=μi\theta_i=\mu_iθi​=μi​,即θi=xiTβ\theta_i=\pmb{x}_i^T\pmb{\beta}θi​=xxxiT​β​β​​β,将这一假设拓展到广义线性模型中也是可行的,因为在文章的第一部分已经推导出:μi=db(θi)dθi\mu_i=\cfrac{db(\theta_i)}{d\theta_i}μi​=dθi​db(θi​)​,这说明μi\mu_iμi​的取值由θi\theta_iθi​唯一确定而与尺度化参数ϕ\phiϕ无关,于是,可以取连接函数g(θi)=db(θi)dθig(\theta_i)=\cfrac{db(\theta_i)}{d\theta_i}g(θi​)=dθi​db(θi​)​,根据线性假设有μi=g(xiTβ)\mu_i=g(\pmb{x}_i^T\pmb{\beta})μi​=g(xxxiT​β​β​​β),所以我们可以建立模型yi=g(xiTβ)+εiy_i=g(\pmb{x}_i^T\pmb{\beta})+\varepsilon_iyi​=g(xxxiT​β​β​​β)+εi​.
以上文中提到的二值问题为例,我们来建立它的广义线性模型。对于二值问题最常用的假设就是认为它服从伯努利分布,根据第一部分对伯努利分布指数族形式的推导有θi=ln⁡πi1−πi\theta_i=\ln\cfrac{\pi_i}{1-\pi_i}θi​=ln1−πi​πi​​,由于伯努利分布的期望等于取1的概率,所以θi=ln⁡μi1−μi\theta_i=\ln\cfrac{\mu_i}{1-\mu_i}θi​=ln1−μi​μi​​,再由θi=xiTβ\theta_i=\pmb{x}_i^T\pmb{\beta}θi​=xxxiT​β​β​​β,得μi=11+exp⁡(−xiTβ)\mu_i=\cfrac{1}{1+\exp(-\pmb{x}_i^T\pmb{\beta})}μi​=1+exp(−xxxiT​β​β​​β)1​,所以合适模型可以为yi=11+exp⁡(−xiTβ)+εiy_i=\cfrac{1}{1+\exp(-\pmb{x}_i^T\pmb{\beta})}+\varepsilon_iyi​=1+exp(−xxxiT​β​β​​β)1​+εi​,这就得到了经典的logstic回归模型。
相信读者通过以上过程已经清楚了应该如何建立一个广义线性模型,模型建立之后,接下来的问题就是参数的学习了,广义线性模型用到负对数似然损失函数学习参数的最大似然估计量(MLE),使用牛顿—拉普森算法进行数值求解,可以推导出GLM参数估计的迭代加权最小二乘(IRLS)算法。

3.迭代加权最小二乘(IRLS)算法

对数似然函数
ln⁡L(β)=1a(ϕ)∑i(yiθi−b(θi))+∑ih(yi,ϕ)\ln L(\pmb{\beta})=\displaystyle{\frac{1}{a(\phi)}\sum_i\left(y_i\theta_i-b(\theta_i)\right)+\sum_ih(y_i,\phi)}lnL(β​β​​β)=a(ϕ)1​i∑​(yi​θi​−b(θi​))+i∑​h(yi​,ϕ)
令对数似然函数关于β\pmb{\beta}β​β​​β的导数等于0
∂ln⁡L(β)∂β=∑i∂ln⁡L(β)∂θi∂θi∂β=1a(ϕ)∑i(yi−μi)xi=0\cfrac{\partial\ln L(\pmb{\beta})}{\partial \pmb{\beta}}=\displaystyle{\sum_i\frac{\partial\ln L(\pmb{\beta})}{\partial\theta_i}\frac{\partial \theta_i}{\partial \pmb{\beta}}=\frac{1}{a(\phi)}\sum_i\left(y_i-\mu_i\right)\pmb{x}_i=\pmb{0}}∂β​β​​β∂lnL(β​β​​β)​=i∑​∂θi​∂lnL(β​β​​β)​∂β​β​​β∂θi​​=a(ϕ)1​i∑​(yi​−μi​)xxxi​=000
可以将方程写成矩阵的形式
XT(y−μ)=0\pmb{X}^T(\pmb{y}-\pmb{\mu})=\pmb{0}XXXT(y​y​​y−μ​μ​​μ)=000
这个方程称为得分方程,如果是线性模型,即μ=Xβ\pmb{\mu}=\pmb{X\beta}μ​μ​​μ=Xβ​Xβ​​Xβ,这时得分方程等价于正规方程,于是很容易对这个方程求解。但是对一般的广义线性模型,得分方程关于参数β\pmb{\beta}β​β​​β是一个非线性方程组,因此只能用近似逼近的方法求解。
为了求解得分方程,我们希望用一个线性表达式来代替它的非线性部分,可以取ηi\eta_iηi​满足:
yi−μi=dμidθi(ηi−θi)y_i-\mu_i =\cfrac{d\mu_i}{d\theta_i}(\eta_i-\theta_i)yi​−μi​=dθi​dμi​​(ηi​−θi​)
根据第一部分的推导
dμidθi=var(yi)a(ϕ)\cfrac{d\mu_i}{d\theta_i}=\cfrac{\text{var}(y_i)}{a(\phi)}dθi​dμi​​=a(ϕ)var(yi​)​
于是得分方程可化为
∑ivar(yi)a(ϕ)(ηi−θi)xi=0\displaystyle{\sum_i\cfrac{\text{var}(y_i)}{a(\phi)}\left(\eta_i-\theta_i\right)\pmb{x}_i=\pmb{0}}i∑​a(ϕ)var(yi​)​(ηi​−θi​)xxxi​=000
令V=1a(ϕ)diag(var(y1),⋯ ,var(yn))\pmb{V}=\cfrac{1}{a(\phi)}diag(\text{var}(y_1),\cdots,\text{var}(y_n))VVV=a(ϕ)1​diag(var(y1​),⋯,var(yn​)),则
XTV(η−Xβ)=0\pmb{X}^T\pmb{V}(\pmb{\eta}-\pmb{X\beta})=\pmb{0}XXXTVVV(η​η​​η−Xβ​Xβ​​Xβ)=000
很明显β^=(XTVX)−1XTVη\widehat{\pmb{\beta}}=(\pmb{X}^T\pmb{VX})^{-1}\pmb{X}^T\pmb{V}\pmb{\eta}β​β​​β​=(XXXTVXVXVX)−1XXXTVVVη​η​​η. all right…看上去似乎已经估计出参数取值了,不过好像又有点不太对劲。仔细检查发现我们并不知道V\pmb{V}VVV和η\pmb{\eta}η​η​​η,注意到ηi=θi+dθidμi(yi−μi)\eta_i=\theta_i+\cfrac{d\theta_i}{d\mu_i}(y_i-\mu_i)ηi​=θi​+dμi​dθi​​(yi​−μi​),要求V\pmb{V}VVV和η\pmb{\eta}η​η​​η,就必须得知道参数β\pmb{\beta}β​β​​β的取值,这听起来令人沮丧,不过好在有迭代法这一神器,不管收不收敛,试一试总不会有问题。事实证明,只要初值选取合适,在本问题上使用迭代法是可行的。说了这么多废话,现将算法描述如下:
输入:样本(x1,y1),⋯ ,(xn,yn)(\pmb{x}_1,y_1),\cdots,(\pmb{x}_n,y_n)(xxx1​,y1​),⋯,(xxxn​,yn​)
输出:参数估计β^\widehat{\pmb{\beta}}β​β​​β​
1.初始化:β^←β0\widehat{\pmb{\beta}}\leftarrow\pmb{\beta}_0β​β​​β​←β​β​​β0​;
2.for i in 1:n,计算:
θ^i←xiTβ^\widehat{\theta}_i\leftarrow\pmb{x_i}^T\widehat{\pmb{\beta}}θi​←xi​​xi​​​xi​Tβ​β​​β​,
μ^i←g(θ^i)\widehat{\mu}_i\leftarrow g(\widehat{\theta}_i)μ​i​←g(θi​),
Vii←varyi∣θ^i(yi)a(ϕ)V_{ii}\leftarrow\cfrac{\text{var}_{y_i|\widehat{\theta}_i}(y_i)}{a(\phi)}Vii​←a(ϕ)varyi​∣θi​​(yi​)​;
3.计算:η←θ^+V−1(y−μ^)\pmb{\eta}\leftarrow\widehat{\pmb{\theta}}+\pmb{V}^{-1}(\pmb{y}-\widehat{\pmb{\mu}})η​η​​η←θθθ+VVV−1(y​y​​y−μ​μ​​μ​);
4.更新:β^←(XTVX)−1XTVη\widehat{\pmb{\beta}}\leftarrow(\pmb{X}^T\pmb{VX})^{-1}\pmb{X}^T\pmb{V}\pmb{\eta}β​β​​β​←(XXXTVXVXVX)−1XXXTVVVη​η​​η;
5.重复2到5步,直至算法收敛.

4.IRLS为什么有效?

不少读者读到这里可能会产生一个疑惑,那就是在推导IRLS算法过程中一个关键步骤yi−μi=dμidθi(ηi−θi)y_i-\mu_i =\cfrac{d\mu_i}{d\theta_i}(\eta_i-\theta_i)yi​−μi​=dθi​dμi​​(ηi​−θi​)似乎显得有些天马行空,ηi−θi\eta_i-\theta_iηi​−θi​是关于β\pmb{\beta}β​β​​β的线性函数通过变换后可以“解出”β\pmb{\beta}β​β​​β,这点挺好理解,但是为什么前面的系数是dμidθi\cfrac{d\mu_i}{d\theta_i}dθi​dμi​​而不是其他,要知道这个系数直接关系到权重矩阵V\pmb{V}VVV,取不同的系数参数的估计结果就会有不同的值。直观上看,这个表达式形式上类似于连接函数在θi\theta_iθi​处的一阶泰勒展开,但是g(ηi)g(\eta_i)g(ηi​)一般是不等于yiy_iyi​的,否则的话我们就可以认为这一步是利用泰勒公式取的一个线性近似。实际上IRLS可以看做由牛顿-拉普森算法推导出来的。
下面我们利用牛顿-拉普森算法来求解得分方程,具体的过程就不写了(网上一搜一堆介绍牛顿算法的,也可以参考我之前的博文),直接写出算法的更新步骤:
β^←β^+(XTVX)−1XT(y−μ^)\widehat{\pmb{\beta}}\leftarrow\widehat{\pmb{\beta}}+(\pmb{X}^T\pmb{VX})^{-1}\pmb{X}^T(\pmb{y}-\widehat{\pmb{\mu}})β​β​​β​←β​β​​β​+(XXXTVXVXVX)−1XXXT(y​y​​y−μ​μ​​μ​)
在IRLS中将η←θ^+V−1(y−μ^)\pmb{\eta}\leftarrow\widehat{\pmb{\theta}}+\pmb{V}^{-1}(\pmb{y}-\widehat{\pmb{\mu}})η​η​​η←θθθ+VVV−1(y​y​​y−μ​μ​​μ​)代入到更新步骤β^←(XTVX)−1XTVη\widehat{\pmb{\beta}}\leftarrow(\pmb{X}^T\pmb{VX})^{-1}\pmb{X}^T\pmb{V}\pmb{\eta}β​β​​β​←(XXXTVXVXVX)−1XXXTVVVη​η​​η中,利用θ^=Xβ^\widehat{\pmb{\theta}}=\pmb{X}\widehat{\pmb{\beta}}θθθ=XXXβ​β​​β​同样可以得到
β^←β^+(XTVX)−1XT(y−μ^)\widehat{\pmb{\beta}}\leftarrow\widehat{\pmb{\beta}}+(\pmb{X}^T\pmb{VX})^{-1}\pmb{X}^T(\pmb{y}-\widehat{\pmb{\mu}})β​β​​β​←β​β​​β​+(XXXTVXVXVX)−1XXXT(y​y​​y−μ​μ​​μ​)
这就说明了IRLS算法和Newton-Raphson算法是等价的。

5.IRLS算法与GLS算法

记W=diag(var(η1),⋯ ,var(ηn))\pmb{W}=diag(\text{var}(\eta_1),\cdots,\text{var}(\eta_n))WWW=diag(var(η1​),⋯,var(ηn​)),根据ηi\eta_iηi​的定义
var(ηi)=var[a(ϕ)var(yi)(yi−μi)]=a(ϕ)2var(yi)\text{var}(\eta_i)=\text{var}\left[\cfrac{a(\phi)}{\text{var}(y_i)}(y_i-\mu_i)\right]=\cfrac{a(\phi)^2}{\text{var}(y_i)}var(ηi​)=var[var(yi​)a(ϕ)​(yi​−μi​)]=var(yi​)a(ϕ)2​
故V=a(ϕ)W−1\pmb{V}=a(\phi)\pmb{W}^{-1}VVV=a(ϕ)WWW−1
β^IRLS=(XTW−1X)−1XTW−1η\widehat{\pmb{\beta}}_{IRLS}=(\pmb{X}^T\pmb{W}^{-1}\pmb{X})^{-1}\pmb{X}^T\pmb{W}^{-1}\pmb{\eta}β​β​​β​IRLS​=(XXXTWWW−1XXX)−1XXXTWWW−1η​η​​η
如果直接对广义线性模型的线性部分用广义最小二乘法学习参数结果会是怎样呢?
记θi∗=g−1(yi)\theta_i^*=g^{-1}(y_i)θi∗​=g−1(yi​),则(x1,θ1∗),⋯ ,(xn,θn∗)(\pmb{x}_1,\theta_1^*),\cdots,(\pmb{x}_n,\theta_n^*)(xxx1​,θ1∗​),⋯,(xxxn​,θn∗​)可以看成线性模型θ=xTβ+ε\theta=\pmb{x}^T\pmb{\beta}+\varepsilonθ=xxxTβ​β​​β+ε的nnn个观测,利用GLS算法估计β\pmb{\beta}β​β​​β,记U=diag(var(θ1∗),⋯ ,var(θn∗))\pmb{U}=diag(\text{var}(\theta_1^*),\cdots,\text{var}(\theta_n^*))UUU=diag(var(θ1∗​),⋯,var(θn∗​)),则:
β^GLS=(XTU−1X)−1XTU−1θ∗\widehat{\pmb{\beta}}_{GLS}=(\pmb{X}^T\pmb{U}^{-1}\pmb{X})^{-1}\pmb{X}^T\pmb{U}^{-1}\pmb{\theta^*}β​β​​β​GLS​=(XXXTUUU−1XXX)−1XXXTUUU−1θ∗θ∗θ∗
将g−1(yi)g^{-1}(y_i)g−1(yi​)在μi\mu_iμi​处一阶泰勒展开有
θi∗≈θi+∂θi∂μi(yi−μi)=ηi\theta_i^*\approx\theta_i+\cfrac{\partial\theta_i}{\partial\mu_i}(y_i-\mu_i)=\eta_iθi∗​≈θi​+∂μi​∂θi​​(yi​−μi​)=ηi​
故β^IRLS≈β^GLS\widehat{\pmb{\beta}}_{IRLS}\approx\widehat{\pmb{\beta}}_{GLS}β​β​​β​IRLS​≈β​β​​β​GLS​,即IRLS与GLS是渐进等价的。

6.后记

GLM的好处在于建立模型时结合了响应变量的原始分布信息,其响应变量的分布必须是指数族分布,它是当响应变量不满足正态分布和方差不变假设时,区别于GLS的另一种变量变换方法,当然,这种方法也不是万能的,面对具体问题时,GLM只是提供了一种建模思路,而模型是否适用还得做进一步检验,很多情况下,GLM对数据拟合效果不佳,这时候应该尝试使用其他模型。

详解广义线性模型的来龙去脉相关推荐

  1. 【摄像头与成像】长文详解RAW图的来龙去脉

    本文承接上一篇<数字成像系统概述>,将继续延伸数字成像系统的相关概念,但在延伸之前需要详细了解作为整个系统输入的Raw图. 作者 | Tony 编辑 | 言有三 本篇文章主要详细阐述Raw ...

  2. 【Android 性能优化】—— 详解内存优化的来龙去脉

    本文以独家授权于任玉刚公众号玉刚说,详情请见-https://mp.weixin.qq.com/s/XILFalxJsbGJjx-ZOEDi7g Android 高手核心知识点笔记(不断更新中

  3. 机器学习(五)线性模型详解

    线性模型 线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数,既可以用于分类 也可以用于回归.从数学角度讲,回归就是用超平面做拟合,分类就是用超平面做分割. 谈及线性模 ...

  4. 图像仿射变换原理1:齐次坐标来龙去脉详解

    ☞ ░ 老猿Python博文目录:https://blog.csdn.net/LaoYuanPython ░ 仿射变换博文传送门(带星号的为付费专栏文章): *图像仿射变换原理1:齐次坐标来龙去脉详解 ...

  5. 广义典型相关分析_重复测量数据分析及结果详解(之二)——广义估计方程

    上一篇文章主要介绍了重复测量方差分析的基本思想是什么.它能做什么.怎么做.结果怎么解释,这几个问题.最后同时指出重复测量方差分析还是有一定局限,起码不够灵活.所以本文在上一篇文章基础上继续介绍医学重复 ...

  6. [Python从零到壹] 十一.数据分析之Numpy、Pandas、Matplotlib和Sklearn入门知识万字详解(1)

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  7. 三因素方差分析_详解方差分析表(ANOVA)(一) —— 线性回归与矩阵代数.回顾

    导读:在初学回归分析时,方差分析表(ANOVA)往往由线性回归引入.方差分析表在线性模型的显著性检验.模型选择方面有重要的应用,因此理解其各个表项的含义,以及这些表项值从何而来,对于我们能正确应用AN ...

  8. python数据挖掘课程】二十一.朴素贝叶斯分类器详解及中文文本舆情分析

    #2018-04-06 13:52:30 April Friday the 14 week, the 096 day SZ SSMR python数据挖掘课程]二十一.朴素贝叶斯分类器详解及中文文本舆 ...

  9. 2.2w字长文详解推荐系统之数据与特征工程,码起来慢慢看

    作者丨gongyouliu 编辑丨lily 来源 | 大数据与人工智能(ID:ai-big-data) [导读]推荐系统是机器学习的一个子领域,并且是一个偏工程化.在工业界有极大商业价值的方向.大量应 ...

最新文章

  1. 微软资深算法工程师为AI初学者量身打造的机器学习入门书上市啦!
  2. 二分图行列匹配--- hdu2119,hdu1498
  3. 风控策略分析中最重要的五步心法
  4. HDU1215 七夕节【水题】
  5. 用大前端技术实现的一款仿Boss直聘app(已开源)
  6. sourceMap到底是个啥玩意?
  7. idea时间重置插件
  8. CLion配置STM32(保姆级教程)
  9. word文档中怎么输入公式符号
  10. 周博通 | 阿里开源首个 DL 框架、4000台服务器真实数据集;明年1月开源Blink
  11. 土法炼钢:怎么实现一个简单的B+Tree In-Disk
  12. 关于小程序移动端调用微信API及腾讯地图实例,获取当前位置、逆地址解析、路线规划、地图展示
  13. 计算机网络 中 网络层
  14. 镜像站(整理各个镜像站资源)
  15. Java核心技术(Java白皮书)卷Ⅰ 第一章 Java程序设计概述
  16. 基于spring boot的奖助学金评审系统毕业设计源码031035
  17. [转帖]粤语语系分类
  18. yolo v4 weights 权重
  19. IP地址和子网掩码换算
  20. CF中dns服务器简单配置

热门文章

  1. Unity Render Texture 的使用
  2. Navicat导出链接查看数据库明文密码
  3. (一)python-申请评分卡模型
  4. 器件——TCRT5000参数与实际设计应用
  5. drozer 测试总结
  6. 金蝶云 python脚本调试
  7. VScode交叉调试
  8. 20X36 FCPX插件卡通人物角色场景解说转场图标MG动画元素包 Brightly V3
  9. Matlab实现图像识别(五)
  10. java说课_Java说课演示稿.ppt