指数分布族函数与广义线性模型(Generalized Linear Models,GLM)

目录

1 综述

2 指数分布族

3 广义线性模型

3.1 定义

3.2 为什么引入GLM

3.3 连接函数的获取

4 常见连接函数求解及对应回归

4.1 伯努利分布 > Logistics回归

4.2 多项分布 > softmax回归

4.2.1 softmax理解

4.2.2 softmax多项分布解释

4.3 正态分布> 线性回归

5 广义线性模型的计算


1 综述

        广义线性模型不是一个模型,而是一类模型的总称,当一个模型属于指数分布族时,我们认为该模型是广义线性模型的一个特例,每一个特定的广义线性模型对应一个特定的分布,比如我们现在提到的线性回归模型,对应的是正态分布

        与之相似的,我们熟悉的逻辑斯蒂回归也是广义线性模型的特例,其对应的分布是伯努利分布。其他的还有泊松回归,对应泊松分布等。

        广义线性模型中,每一个分布都对应存在一个正则联结函数(Canonical Link Function),这一函数的反函数可以将线性函数映射到该分布的期望。

        举个例子,通过正态分布的正则联结函数的反函数,我们可以将线性模型映射到正态分布的期望值μ,这正是我们所熟悉的线性回归模型中所做的事情。

        对于其他的模型,比如逻辑斯蒂回归,正是通过 sigmoid 函数将其映射到了伯努利分布的期望P其实说到这里,答案已经出来了,为什么线性回归要求假设因变量符合正态分布?这是因为线性回归对一个新的数据的预测值,其本身就是正态分布的期望,如果我们所使用的数据本身不符合正态分布,那么强行使用线性回归显然会得到一个很差的结果

        广义线性模型就是通过三个假设将指数分布族转换成对应的机器学习模型。

        常见的线性回归、logistic 回归、Softmax模型等等都是属于广义线性模型。可以由指数分布族和广义线性模型的三个假设推导出sigmoid函数。

        1、首先很多我们平常接触的概率分布都可以被表示成为指数形式,也就是很多概率分布属于指数分布族。在指数分布族格式中,一组确定的BAT三个参数(b,a,T),对应一个概率分布
        2、广义线性模型的三个假设:(5个参数)

  • y|x,θ属于某个概率分布:给定x的前提下,y属于谁(确定三个参数)
  • h = E[t(y)|x] 目标函数是充分统计量的期望(因变量的条件期望
  • η = θX 因为线性模型,自然参数=参数和x的线性组合(自变量的线性组合)

        3、根据以上,就能得出h和η的关系,得到各个模型

2 指数分布族

        即:能够化为如上表达式的函数可以称之为指数分布族函数

3 广义线性模型

3.1 定义

        在分类和回归问题中,我们通过构建一个关于 x 的模型来预测 y 。这种问题可以利用广义线性模型(Generalized linear models,GMLs)来解决。构建广义线性模型我们基于三个假设,也可以理解为我们基于三个设计决策,这三个决策帮助我们构建广义线性模型:

        1、第一个假设解释

        先验分布属于指数分布族中的某一个分布。

        2、第二个假设解释(核心)

        η 以不同的连接函数其它概率分布函数中的参数发生联系,从而得到不同的模型。广义线性模型正是将指数分布族中的所有成员(每个成员正好有一个这样的联系)都作为线性模型的扩展,通过各种非线性的连接函数将线性函数映射到其他空间,从而扩大了线性模型可解决的问题。

        对于 h = E(y|x) 的公式解释

        例如在逻辑回归中:

假设一个点x1 =(1,5,1),y1 = 1,假设属于伯努利分布
p(y=1|(1,5,1)) = 0.7
p(y=0|(1,5,1)) = 0.3
h(x1) = E(y|x1) = p( y=1 | (1,5,1) ) × 1 + p( y=0 | (1,5,1) ) × 0 = 0.7

        3、第三个假设解释

           
        这是一个设计策略,默认 θ 和 成线性关系,自然分布参数 η 可以表示为 θx 成线性关系。

3.2 为什么引入GLM

        “回归”一般是用于预测样本的值,这个值通常是连续的。但是受限于其连续的特性,一般用它来进行分类的效果往往很不理想。为了保留线性回归”简单效果有不错“的特点,又想让它能够进行分类,因此需要对预测值再做一次处理。这个多出来的处理过程,就是GLM所做的最主要的事。而处理过程的这个函数,我们把它叫做连接函数

         如下图是一个广义模型的流程:

          

        图中,当一个处理样本的回归模型线性模型,且连接函数满足一定特性(特性下面说明)时,我们把模型叫做广义线性模型。因为广义模型的最后输出可以为离散,也可以为连续,因此,用广义模型进行分类、回归都是可以的

        但是为什么线性回归是广义线性模型的子类呢,因为连接函数是f(x) = x本身的时候,也就是不做任何处理时,它其实就是一个线性回归啦。

        所以模型的问题就转化成获得合适的连接函数?以及有了连接函数,怎么求其预测函数

3.3 连接函数的获取

       刚才说了,只有连接函数满足一定特性才属于广义线性模型。特性是什么呢?先简单描述下背景。

       在广义线性模型中,为了提高可操作性,因此限定了YX的分布必须满足指数族分布

            

        其中即为上图所提到的回归模型输出的连续值,也就是说

        有上述条件,满足指数族分布的样本,就可以通过来E(T(Y))得到了,也就是上图连接函数输出值

        PS:对于Y,X不满足指数族分布的,只不过不能用E(T(Y))来描述成,其也不属于广义线性模型,但不是不可计算。

        从图中我们可以看到回归模型输出的连续值)为连接函数的输入,而为函数的输出。所以有这么一个公式:

        所以求连接函数的步骤就变成:

  1. 把Y、X所满足的分布拼凑成指数族分布形式
  2. 在指数族分布形式中获得 T(Y)的函数形式和回归模型输出的连续值,连接函数的输入)的值。
  3. 算出 E(T(Y))和的关系,并把代入中,获得连接函数,并得到

        有了连接函数和,就可以用最大似然估计、梯度下降算法等来进行后一步的计算了。

