《统计学习方法》笔记06:LR逻辑回归模型

来源:互联网 发布:linux中makefile文件 编辑:程序博客网 时间:2024/05/16 17:59

1. LR初探

逻辑斯蒂回归模型,(logistic regression,LR)是我和队友在腾讯TSA比赛中使用的第一个模型,比赛开始和睿杰讨论过,他推荐先用这个模型,那时我们仨都是小白,也不知道套路,就这样做,结果大部分队伍第一个都会采用该模型。

我对LR模型的理解是,这是一个形式很简单的模型,对二分类问题来说:

P(y=1|x)=11+e(wx+b)

其中x为N维特征组成的向量,(w,b)为N维参数,两者做点积,得到的结果放进LR模型中得到概率。LR模型的图为:

这里写图片描述

通过训练集学习到w参数,然后对测试集,用上述公式计算其属于正类的概率。w可以看出每个特征的贡献度,w值越大,则该项正类贡献越大,点积值越偏向于正类,否则为反类。即该模型有很好的可解释性。

当然LR模型本质上为线性模型,因为学习的核心结果是(wx+b),这就是线性模型,只不过用LR将其值映射到概率0-1的空间中,比较符合很多问题的要求。

如果我们想增加1维特征,也非常简单,这意味着w参数多一维而已。而且为了使得模型具有非线性能力,我们可以使用one-hot对特征进行处理。举例来说,某个问题中使用了用户的年龄属性[0-80],如果我们仅使用一维w来与年龄点乘,则为一条直线模型。如果年龄40-50岁与结果是正相关,0-40与50-80都是负相关,则反映不出来;此时采用one-hot处理,将年龄划分为10岁一段共分8段,每段一个w权值,这样就可以反映出不同年龄段的不同权重大小。而LR对这些操作有很好的接纳和解释。

2. 逻辑斯蒂分布

以上是我的初步理解。根据《统计学习方法》第6章将LR整理如下。

设X是连续随机变量,假如X具有如下分布函数和密度函数:

F(x)=P(Xx)=11+e(xμ)/γ

f(x)=F,(x)=e(xμ)/γγ(1+e(xμ)/γ)2

则称X服从逻辑斯蒂分布。其中μ为位置参数,γ为形状参数。

F(x)图像见下图,γ越小,形状越陡。

这里写图片描述

密度函数f(x)的图像见下图:

这里写图片描述

3. 二项逻辑斯蒂回归模型

1.模型定义

分类模型,由条件概率分布P(Y|X)表示,形式为参数化的LR的分布。X的取值为实数,Y的取值为1/0。通过监督学习方法来估计模型参数。

P(Y=1|x)=e(wx+b)1+e(wx+b)

P(Y=0|x)=11+e(wx+b)

对于给定的输入实例x,按照上式可计算出分别属于1类和0类的概率,LR逻辑回归模型将实例分到概率值较大的类。

2.模型特点

定义:一个事件的几率(odds)是指该事件发生的概率除以不发生的概率的比值。若该事件发生的概率是p,则其几率是p1p,该事件的对数几率(log odds)或者logit函数是:

logit(p)=logp1p

我们把二项逻辑斯蒂回归模型的两个概率相除,可得:
logit(P(Y=1|x)P(Y=0|x))=wx+b

这说明什么?

在逻辑斯蒂回归模型中,输出Y=1的对数几率/logit函数是输入x的线性函数。

换个角度看,通过逻辑斯蒂回归模型,可以将线性函数wx+b转化为概率。

P(Y=1|x)=e(wx+b)1+e(wx+b)
此时线性函数的值越接近正无穷,概率值越接近1;否则越接近0。

这样的模型,就是逻辑斯蒂回归模型。

而上面的式子上下同除以exp(wx+b),则得到

P(y=1|x)=11+e(wx+b)

与我初始理解是相同的。这也解开了之前一个困惑点:

用这个式子算出来的概率值为什么是P=1的概率值呢?谁规定的?

其实0/1只不过是人为设定的正、反类,LR回归模型只不过计算出一个wx+b线性函数值的概率映射,至于这个线性函数代表是哪个类,它是不知道的。这是由人在计算wx+b时约定的。1一般为正例,0代表反例。

4. 模型参数估计

LR模型学习时,应用极大似然估计法,估计模型参数。

对于训练集T={(x1,y1),...,(xN,yN)},其中xRnyi{0,1},令P(Y=1|x)=π(x),则有:

似然函数为:

i=1n[π(xi)]yi[1π(xi)]1yi

即把每一项乘起来,要么为1类,要么为0类,分别拎出其概率值。

对数似然函数为:

L(w)=i=0N[yilog(π(xi))+(1yi)log(1π(xi))]

=i=0N[yilogπ(xi)1π(xi)+log(1π(xi))]

=i=0N[yi(wxi)log(1+exp(wxi))]

对L(w)求极大值,得到w的估计值。

问题变成以对数似然函数为目标函数(最大化)的最优化问题。可采用梯度下降法、拟牛顿法等套路解决。

w的极大似然估计值为w^,则逻辑斯蒂回归模型为:

P(Y=1|x)=e(w^x+b)1+e(w^x+b)

5. 多项逻辑斯蒂回归

上述讨论针对二项分类模型,用于二类分类,模型只需要学习到一组w参数,用于给Y=1的类判断,0用1一减即可。

用于多类K分类时,模型就需要学习到K-1组w参数,最后一类用1减去其他类之和得到。

P(Y=k|x)=e(wkx+b)1+Kk=1e(wkx+b)

二项逻辑回归参数估计法也可推广到多项逻辑回归。

阅读全文
0 0
原创粉丝点击