有导式
解决分类、回归的问题
分类原理:
二分类
构造分类超平面,实现样本划分 n维 n-1维
最小化问题,不等式问题
变为:对偶问题,等式问题
转化过程参照网上的博客
推广:(线性不可分的时候仍然能用)
低维空间映射到高维空间,有可能会从线性不可分变为线性可分
纬度增加,要在高维空间做内积,比较复杂,利用K积,简化
支持向量机:低维映射到高维;利用Knell积,低维计算内积代替高维
最早用来解决分类问题
现在用它解决回归问题
在SVM分类的基础上引入了 丌敏感损失函数,从而得到了回归型支持向
量机(Support Vector Machine for Regression,SVR)。
寻找一个最优分类面使得所有训练样本离该最优分类面的误差最小。
多分类转化为二分类
方法一、one-against-all
方法二、one-against-one
每一个a对应一个样本
分块算法(Chunking)
Osuna算法
序列最小优化算法(Sequential Minimal Optimization,SMO)
增量学习算法(Incremental Learning)
怎样选择a,很多论文在论述,自己查
支持向量机的工具箱:(私人开发编写) (matlab系统自带的工具箱是用最小二乘法实现的)
Libsvm工具箱
需要自己下载
需要先安装 C++编译器 (VS就可以)
>> pathtool
^……
重点函数解读
• meshgrid
– Generate X and Y arrays for 3-D plots
– [X,Y] = meshgrid(x,y)
• svmtrain
– Train support vector machine classifier
– model = svmtrain(train_label,train_matrix,’libsvm_options’);
• svmpredict
– Predict data using support vector machine
– [predict_label,accuracy] = svmpredict(test_label,test_matrix,model);
因为训练集、测试集划分比较随机,所以结果不是很好。
搞清楚别人写的函数的接口,实现过程。