4 常见连接函数求解及对应回归

4.1 伯努利分布 > Logistics回归

为什么逻辑斯蒂回归的输出值可以作为概率?

机器学习算法(一):逻辑回归模型(Logistic Regression, LR)_意念回复的博客-CSDN博客_逻辑回归模型

       因为逻辑斯蒂回归(Logistic Regression)的 sigmoid 函数是符合广义线性模型(General Linear Model)的伯努利分布(Bernoulli Distribution)的规范联系函数(Canonical Link Function)的反函数,sigmoid 函数将线性函数映射到伯努利分布的期望。

       伯努利分布只有0、1两种情况,因此它的概率分布可以写成:

                

      写成指数族分布的形式有:

                  

       这样在指数族分布()中:

  • B(y) = 1;
  • T(Y) = y;

       这样E(T(Y))= E(y)

       由于伯努利分布是离散分布,因此它的期望:

               

      所以:

                

      又因为:

                 

       回归模型输出的连续值,与上式联立,即

                  

      化简得到:

                 

       用这个预测函数的回归,我们把它叫做Logistics回归

       Logistics的回归的使用范围很广,例如判断是否垃圾邮件这种二分类问题上经常出现。

4.2 多项分布 > softmax回归

4.2.1 softmax理解

        假设有n个数x1、x2。。。xn,我们从中随机抽取一个数,请问这个数是什么?

        答案显然是不知道的,但是我们可以回答,这个数最有可能是什么。

        所以我们计算一下抽到xi的概率为p(xi),这样p(xi)占的比重为:

                    

        那我们可以写上答案为 max { p(x1), p(x2) ... p(xi) ... p(xn) } 所对应的那个x

        但是呢,直接用max { p(xi) } ,其在取值域存在不可导点的,不利于计算。

        因此为了消除它的不可导点,我们用了一种对概率曲线柔化后的max方式进行模拟,这种柔化的max我们把它叫做softmax。大概模拟的示意如图:

                         

         这种软化的方式是对概率指数化

                             

        所以结果变成求max { exp(p(xi)) } ,以这种概率形式来对线性模型输出值做概率计算,并通过选取最大概率的方式来进行分类的模型,我们称之为softmax模型

