机器学习(二)LR(logistic regression)和SVM(support vector machine)的联系和区别

一、逻辑回归

逻辑回归理解和python推导

二、支持向量机

1.什么是支持向量机

支持向量机是一种二分类模型,它的目的是寻找一个超平面来对样本进行分割,原则是边界最大化,最终转化为一个凸二次规划的问题求解。

支持向量:在求解的过程中,只根据部分数据就可以确定分类器,这些数据称为支持向量
支持向量机:通过支持向量运算的分类器

当训练样本线性可分时,通过硬边界(hard margin)最大化,学习一个线性可分支持向量机
当训练样本近似线性可分时,通过软边界(soft margin)最大化,学习一个线性可分支持向量机
当训练样本不可分,通过和技巧和软边界最大化,学习一个非线性支持向量机

2. 核函数、核技巧

核函数:把原坐标系里线性不可分的数据用核函数 kernal 投影到另一个空间,尽量使得数据在新的空间线性可分。特点有以下:

  1. 避免维度灾难,大大减少计算量,而输入空间的维数 n 对核函数矩阵无影响。因此,核函数可以有效处理高维输入。
  2. 无需知道非线性变换函数 f f f的形式和参数。
  3. 改变输入空间到输出空间的映射,进而对特征空间的性质产生影响,最终改变各种核方法的性能
  4. 可以与不同的算法结合。

常见的核函数:

核函数表达式备注
Linear kernal k ( x , y ) = x t y + c k(x,y)=x^ty+c k(x,y)=xty+c
Polynomial kernal k ( x , y ) = ( a x t y + c ) d k(x,y)=(ax^ty+c)^d k(x,y)=(axty+c)dd 为多项式次数
Exponentiial kernal k ( x , y ) = e x p ( − ∣ x − y ∣ 2 σ 2 ) k(x,y)=exp(-\frac{\left |x-y \right |}{2\sigma ^{2}}) k(x,y)=exp(2σ2xy) σ > 0 \sigma>0 σ>0
Gaussian kernal k ( x , y ) = e x p ( − ∣ x − y ∣ 2 2 σ 2 ) k(x,y)=exp(-\frac{\left |x-y \right |^{2}}{2\sigma ^{2}}) k(x,y)=exp(2σ2xy2) σ \sigma σ为高斯核的带宽, σ > 0 \sigma>0 σ>0,
Laplacian kernal k ( x , y ) = e x p ( − ∣ x − y ∣ σ ) k(x,y)=exp(-\frac{\left |x-y \right |}{\sigma}) k(x,y)=exp(σxy) σ > 0 \sigma>0 σ>0
Anova kernal k ( x , y ) = e x p ( − σ ( x k − y k ) 2 ) d k(x,y)=exp(-\sigma(x^{k}-y^{k})^{2})^{d} k(x,y)=exp(σ(xkyk)2)d
Sigmoid kernal k ( x , y ) = t a n h ( a x t y + c ) k(x,y)=tanh(ax^{t}y+c) k(x,y)=tanh(axty+c) t a n h tanh tanh为双曲正切函数, a > 0 , c < 0 a>0,c<0 a>0,c<0

3. SVM 的主要特点

  1. SVM 的基础理论是非线性映射,SVM 利用内积和函数代替向高维空间的非线性映射。
  2. SVM 的目标是对特征空间划分得到最优超平面,SVM 方法核心是最大化分类边界。
  3. SVM 的结果是支持向量,并且在分类中起决定作用。
  4. 适用于小样本,基本不涉及概率测度及大数定律。
  5. SVM 的最终决策函数只由少数的支持向量决定,计算复杂度取决于支持向量而非样本维数
  6. 非支持向量对结果没有影响
  7. SVM 问题表示为凸优化问题,因此可以寻找全局最小,局部最优也就是全局最优。
  8. SVM 通过最大化决策边界的边缘提供模型能力。尽管如此,用户必须提供其他参数,如使用和函数类型核引入松弛变量
  9. SVM 的优化目标是结构化风险最小(自带正则项)而不是经验风险最小,避免过拟合

