Logistic 回归

在详细介绍Logistic 回归之前有必要简单说明下什么是回归,什么是分类以及Logistic 回归应用的场景举例。

1.什么是回归?什么是分类?

回归:当我们尝试去预测的目标变量是连续的时候,我们称这一的学习问题维回归问题

分类:相反,当目标变量是少数几个离散值的时候,称之为分类问题

2.logistic回归应用场景

能否利用回归的方法来处理分类的问题呢?

下图,横坐标表示肿瘤的大小,纵轴表示肿瘤的属性,只能取两个值:恶性:y=1;良性:y=0



显然,采用线性回归的方法:

当h(x)>f时,y=1;

当h(x)<=f时,y=0;

能够解决分类问题。

但如果是下面这种情况呢?


显然这个时候不满足:

当h(x)<f时,y=0,(有y=1).不能很好的分类。这个时候,我们引入logistic 回归。

为了弥补线性回归在处理该类分类上面的不足,logistic回归的假设h(x)不在是线性的,而是logistic函数形式。相似对logistic函数应该都比较熟悉,下面给出其定义,并画出相应的图



我们的假设现在变成:


接下来定义cost function。

在线性回归中,使用的是最小二次平方。显然,cost function的目的就是要使h(x)-y对于所有训练数据点的和最小。

下面首先给出我自己定义的一种方式,定义完之后发现和斯坦福<机器学习>中得到的J不一样。一时也分不清这种定义是否正确,不管怎样,我还是选择贴出来,希望有人能指出其中的错误,万分感谢!

假如对于一个训练数据,定义cost function为:


由于y只能取1或者0,当y为1时,J=h(x)-1,当y为0时,j=h(x).所以上式又可以写成如下形式:


现在的目的就变成要最小化J。现在考虑全部(m个训练数据),同时为了计算方便,替代选择来最小化J的log似然函数:



下面贴出的是斯坦福机器学习中的方法,当然,加了自己的理解。

首先,我们假设:


从logistic函数我们可以知道,当h(x)>0.5时,可以判别对应的数据点y=1.所以,对于概率,我们希望h(x)越大越好,所以也就是希望最大化该概率。显然,对于y=0,因为此时是希望h(x)越小越好,所以同意也希望最大化概率。

因为y只可取1或0,所以上面的两个概率式可以合并为一个,同时考虑所有m个训练数据以及为了处理方便考虑它的log似然函数形式:


最后的目的就是最大化L();

与线性回归中要求最小不同,这里是要求最大化,因此我们可以采用梯度上升的方法,和梯度下降的唯一区别在于对于参数的每次修改由减变成了增加梯度。下面直接给出一个训练数据下参数的修改规则(随机梯度上升规则):


细心的读者马上回发现他和线性回归中的参数更新规则看上去是完全一样的。但是他们不是一样的算法,因为上式中h(x)的定义是不一样的。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值