浅论lr和svm建模思想的不同

同样是线性分类器,lr和svm分别基于什么样的准则和思想去建模的呢。可以从两者的损失函数入手分析:

任何线性分类器的目标都是在空间中找到一个超平面,尽可能的让正负例分列超平面的两边。

svm的损失函数是hinge loss,即样本到超平面的函数间隔(基本等价于几何间隔)在1以外的样本点损失值为0,间隔在1以内的样本点越靠近间隔1损失越小,说明svm更care分类超平面间隔为1范围内的样本分类正确与否,产生损失值的样本点位于分类平面两边很窄范围内,模型要优化的样本点就是这些样本点。

而lr的损失函数是log损失函数: - (log yh(x)+(1-y)log(1-h(x) ) ) (对log 似然的求负,为损失),h(x)是样本点与超平面的距离(wx+b)经过lsigmoid映射后的概率值,距离越远,属于这一侧类的概率值越大,log似然越大,则整体损失越小,因为经过了sigmoidt映射,远到一定程度后的样本log似然值都比较大,且与更远距离的样本似然值差别不大,或者说在一定间距外的样本产生的似然值差不多且都比较大。那么为了使总体损失小,lr选择的分类超平面应尽量使离平面较远的点越多,更关注的是离分类平面一定距离外的样本。即让处于超平面一定距离外的样本越多越好。

分析了两种模型的侧重,对于如下图1的样本集,可以想见两种模型的分类面大概位置。可能有人会说这个图有问题,因为如果样本集是线性可分的,lr的分类面怎么会有分不对的样本呢,其实我也有这个疑问,svm能保证在样本集线性可分的时候,训练出的平面也一定能将样本集完全分开,但是lr能么,不一定吧,除非可以在lr的损失值最大化前提下用数学证明,选择一条完全线性可分的平面一定优于其它任何线性不可分的平面。希望有大牛可以解答下。


图1

图1只是根据模型思想的一个猜想,下面需要设计一组样本集,分别用两个模型跑出来验证一下。


图2



图3

图2红点是5个正样本,黄点是100个负样本,svm的分类超平面显而易见,lr的分类平面偏右,因为负样本多,所以分类面尽量远离左边。

图3在图2基础上在(0.8,0)处加入一个负样本,从svm分类面看出它只受支持向量影响;lr的分类面向右移,x1坐标从0.29到0,41,斜率基本不变(如果加的该点是负样本,x1坐标微调到0.27),可见lr考虑的是样本的整体分布,即使样本完全线性可分,最优解也不一定能将所有样本完全分开。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值