4. 缺点

  1. 大规模样本难以实施,SVM 借助二次规划求解支持向量,求解二次规划涉及到 m 阶矩阵的运算(m 为样本个数)。
  2. 解决多分类存在困难,一般通过多个二分类器的组合解决多分类问题。
  3. 对缺失值敏感,尤其缺失值是支持向量的时候。对核函数敏感。

三、LR和SVM的联系

1. LR和SVM都是分类算法

普通的 LR 和 SVM 都只能处理二分类问题,当然,改进后的可以处理多分类问题
在不考虑和函数时,两者都是线性分类器。加了核函数 kernal 后分别为 KLR、KSVM。

2. 两者都是监督算法

3. 两者都是判别式模型

判别模型:假设给定观测集合 X,需要预测的变量集合为 Y,直接对条件概率分布 P(Y|X) 建模来预测Y;
生成模型:先求联合概率分布 P(X,Y),再计算边缘分布得到 P(Y|X)。
常见的判别模型有:LR、SVM、KNN、CNN、最大熵模型、条件随机场等
常见的生成模型:隐马尔可夫模型HMM,贝叶斯、高斯混合模型GMM等

四、LR和SVM不同

1. 采用的 loss function 不同

从目标函数看,LR采用的是 logistic loss,SVM采用的是hinge loss
LR loss:
L ( w , b ) = ∑ l n ( y i p 1 ( x ; β ) + ( 1 − y i ) p 0 ( x ; β ) ) = ∑ ( − y i β T x i + l n ( 1 + e β T x i ) ) L(w,b)=\sum ln(y_ip_1(x;\beta)+(1-y_i)p_0(x;\beta))=\sum{(-y_i\beta^Tx_i+ln(1+e^{\beta^Tx_i}))} L(w,b)=ln(yip1(x;β)+(1yi)p0(x;β))=(yiβTxi+ln(1+eβTxi))

SVM Loss:又称合页函数。
L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ α i ( 1 − y i ( w T x i + b ) ) + L(w,b,\alpha)=\frac{1}{2}||w||^2 + \sum\alpha_i(1-y_i(w^Tx_i+b))_+ L(w,b,α)=21∣∣w2+αi(1yi(wTxi+b))+
表示当 y i ( w T x i + b ) y_i(w^Tx_i+b) yi(wTxi+b)大于1时,loss为0,否则loss为 1 − y i ( w T x i + b ) 1-y_i(w^Tx_i+b) 1yi(wTxi+b)
对比感知机的损失函数 − y i ( w T x i + b ) -y_i(w^Tx_i+b) yi(wTxi+b),只要大于0,loss就为0。hinge loss 不仅要求分类正确,并且分类可信度足够高的时候,才能让 loss 变为0。
在这里插入图片描述

LR:基于极大似然估计求参数
SVM:基于 hinge loss 求参数

2. 考虑的边界点数

SVM 只考虑边界上的局部点,即支持向量,其他样本对分类决策没有影响,即SVM不依赖于数据的分布。
LR 依赖于数据分布,通过线性映射减少远离分类平面的点的权重,即对不平衡的数据要先做平衡。

3. 核函数的使用

SVM使用的是 hinge loss ,可以方便转换成对偶问题求解,在解决非线性问题时,引入核函数机制可以大大降低计算复杂度。

4. SVM 依赖于数据分布的距离测度,所以需要先对数据归一化,而LR不受影响

5. SVM损失函数自带正则项,而LR需要另外添加

LR和SVM什么时候用?

  1. feature数远大于样本数,都可以
  2. feature数与样本差不多,可以使用 KSVM
  3. feature较小,样本很大,可以增加更多 feature 然后使用 LR 或linear SVM

LR 和 SVM 如何处理多分类问题?

SVM:

方式一:组合多个二分类器实现多分类

1.OvO(one-versus-one):任意两个类别之间设计一个二分类器。
2.OvR(one-versus-rest):每次将一个类别作为正例,其余作为反例,共 N 个分类器。

方式二:直接修改目标函数,将多个分类面的参数合并到一个最优化问题,一次性实现多分类。

LR

方式一:组合多个二分类器
方式二:改成 softmax 回归

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值