[笔记]牛顿方法·指数族·GLMs

牛顿方法(Newton’s method)

牛顿方法是另一种最大化 l(θ) 的算法。
首先找到一个实数域上的方程 f f(θ)=0 ,θ是实数。
[笔记]牛顿方法·指数族·GLMs_第1张图片
从起始点 θ0 开始,找到 f(θ0) 处的切线,与坐标轴相交于 θ1 ,由此不断迭代。两点之间的距离记为Δ 。
f(θ0)=f(θ0)Δ —-> Δ=f(θ0)f(θ0)
所以牛顿方法执行更新规则:

θ:=θf(θ)f(θ)

如果想要找到θ使得 l(θ) 最大,那么θ就该满足 l(θ)=0 ,由此可见我们可以将牛顿方法运用其中, f(θ)=l(θ)
θ:=θl(θ)l(θ)

在一般化的牛顿方法中,θ通常一个向量,所以一般化的牛顿方法(也称作Newton-Raphson method) 为:
θ:=θH1θl(θ)

其中, θl(θ) 表示 l(θ) θis 的偏导数;
H表示 黑塞矩阵(Hessian matrix),是二阶导数矩阵。
Hij=2l(θ)θiθj

由此可见,该式也是一阶导数除以二阶导数。
总得来说,牛顿方法比梯度上升算法减少了 迭代次数,但是其缺点是每次迭代都要重新计算H矩阵的逆,如果在大规模数据中涉及很多特征,那么这将花费巨大代价。


指数分布族(Exponential family distributions)

指数族:

p(y;η)=b(y)exp(ηTT(y)a(η))

其中,
η被称作 自然参数或正则参数(natural parameter/canonical parameter);
T(y) 被称作 充分统计量(sufficient statistic),通常 T(y)=y
a(y) log partition function ea(η) 是一个规范化常数,使得分布 p(y;η) 的和为1。
对于给定的一组a,b,T,都会得到对应的指数分布族,而且改变参数η的取值会影响该指数族的分布。

伯努利分布(Bernoulli)的指数分布族

[笔记]牛顿方法·指数族·GLMs_第2张图片
本例中η为标量,所以 η=log(φ/(1φ)) ,即 φ=1/(1+eη)
这样我们就得到了一个logistic函数,也说明了伯努利分布的参数φ与自然参数η存在特定的关系。
指数分布族:
[笔记]牛顿方法·指数族·GLMs_第3张图片

高斯分布(Gaussian)的指数分布族

在学习线性回归时,发现高斯分布的方差对最终结果并没有任何影响。所以为了简化问题,令 σ2=1
[笔记]牛顿方法·指数族·GLMs_第4张图片
指数分布族:
[笔记]牛顿方法·指数族·GLMs_第5张图片
以下分布也都可以写成指数分布族的形式:
多项式分布(multinomial)
泊松分布(poisson):用于计数的建模。
伽马分布(gamma),指数分布(exponential):用于对正数建模,多用于间隔问题。
β分布,Dirichlet分布:用于对小数建模。


GLMs

广义线性模型(Generalized Linear Models)
构造GLMs来解决问题,我们首先需要了解三个设计假设。

  1. y|x;θExponentialFamily(η)
  2. 我们的目标是通过给定x,来预测T(y)期望( E[T(y)|x] )。由于通常T(y)=y,因此假设函数需要满足 h(x)=E[y|x] (这个假设对logistic回归和线性回归都成立)。
  3. 自然函数η与输入特征x的关系是线性的, η=θTx (如果自然参数是向量, ηi=θTix )。

如果我们的问题需要满足这三个假设,那么我们就可以通过构造广义线性模型来解决。

最小二乘法

在线性回归的最小平方问题中,目标变量y(在GLM的术语中也称作响应变量(response variable))是连续的,给定x,y的条件分布符合高斯分布,均值为μ。套用前面GLM的推导,我们有μ=η。所以,我们可以得到线性回归的假设函数就是:
[笔记]牛顿方法·指数族·GLMs_第6张图片

Logistic回归

在二元分类问题中,给定x,y服从伯努利分布,均值为ϕ。同样利用前面的推导,可以得到logistic回归的假设函数就是:
[笔记]牛顿方法·指数族·GLMs_第7张图片
再介绍一些有关知识:
正则关联函数(canonical response function): g(η)=E[T(y);η]
正则响应函数(canonical link function): g1

Softmax回归

多项式分布,多类别分类问题。
假设 y{1,2,...,k} ,可以用一个k维的向量来表示分类结果,当y=i时,向量的第i个元素为1,其它均为0。这样表示是存在冗余的,因为如果我们知道了前k-1个元素,那么第k个其实就已经确定了,因此我们可以只用k-1维向量来表示。
设置参数: φ1,φ2,...,φk1 φi=p(y=i;φ)
由此可见: φk=1k1i=1φi
[笔记]牛顿方法·指数族·GLMs_第8张图片
注意,这里就和前面的T(y)=y不同了,这里的T(y)是一个向量,所以用 T(y)i 表示T(y)的第i个元素。在往后的推导过程中,会出现1{True}=1,1{False}=0的判别函数。所以T(y)与y的关系可以写成:

T(y)i=1{y=i}

E[T(y)i]=P(y=i)=φi

多项式分布的指数分布族:
[笔记]牛顿方法·指数族·GLMs_第9张图片
可以得到:
[笔记]牛顿方法·指数族·GLMs_第10张图片

链接函数为 ηi=logφiφk ,为了简化,令 ηk=0 ,可得响应函数:
[笔记]牛顿方法·指数族·GLMs_第11张图片
这个从η到φ’s的映射被称作softmax函数
根据假设3,并且令 θk=0 ηk=θTkx=0 ,得到softmax回归模型,它是logistic回归的推广。
[笔记]牛顿方法·指数族·GLMs_第12张图片
所以我们假设函数的输出为:
[笔记]牛顿方法·指数族·GLMs_第13张图片
最后就是回归问题的参数的学习了,依然可以使用极大似然估计的方法来学习θ,似然函数为:
[笔记]牛顿方法·指数族·GLMs_第14张图片
之后就可以通过梯度上升或牛顿方法来求出合适的参数θ。

你可能感兴趣的:(CS229-ML)