线性模型

来源:互联网 发布:godaddy域名转移 编辑:程序博客网 时间:2024/05/16 00:36

逻辑回归

逻辑回归是一种非常流行且高效的分类器,它不仅可以预测样本的分类,还可以计算出分类的概率信息。

假设有n个训练样本(x1,...xn),xid维向量,其类别标签是y1,y2,...,yn.对于一个c类问题,yi{1,2,...,c}.
Logistic回归学习这样一个函数

f(x)=g(θTx)=11+eθTx(1)

其中
g(z)=11+ez(2)

被称为Logistic函数或者Sigmoid函数
我们先考虑二分类问题,设
P(y=1|x,θ)=f(x)(3)

即对于给定的样本x,其属于类别1的概率是f(x)。则属于类别0的概率是
P(y=0|x,θ)=1f(x)(4)

上述概率也可以写作
P(y|x,θ)=f(x)y(1f(x))1y(5)

Logistic回归具有如下特点,一个事件发生的几率(odds)定义为事件发生的概率与不发生概率的比值。设p=P(y=1|x,θ),那么事件的几率是p1p,其对数函数是
logp1p=logP(y=1|x,θ)1P(y=1|x,θ)=θx(6)

可以看出,输出类别1的对数几率是输入x的线性函数。
此外,后验概率也可以写作如下形式:
P(y=1|x,θ)=eθTx1+eθTx

P(y=0|x,θ)=11+eθTx(7)

以下使用极大似然估计方法来求解参数,参数θ的似然函数是:
L(θ)=i=1nP(yi|xi,θ)

=L(θ)i=1nf(xi)yi(1f(xi))1yi(8)

最大化似然函数往往比较困难,可以通过最大化对数似然函数来求解。θ的对数似然函数是:
(θ)=logL(θ)=logi=1nf(xi)yi(1f(xi))1yi=i=1nlogf(xi)yi(1f(xi))1yi=i=1nyilog(f(xi))+(1yi)log(1f(xi))

实际上,代价函数的形式是:
J(θ)=1ni=1nyilog(f(xi))+(1yi)log(1f(xi))(10)

所以最小化代价函数就等价于最大化似然估计。
可以通过梯度下降法来求解(θ)的极大值。即
θ:=θ+αθ(θ)(11)

θj(θ)=θji=1nyilog(g(θTxi)+(1yi)log(1g(θTxi))

=i=1n(yif(xi))x(j)i(12)

x(j)i是第i个样本的第j个特征。
所以,对于参数θ向量中的任一元素θj,迭代方式如下:
θ:=θ+αi=1n(yif(xi))x(j)i(13)

如此,就可以将全部参数求出。
还可以使用牛顿等迭代方法来求出。