基于数据的机器学习是现代智能技术中的重要方面,研究从观测数据(样本)出发寻找规律,利用这些规律对未来数据或无法观测的数据进行预测。迄今为止,关于机器学习还没有一种被共同接受的理论框架,关于其实现方法大致可以分为三种[3]:

第一种是经典的(参数)统计估计方法。包括模式识别、神经网络等在内,现有机器学习方法共同的重要理论基础之一是统计学。参数方法正是基于传统统计学的,在这种方法中,参数的相关形式是已知的,训练样本用来估计参数的值。这种方法有很大的局限性.

首先,它需要已知样本分布形式,这需要花费很大代价,还有,传统统计学研究的是样本数目趋于无穷大时的渐近理论,现有学习方法也多是基于此假设。但在实际问题中,样本数往往是有限的,因此一些理论上很优秀的学习方法实际中表现却可能不尽人意。

第二种方法是经验非线性方法,如人工神经网络(ANN)。这种方法利用已知样本建立非线性模型,克服了传统参数估计方法的困难。但是,这种方法缺乏一种统一的数学理论。与传统统计学相比,统计学习理论(Statistical Learning Theory或SLT)是一种专门研究小样本情况下机器学习规律的理论。该理论针对小样本统计问题建立了一套新的理论体系,在这种体系下的统计推理规则不仅考虑了对渐近性能的要求,而且追求在现有有限信息的条件下得到最优结果。V. Vapnik等人从六、七十年代开始致力于此方面研究,到九十年代中期,随着其理论的不断发展和成熟,也由于神经网络等学习方法在理论上缺乏实质性进展,统计学习理论开始受到越来越广泛的重视。

统计学习理论的一个核心概念就是VC维(VC Dimension)概念,它是描述函数集或学习机器的复杂性或者说是学习能力(Capacity of the machine)的一个重要指标,在此概念基础上发展出了一系列关于统计学习的一致性(Consistency)、收敛速度、推广性能(Generalization Performance)等的重要结论。

统计学习理论是建立在一套较坚实的理论基础之上的,为解决有限样本学习问题提供了一个统一的框架。它能将很多现有方法纳入其中,有望帮助解决许多原来难以解决的问题(比如神经网络结构选择问题、局部极小点问题等);

同时,这一理论基础上发展了一种新的通用学习方法──支持向量机(Support Vector Machine或SVM),已初步表现出很多优于已有方法的性能。一些学者认为,SLT和SVM正在成为继神经网络研究之后新的研究热点,并将推动机器学习理论和技术有重大的发展。

支持向量机方法是建立在统计学习理论的VC维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力(Generalizatin Ability)。支持向量机方法的几个主要优点有:

1. 它是专门针对有限样本情况的,其目标是得到现有信息下的最优解而不仅仅是样本数趋于无穷大时的最优值;

2. 算法最终将转化成为一个二次型寻优问题,从理论上说,得到的将是全局最优点,解决了在神经网络方法中无法避免的局部极值问题;

3. 算法将实际问题通过非线性变换转换到高维的特征空间(Feature Space),在高维空间中构造线性判别函数来实现原空间中的非线性判别函数,特殊性质能保证机器有较好的推广能力,同时它巧妙地解决了维数问题,其算法复杂度与样本维数无关;

在SVM方法中,只要定义不同的内积函数,就可以实现多项式逼近、贝叶斯分类器、径向基函数(Radial Basic Function或RBF)方法、多层感知器网络等许多现有学习算法。

统计学习理论从七十年代末诞生,到九十年代之前都处在初级研究和理论准备阶段,近几年才逐渐得到重视,其本身也趋向完善,并产生了支持向量机这一将这种理论付诸实现的有效的机器学习方法。

目前,SVM算法在模式识别、回归估计、概率密度函数估计等方面都有应用。

例如,在模式识别方面,对于手写数字识别、语音识别、人脸图像识别、文章分类等问题,SVM算法在精度上已经超过传统的学习算法或与之不相上下。

目前,国际上对这一理论的讨论和进一步研究逐渐广泛,而我国国内尚未在此领域开展研究,因此我们需要及时学习掌握有关理论,开展有效的研究工作,使我们在这一有着重要意义的领域中能够尽快赶上国际先进水平。由于SLT理论和SVM方法尚处在发展阶段,很多方面尚不完善,比如:许多理论目前还只有理论上的意义,尚不能在实际算法中实现;而有关SVM算法某些理论解释也并非完美(J.C.Burges在[2]中就曾提到结构风险最小原理并不能严格证明SVM为什么有好的推广能力);此外,对于一个实际的学习机器的VC维的分析尚没有通用的方法;SVM方法中如何根据具体问题选择适当的内积函数也没有理论依据。因此,在这方面我们可做的事情是很多的。

