前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[吴恩达机器学习笔记]12支持向量机6SVM总结

[吴恩达机器学习笔记]12支持向量机6SVM总结

作者头像
演化计算与人工智能
发布2020-08-14 15:30:02
3620
发布2020-08-14 15:30:02
举报

12.6SVM 总结

推荐使用成熟的软件包

用以解决 SVM 最优化问题的软件很复杂,且已经有研究者做了很多年数值优化。因此强烈建议使用高优化软件库中的一个,而不是尝试自己落实一些框架。有许多好的软件库,NG 用得最多的两个是 liblinear 和 libsvm

归一化处理

Note 无论使用使用何种模型进行拟合,原始输入数据都需要进行归一化处理

需要指定的参数

即使用高度优化的软件包,有些参数还是需要自己做出指定的。

正则化参数 C

正则化参数 C 的选定[2]

  • 正则化参数 C 和神经网络正则化参数
\lambda

的倒数

\frac{1}{\lambda}

类似

  • 大的 C 对应于小的
\lambda

,这意味着不使用正则化,会得到一个低偏差(bias),高方差(variance)的模型,则会更加倾向于 过拟合

  • 小的 C 对应于大的
\lambda

,这意味着更多的正则化,会得到一个高偏差(bias),低方差(variance)的模型,则会更加倾向于 欠拟合

核的选定

Note 不是所有提出来的 相似度函数 都是有效的核函数,所有核函数都需要满足 默赛尔定理(Mercer's Theotem) ,因为为了有效的求解参数

\theta

, SVM 软件包中使用了许多成熟的优秀的数值优化技巧,而这些技巧的使用条件即是 默赛尔定理(Mercer's Theotem)

  1. 没有核(线性核函数) 如果满足
\theta^{T}x\ge0

则 y=1;即

\theta_0+\theta_1x1+...+\theta_nx_n\ge0

,通常适用于有 大量的特征但是样本数据较少 的情况下

  1. 高斯核函数(Gaussian kernel)
f_{i}=exp(-\frac{||x-l^{(i)}||^{2}}{2\sigma^2}),where\ \ l^{(i)}=x^{(i)}

需要选定参数

\sigma^2

,通常适用于有 特征少但是样本数据多 的情况下

  1. 多项式核函数(Polynomial kernel) 多项式核函数一般满足
(x^{T}l+常数)^{指数}

的形式,其中

(x^{T}l)^2,(x^{T}l)^{3},(x^{T}+1)^{3},(x^{T}+5)^4

都是其常见的形式。通常的效果比高斯核要差,且 x 和 l 都是 非负数 的情况下,以保证内积值永远不会是负数。

  1. 多项式核函数(String Kernel) 通常用于输入数据是文本字符串形式的情况下
  2. 卡方核函数(chi-square kernel)
  3. 直方相交核函数(histogram intersection kernel)

多分类(Multi-class classification)

  1. 直接使用 SVM 软件包 里面都内置了多类分类的功能
  2. 或使用一对多的方法,如果有 K 个类,就需要 K 个二分类模型,把每一类从其他类中分出来,即每个模型都把原始样本分为两类 目标类-其他类

逻辑回归和支持向量机

从逻辑回归模型,我们得到了支持向量机模型,在两者之间,我们应该如何选择?n 为特征数(特征数可指为原始数据中的属性值或人为够早的特征),m 为训练样本数

  1. 如果相较于 m 而言,n 要大许多,即训练集数据量不够支持我们训练一个复杂的非线性模型,我们选用逻辑回归模型或者不带核函数的支持向量机。
  2. 如果 n 较小,而且 m 大小中等,例如 n 在 1-1000 之间,而 m 在 10-10000 之间,使用高斯核函数的支持向量机。
  3. 如果 n 较小,而 m 较大,例如 n 在 1-1000 之间,而 m 大于 50000,则使用支持向量机会非常慢,解决方案是创造、增加更多的特征,然后使用逻辑回归或不带核函数的支持向量机。

神经网络和支持向量机

  • 值得一提的是,神经网络在以上三种情况下都可能会有较好的表现,但是训练神经网络可能 非常慢(这是 2014 年的教程,所以现在 NG 当然不会这么说) ,而且容易陷入局部最优解,选择支持向量机的原因主要在于它的代价函数是凸函数,不存在局部最小值,而且优化过程会比神经网络快得多。
  • Note Ng 认为算法的选择固然重要,但是数据的规模,数据的处理,特征的提取,调整模型的参数这些过程更加重要

参考资料

[1]吴恩达老师课程原地址: https://study.163.com/course/courseMain.htm?courseId=1004570029

[2]正则化参数C的选定: https://blog.csdn.net/u013555719/article/details/82502591

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DrawSky 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 12.6SVM 总结
    • 推荐使用成熟的软件包
      • 归一化处理
        • 需要指定的参数
          • 正则化参数 C
          • 核的选定
        • 多分类(Multi-class classification)
          • 逻辑回归和支持向量机
            • 神经网络和支持向量机
              • 参考资料
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档