4.2.2 softmax多项分布解释

        刚才提了一个稍微好理解的方式。其实softmax多项分布息息相关的,我们用最客观的方式推导一下。多项分布其实是伯努利分布的一个扩展,其取值可以从 1、2....k 中取,可以简单地建模为如下:

                

        第1个数为1,其他数全为0,记为1

        第k个数为1,其他数全为0,记为2

        这样就对 1,2....k进行了区分。

        因此它的概率分布如下:

              

        其中的意思为:y==k ? 1: 0 ,即y 等于k时输出1,否则为0。

        因此对应在指数族分布中,其:

  • B(y) = 1

        所以有:

                 

                

        对上面等式从1至k相加可得:

                     

        这样我们就得到了的一般形式。

                     

                     

        而对于其期望和预测函数:

                   

        可见,结果和4.2.1中softmax函数相同。

        Softmax的回归可以说是最常用的k分类器之一。

4.3 正态分布> 线性回归

证明两点:

  • 线性回归模型属于广义线性模型,即线性回归模型属于指数分布族
  • 找到正态分布的正则联系函数

(1)证明问题一

        首先,指数分布族的定义表示,可以转换为以下形式的任何模型,就属于指数分布族:

        

        现在,如果我们能够将正态分布的概率密度函数(PDF)转换为以上形式,就证明了正态分布属于指数分布族:

        将上面两个式子进行对比,就可以发现我们已经将正态分布PDF转换为指数分布族的形式了,其中: 

        由此,我们证明了正态分布属于指数分布族。

(2)证明问题二

        接下来,我们需要找到正态分布的正则联系函数。

要回答这一个问题,首先需要了解一下广义线性模型的假设:

  • 假设1:实际上在上文中已经运用到,y的PDF属于指数分布族,也就是我们刚才所验证的,正态分布PDF属于指数分布族
  • 假设2:y的估计值为T(y)的期望(是的,这也是一个假设,这就是为什么刚才提到,我们在做线性回归的时候,实际上是将对新的数据的估计映射到正态分布的期望。)
  • 假设3:广义线性模型中的线性因素为η,我们称之为自然参数,  ,而这个自然参数正是我们的线性回归模型。

        现在,我们来看假设2,y的估计值为T(y)的期望,在刚才的推导中,我们知道  ,同时,我们也知道在正态分布中,方差  并不影响我们求y的期望,因此我们可以假设  ,这样,当我们求y的估计值的时候,实际上就是在求y的期望,而在正态分布中,y的期望  。 

        最后,我们来看假设3,我们已经知道  ,转换后可得  ,也就是线性回归模型的预测值直接映射到了正态分布的期望,这样,我们也就得到结论了:

        正态分布的联结函数没有对线性回归的预测值做转换。

5 广义线性模型的计算

        有了这个概率密度函数,我们对其求对数似然函数:

                 

        其损失函数J也就是负的最大似然函数。对最大似然函数求梯度可得:

                    

        这个式子是一个广义线性模型通用的公式,也就是对于线性模型Logistics等都适用。用此梯度不断对损失函数进行梯度下降,得到损失函数的最小值,并取出对应参数即可。

附一个常见连接函数表:

机器学习之回归(二):广义线性模型(GLM) - 云+社区 - 腾讯云

指数分布族和广义线性模型 - 简书

  • 7
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值