支持向量机(SVM)、支持向量回归(SVR)【转】

   人类通过学习,从已知的事实中分析、总结出规律,并且根据规律对未来的现象或无法观测的现象做出正确的预测和判断,即获得认知的推广能力。在对智能机器的研究当中,人们也希望能够利用机器(计算机)来模拟人的良好学习能力,这就是机器学习问题。基于数据的机器学习是现代智能技术中的重要方面,机器学习的目的是通过对已知数据的学习,找到数据内在的相互依赖关系,从而获得对未知数据的预测和判断能力,在过去的十几年里,人工神经网络以其强大的并行处理机制、任意函数的逼近能力,学习能力以及自组织和自适应能力等在模式识别、预测和决策等领域得到了广泛的应用。但是神经网络受到网络结构复杂性和样本复杂性的影响较大,容易出现“过学习”或低泛化能力。特别是神经网络学习算法缺乏定量的分析与完备的理论基础支持,没有在本质上推进学习过程本质的认识。
现有机器学习方法共同的重要理论基础之一是统计学。传统统计学研究的是样本数目趋于无穷大时的渐近理论,现有学习方法也多是基于此假设。但在实际问题中,样本数往往是有限的,因此一些理论上很优秀的学习方法实际中表现却可能不尽人意。
    与传统统计学相比, 统计学习理论(Statistical Learning Theory 或SLT ) 是一种专门研究小样本情况下机器学习规律的理论Vladimir N. Vapnik等人从六、七十年代开始致力于此方面研究,到九十年代中期,随着其理论的不断发展和成熟[17],也由于神经网络等学习方法在理论上缺乏实质性进展, 统计学习理论开始受到越来越广泛的重视。
    统计学习理论是建立在一套较坚实的理论基础之上的,为解决有限样本学习问题提供了一个统一的框架。它能将很多现有方法纳入其中,有望帮助解决许多原来难以解决的问题(比如神经网络结构选择问题、局部极小点问题)等;同时, 在这一理论基础上发展了一种新的通用学习方法—支持向量机(Support Vector Machine或SVM ),它已初步表现出很多优于已有方法的性能。一些学者认为,SVM 正在成为继神经网络研究之后新的研究热点,并将有力地推动机器学习理论和技术的发展。
    支持向量机(SVM)是一种比较好的实现了结构风险最小化思想的方法。它的机器学习策略是结构风险最小化原则为了最小化期望风险,应同时最小化经验风险和置信范围)
支持向量机方法的基本思想:
(1)它是专门针对有限样本情况的学习机器,实现的是结构风险最小化:在对给定的数据逼近的精度与逼近函数的复杂性之间寻求折衷,以期获得最好的推广能力;
(2)它最终解决的是一个凸二次规划问题,从理论上说,得到的将是全局最优解,解决了在神经网络方法中无法避免的局部极值问题;
(3)它将实际问题通过非线性变换转换到高维的特征空间,在高维空间中构造线性决策函数来实现原空间中的非线性决策函数,巧妙地解决了维数问题,并保证了有较好的推广能力,而且算法复杂度与样本维数无关。
   目前,SVM算法在模式识别、回归估计、概率密度函数估计等方面都有应用,且算法在效率与精度上已经超过传统的学习算法或与之不相上下。
   对于经验风险R,可以采用不同的损失函数来描述,如e不敏感函数、Quadratic函数、Huber函数、Laplace函数等。
   核函数一般有多项式核、高斯径向基核、指数径向基核、多隐层感知核、傅立叶级数核、样条核、B样条核等,虽然一些实验表明在分类中不同的核函数能够产生几乎同样的结果,但在回归中,不同的核函数往往对拟合结果有较大的影响。
   支持向量回归算法主要是通过升维后,在高维空间中构造线性决策函数来实现线性回归,用e不敏感函数时,其基础主要是e不敏感函数和核函数算法。若将拟合的数学模型表达多维空间的某一曲线,则根据e不敏感函数所得的结果,就是包括该曲线和训练点的“e管道”。在所有样本点中,只有分布在“管壁”上的那一部分样本点决定管道的位置。这一部分训练样本称为“支持向量”。为适应训练样本集的非线性,传统的拟合方法通常是在线性方程后面加高阶项。此法诚然有效,但由此增加的可调参数未免增加了过拟合的风险。支持向量回归算法采用核函数解决这一矛盾。用核函数代替线性方程中的线性项可以使原来的线性算法“非线性化”,即能做非线性回归。与此同时,引进核函数达到了“升维”的目的,而增加的可调参数是过拟合依然能控制。
给几个有用的链接:
http://www.support-vector.net/index.html
http://www.support-vector.net/software.html
http://www.csie.ntu.edu.tw/~cjlin/libsvm/
http://www.isis.ecs.soton.ac.uk/isystems/kernel/
http://www.ecs.soton.ac.uk/~srg/publications/pdf/SVM.pdf
http://www.kernel-machines.org/
比较好的书:1. Vapnik. Statistical Learning Theory. Springer, N.Y., 1998.
2. Vapnik. The Nature of Statistical Learning Theory. Springer, N.Y., 1995.
3. Steve R. Gunn. Support Vector Machines for Classification and Regression. University of Southampton, 1997.4. 吾今培,孙德山. 现代数据分析. 北京:机械工业出版社,2006.

你可能感兴趣的:(数据结构,算法,.net,网络应用,出版)