github: 100DaysOfMLCode
What is SVM:
SVM是一种监督学习算法,可用于分类问题和回归问题,主要用于分类问题。在该算法中,将数据的每一个特征看作是n维空间的一个维度,之后对空间中的点进行分类划分。
How is the data Classified:
分类方法是找到一个超平面,可以将数据划分在超平面的两侧。
What is a optimal Hyper-Plane?
最佳超平面是划分的两类数据点中距超平面距离最近的点到超平面的距离最大。
非线性数据
对非线性数据无法找到一个线形平面进行划分,则可以采用维度变换,比如二维空间的一个圆,令z=x2+y2z = x^2 + y^2z=x2+y2,则在三位空间内,对z的划分可以实现圆内和圆外的划分。
通常采用核方法处理非线性数据。
调参
1.Kernel
核方法对数据做变换,多项式、指数等核在更高维度计算划分平面。
2.GAMMA
gamma低表明离分割平面远的点也参与分割平面计算,gamma高表明离分割平面远的点参与度低。
3.REGULARIZATION
正则化,超平面的复杂度