机器学习之支持向量机相关推荐

  1. 【机器学习】支持向量机和ensemble method的解析应用

    [机器学习]支持向量机和ensemble method的解析应用 文章目录 1 SVM概述 2 项目案例: 手写数字识别的优化(有核函数) 3 随机森林 4 集成方法(Ensemble methods ...

  2. 机器学习实践——支持向量机

    机器学习实践--支持向量机 1.支持向量机的优缺点 1.1 优点 在高维空间十分有效. 即使数据的维度比样本数量还要大的情况下仍然有效. 在支持向量中使用训练集的子集,对内存的利用比较高效. 不同的核 ...

  3. 机器学习笔记——支持向量机SMO算法完整版代码分析

    机器学习笔记--支持向量机SMO算法完整版代码分析 代码大体分析 外循环 参数类 内循环 KKT条件判断 eCache参数 完整SMO代码 添加核函数代码 代码参考书籍:<机器学习实战> ...

  4. 机器学习实战 支持向量机SVM 代码解析

    机器学习实战 支持向量机SVM 代码解析 <机器学习实战>用代码实现了算法,理解源代码更有助于我们掌握算法,但是比较适合有一定基础的小伙伴.svm这章代码看起来风轻云淡,实则对于新手来说有 ...

  5. 机器学习之支持向量机: Support Vector Machines (SVM)

    机器学习之支持向量机: Support Vector Machines (SVM) 欢迎访问人工智能研究网 课程中心 网址是:http://i.youku.com/studyai 本篇博客介绍机器学习 ...

  6. 论机器学习与支持向量机结课论文

    论机器学习与支持向量机 摘要:机器学习是研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是人工智能的核心,是使计算机具有智能的根本途径.支 ...

  7. python机器学习案例-支持向量机建模及评估(完整代码+实现效果)

    实现功能: python机器学习案例-支持向量机建模及评估. 实现代码: # 导入需要的库 from warnings import simplefilter simplefilter(action= ...

  8. 神经网络与机器学习 笔记—支持向量机(SVM)(上)

    支持向量机(SVM)的主要思想: 给定训练样本,支持向量机建立一个超平面作为决策曲面,使得正例和反例之间的隔离边缘被最大化. 线性可分模式的最优超平面 训练样本{(xi,di)}^N i=1 ,其中x ...

  9. 【机器学习】支持向量机(SVM)代码练习

    本课程是中国大学慕课<机器学习>的"支持向量机"章节的课后代码. 课程地址: https://www.icourse163.org/course/WZU-1464096 ...

最新文章

  1. 【Linux入门连载二】Linux系统有哪些基本目录?
  2. 白话Elasticsearch32-深入聚合数据分析之案例实战Terms Aggs 统计哪种颜色电视销量最高
  3. 【Python】青少年蓝桥杯_每日一题_4.15_正方形里面套个实心圆形
  4. 我有一个竞争方法,让用户去选择你的产品而不是别人
  5. leetcode 454. 4Sum II | 454. 四数相加 II(Java)
  6. 非递归分治法排序 MergeSort without recursion
  7. 入门 | egg.js 入门之egg-jwt
  8. 对于PHP大型开发框架的看法
  9. cmake中添加引用动态链接_C# 添加、编辑、删除PPT中的超链接
  10. C#线程系列讲座(5):同步技术之Monitor
  11. 手动调整 HP ML350 Gen9 服务器风扇转速
  12. 二阶高通有源滤波器设计与仿真测试
  13. Linux网络编程:状态机
  14. STM32CAN总线协议讲解
  15. 【SVG】svg入门
  16. aws 云存储 Linux sdk,aws-sdk for JavaScript 对接私有云对象存储
  17. VS code C语言输出位数
  18. Excel数据透视表的使用
  19. 2022年湖南省临床执业医师考试第三单元综合实践(二)
  20. python-数据分析-pandas基础知识

热门文章

  1. [云炬创业管理笔记]第二章成为创业者讨论3
  2. 科大星云诗社动态20220107
  3. 5 Android数据存储 任务二 应用程序数据文件夹里的文件读写 ,
  4. mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)
  5. CVPR 2018 | TVNet:可端到端学习视频的运动表征
  6. 主成分分析的数学原理
  7. Warning: Link to vtkInteractionStyle for default style selection的解决办法
  8. opencv-从设备获取视频并且一帧一帧的保存下来
  9. Java数组的基本知识点
  10. python基础——变量和数据类型及常见类型转换函数