支持向量机的闪光点
把低维度的数据,按照一定的方式,转化为高纬度数据
转换的方式,可以定制,定制的目的,就是实现可分。
具体可以参考讲的比较透彻的网页
https://blog.csdn.net/macyang/article/details/38782399
摘录:
特征空间的隐式映射:核函数
咱们首先给出核函数的来头:
在上文中,我们已经了解到了SVM处理线性可分的情况,而对于非线性的情况,SVM 的处理方法是选择一个核函数 ,通过将数据映射到高维空间,来解决在原始空间中线性不可分的问题。由于核函数的优良品质,这样的非线性扩展在计算量上并没有比原来复杂多少,这一点是非常难得的。当然,这要归功于核方法——除了 SVM 之外,任何将计算表示为数据点的内积的方法,都可以使用核方法进行非线性扩展。
也就是说,Minsky和Papert早就在20世纪60年代就已经明确指出线性学习器计算能力有限。为什么呢?因为总体上来讲,现实世界复杂的应用需要有比线性函数更富有表达能力的假设空间,也就是说,目标概念通常不能由给定属性的简单线性函数组合产生,而是应该一般地寻找待研究数据的更为一般化的抽象特征。
python实现SVM
https://blog.csdn.net/u010665216/article/details/78382984
SVM算法小结
SVM算法是一个很优秀的算法,在集成学习和神经网络之类的算法没有表现出优越性能之前,SVM算法基本占据了分类模型的统治地位。目前在大数据时代的大样本背景下,SVM由于其在大样本时超级大的计算量,热度有所下降,但仍然是一个常用的机器学习算法。
SVM算法的主要优点有:
解决高维特征的分类问题和回归问题很有效,在特征维度大于样本数时依然有很好的效果。
仅仅使用一部分支持向量来做超平面的决策,无需依赖全部数据。
有大量的核函数可以使用,从而可以很灵活的来解决各种非线性的分类回归问题。
样本量不是海量数据的时候,分类准确率高,泛化能力强。
SVM算法的主要缺点有:
如果特征维度远远大于样本数,则SVM表现一般。
SVM在样本量非常大,核函数映射维度非常高时,计算量过大,不太适合使用。
非线性问题的核函数的选择没有通用标准,难以选择一个合适的核函数。
SVM对缺失数据敏感。
参考:http://www.cnblogs.com/pinard/p/6113120.html
补充
线性支持向量机
<u>http://www.cnblogs.com/pinard/p/6097604.html</u>
线性不可分支持向量机:
<u>https://www.cnblogs.com/pinard/p/6103615.html</u>
点的SVM分类实例:
<u>https://blog.csdn.net/zoinsung_lee/article/details/78429607</u>