关闭

Logistic Regression详解

标签: 机器学习
310人阅读 评论(0) 收藏 举报
分类:

Regression是什么?

  • Regression:找到一个模型去表示数据间的关系
  • Linear Regression:使用线性模型拟合数据
  • Logistic Regression:其实本质也是线性拟合,但引入了log,这个之后会详细说

也就是说,不管什么Regression,都是想找到一个模型来拟合数据。

Likelihood

Likelihood与我们平常所说的Probability相反。

举个例子,平常说B站有60%的人是宅男,这个60%就是概率。我们换个思路,如果告诉你一个人是宅男,那他有多大的可能是B站用户呢?我们同意“宅男都混B站”这个判断的话,就说这个宅男100%是B站用户。这里100%就是likelihood。

其实到这里,我们已经完成了一次预测 —— 预测一个宅男是否为B站用户。事实上,这个在现实生活中非常有用。比如根据症状判断是否得了癌症,根据性别年龄等特征判断是否已婚等等。

regression的主要用途就是根据输入的特征做判断,并使本系统的判断与实际输出之间的差值最小。

Logistic Regression

引子:我们常用的是线性拟合,为什么?当然因为线性拟合简单,比如下面的红色数据点,我们可以简单的拿一个线性模型拟合(黄线)

这里写图片描述

可是,如果我们的点不是这么的符合线性条件呢?

使用最大后验概率作为模型质量的评测方式,我们需要使输入的已知点的likelihood最大,从而得到一个比较好的模型。

假设y的取值为1或0(也就是说,所有数据分为两类)

后验概率:

假设

PY1|XxPxθ

(给定输入x,输出为1的概率)

可以得到,

i=1mPYyi|Xxii=1mPxiθyi(1Pxiθ)1yi

如果我们将已有的m个输入输出观察值(x,y)带入这个式子,就可以得到已有的观察值的likelihood。

最大化使这个likelihood,也就是最大化已有的观察值出现的概率,就可以得到相应的拟合模型啦~

定义Likelihood的式子:

目的是找到合适的参数,最大化L

L(θ)=i=1mPxiθyi(1Pxiθ)1yi

接下来就是找相应的模型了,刚才提到

PY1|XxPxθ
也就是后验概率P,需要用一个带参数的模型表示。(下面将P简写为P(x))

在Logistic regression里,我们使用这样的一种模型来拟合likelihood

logP(x)1P(x)=θ0+θx

其实这依旧是线性拟合(等号右边的是线性拟合的式子),

至于为什么等号左边的式子是这样的,主要考虑了输入和输出值域的限制。

我们把这个式子变换一下,就得到了常用的形式:

P(Y=1;x;θ)=11+eθTx=hθ(x)

对L求导:

使导数最小(最好为0)的beta就是我们要求的模型参数,至于怎么使导数最小,我们使用Newton’s method更新权值。

注:L的形式不好计算导数,所以对logL求导。lnL就是经常用到的cost function

J(θ)=logL=1mi=1m[yilog(hθ(xi))(1yi)(1hθ(xi))]

Newton’s Method

Newton’s Method通过对初始点(随机选择)附近的泰勒展开式求导,得到初始点附近的最小点,多次更新,得到局部最优。

具体的求导过程就不列出来了,直接写出更新的公式。

θ(n+1)=θ(n)f(θ(n))f′′(θ(n))

存在多个theta时,就变成了这样,

θ(n+1)=θ(n)H1θJ(θ)

H为Hessian矩阵.

在logistic regression中,梯度和Hessian的求法分别为:

θJ(θ)=1mi=1m(hθ(xi)yi)xi

H=1mi=1m[hθ(xi)(1hθ(xi))xi(xi)T]

至此,我们通过逐步更新参数的值,最终得到模型
hθ(x)

至此,关于01分类问题的regression已经介绍完了(只分两类)
如果想知道关于多分类的问题,可以去下面的链接中了解一下softmax。
http://ufldl.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92

0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6121次
    • 积分:122
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:1篇
    • 译文:1篇
    • 评论:7条
    文章分类
    文章存档
    最新评论