第四集 牛顿方法

来源:互联网 发布:软件外包公司好不好 编辑:程序博客网 时间:2024/05/21 10:45

课程大纲

 

牛顿方法(用来代替梯度上升对logistic回归进行拟合)

指数分布族(exponential family)

广义线性模型

 

牛顿方法

牛顿方法是用来代替梯度上升对logistic回归进行拟合的算法,它的优点是,针对特征种类不是很多的情况,计算速度比梯度上升算法快很多。


牛顿方法如上图所示。假设要求一个函数,设定一起点,过图像上这一点作切线,交横轴于;重复以上步骤,直到找到可以使的值。设之间的距离为,则这个过程可以表示为:

                           

依照最后一个式子经过多次迭代后,就可以解出值。                            

将牛顿方法用于logistic回归拟合。因为logistic拟合运用最大似然估计,要求解的最大值,我们可以通过寻找可以使的点来达到寻找最大值的目的。而寻找使的点可以使用牛顿方法。

                               

其中H为Hessian矩阵,它的形式为。在这里应用牛顿方法,每一次迭代都需要计算H的逆,而H为n*n矩阵。所以不适用于特征种类很多即n很大的情况。

                                       

                                        

指数分布族

 

指数分布族是指概率分布满足这种形式的分布的集合。其中称为自然参数,T(y)称为充分统计量.(通常T(y)=y,但不是所有情况)。只有0,1两种取值的伯努利分布和高斯分布是指数分布族的特例。一般确定一个指数分布族需要知道a,b,T,下面分别求出伯努利分布和高斯分布的a,b,T。

对于伯努利分布:

       

对于高斯分布:                     

从上面的推导可以看出,伯努利分布与高斯分布都是指数分布族的特例。

 

广义线性模型(GLM)

 

在讨论广义线性模型问题之前,先设定一些假设或者说是设计决策:

(1)

(2)given x,goal  is  to output (期望);want

(3)

对于伯努利分布,对于特定的,算法输出,由于伯努利分布中,y只有0和1两种取值,所以期望

对于高斯分布,有空回来再算,先挖个坑。

两个概念,了解即可,用的不多。称为正则响应函数;称为正则关联函数。

  

多项式分布(最难的,相当于logistic回归的推广)

在多项式分布中,y的取值不再像logistic回归那样只有0和1两种选择,而是有1到k这k种选择。相应的,参数也有k个,分别是。但要注意,这k个参数相加起来的值为1,这就相当于是冗余的,所以一共有k-1个参数就够了,可以用其他参数表示。需要注意的几点:

                     

那么问题来了,T(y)到底是什么形式呢?看下来:

                  

T(y)均为k-1维向量。

下面介绍指示函数的含义:

                              

指的是T(y)的第i个元素,则。下面进行推导:

 

    推导过程省略,直接给出结论:

         

这种算法称为softmax回归,是推广的logistic回归。既然输出函数已经求出来了,下一步就是求解参数。但要注意此处的不再是向量而是一个矩阵,有n+1行,k-1列。对于logistic regression,theta是列向量(n+1维),对于softmaxregression,theta相当于k-1个logistic regression中的 theta,所以就是k-1列,n+1行。此时T(y)是一个列向量。也可以这么解释,将multinomial分布的概率表达式转换为ExpFamily的形式后,是K-1行的列向量,而GLM的3条假设中,eta=theta的转置*x;所以theta不能再是列向量了。这里的T(y)是一个矩阵,而不是一个数,不像以前的线性回归和二分类,T(y)就是y。

   

        

从上式可以看出,最终会化成与相关的形式,可采用梯度下降算法进行求解。这里先留下来,有空再写。

0 0
原创粉丝点击