day05-二分类问题(二)
二分类评价指标
准确率:
缺点:在数据类别不平衡的时候使用这个评价指标不能客观评价算法的优劣。
混淆矩阵
首先定义:
TN:算法预测为负例(N),实际上也为负例(N)的个数,模型预测对了(True)
FP:算法预测为正例(P),实际上是负例(N)的个数,模型预测错了(Fasle)
FN:算法预测为负例(N),实际上是正例(P)的个数,模型预测错了(False)
TP:算法预测为正例(P),实际上也是正例(P)的个数,模型预测对了(True)
通过TP,FP,FN,TP组成的混淆矩阵:
精准率定义:
召回率定义:
F1 score:
由上式推导得到:
SVM原理
SVM(support vector machine),支持向量机。特征空间上的间隔最大的线性分类器,其学习策略是间隔最大化,最终可转化为一个凸二次规划问题的求解。
概念:
1)线性可分支持向量机 当训练数据线性可分时,通过硬间隔最大化,学习一个线性的分类器,即线性可分支持向量机。
2)线性支持向量机 当训练数据近似线性可分时,通过软间隔最大化,也可学习一个线性的分类器,即线性支持向量机,也称软间隔支持向量机。
3)非线性支持向量机 当训练数据线性不可分时,通过使用核函数及软间隔最大化,学习非线性支持向量机。
4)当训练数据是线性可分的,能够找到一个平面可以完全的将数据分类正确时,此时的数据到超平面的距离叫做硬间隔。
5)如果训练数据是近似线性可分的,同样可以找到一个超平面能够将大部分的数据分类正确,但是还是有少量样本分类错误,如果能够容忍这种错误的存在(且设置了容忍系数),此时训练数据到超平面的距离就是软间隔。
线性可分支持向量机
假设有样本:
一个线性分类器的决策边界可以写成如下形式:
w和b是模型参数。
如果xa和xb是两个分界面上的点,则:
两式相减:
其中方块线为:+1
圆形线为:-1
这有:
此时则有:
设xa,xb分别属于上面两个式子的点,则有:
则有:
最大化
等价于:
其中,
解得最优解:w,b。由此获得超平面:
应用拉格朗日方程,通过对偶条件得到原始问题的最优解,这样就是线性可分支持向量机的对偶算法:1.对偶问题更容易求解;2.引入核函数,可以推广到分线性分类问题。定义拉格朗日函数:
将拉格朗日函数L(w,b,a)分别对w,b求偏导数并令其等于0.
将上面两个式代入拉格朗日函数:
求a的极大,则:
转化为极小问题:
最优解:
线性支持向量机与软间隔最大化
线性可分支持向量机的学习方法对线性不可分的训练数据是不适用的。线性不可分意味着某些样本(xi,yi)不能满足函数间隔大于等于1的条件,那么可以引入一个松弛变量:
增加约束条件:
这样对于每个松弛变量存在一个代价,目标函数由原来的1/2||w||,变成:
这样线性不可分的线性支持向量机的学习问题变成了凸二次规划问题(原始问题):
同样,将这个问题转化为拉格朗日的问题:
得:
同样构建对偶问题:
同样获得最优解:
求的超平面:
分类决策平面函数:
非线性支持向量机与核函数
非线性分类问题,显然无法使用一个线性分离超平面来把不同的类别的数据点分开:
1)使用一个变换:
将非线性特征空间映射到线性特征空间z;
2)在新的特征空间z中使用线性分类svm学习分类,从而训练数据获得模型。