1.SVM原理与数据模型推导
支持向量机要解决的问题:就是找到一条合适的决策边界,决策边界越大越好。虽然说起来比较拗口,但是中心思想就是离决策边界最近的点到决策边界的距离尽可能地远。
1.1 定义及思想
将最优决策边界向上&下平移,在遇到第一个点时停下来,这个点被称为支撑向量Support Vector;支撑向量到决策边界的距离是d;这两条平移后的直线的间隔(2d)被称为最大间隔Margin。
支撑向量就是支撑着两条平移边界的点,我们只需要重点研究这几个支撑向量即可,这也是SVM名称的由来;Margin就是分界面可以移动的范围,范围越大表示容错能力越强。
所以我们可以看到,所谓的支撑向量机,最初就是一个线性分类器,只不过这个线性分类器不仅能把样本分对,可以最大化Margin。
1.2 优化目标
1.3 目标函数
1.4拉格朗日乘子法
1.5 SVM求解
2. 软间隔
2.1 为何需要软间隔
在线性可分问题中,对于样本点来说,存在一根直线可以将样本点划分,我们称之为Hard Margin SVM;但是(同样线性不可分),有时候会出现不那么完美,样本点会有一些噪声或者异常点,并不能完全分开。即没有一条直线可以将样本分成两类。那么就提出了Soft Margin SVM。
2.2 soft margin的思想
2.3 正则化思想
2.4 soft margin的目标函数
3 核函数Kernel Trick
主要解决的问题是,低维不可分的问题。目标是找到一种变换的方法,也就是
3.1 多项式核函数
3.2 高斯核函数
3.3 SVM最终优化函数
4. SVM解决回归问题思想
5. SVM优缺点
SVM算法的主要优点有:
(1)解决高维特征的分类问题和回归问题很有效,在特征维度大于样本数时依然有很好的效果。
(2)仅仅使用一部分支持向量来做超平面的决策,无需依赖全部数据。
(3)有大量的核函数可以使用,从而可以很灵活的来解决各种非线性的分类回归问题。
(4)样本量不是海量数据的时候,分类准确率高,泛化能力强。
SVM算法的主要缺点有:
(1)如果特征维度远远大于样本数,则SVM表现一般。
(2)SVM在样本量非常大,核函数映射维度非常高时,计算量过大,不太适合使用。
(3)非线性问题的核函数的选择没有通用标准,难以选择一个合适的核函数。
(4)SVM对缺失数据敏感。