[数学模型]支持向量机 从应用的角度理解 (一)

最近学习了支持向量机,  小生才疏学浅,  真的看不懂诶,  只好以应用的方式去理解了.  木有关系,  只要我们会用就好,  理解放到以后把!

多说一句,  如果你真的想学会它的化,  学会二次规划,  KKT就容易多了.

先说一下支持向量机能干什么,  可以分类.  比如一下,  你有一些嫌疑犯样本,  它们有n个体貌特征,  这些嫌疑犯分为 犯过罪与没犯过罪 两类,   假设特征与是否犯罪是有关系的奥,  你可以根据样本训练出支持向量机,  这个向量机可以根据特征判断未知的人是否犯过罪. 

支持向量机分4种数学模型,  线性可分,  线性不可分,  非线性可分,  非线性不可分.

按照上面的顺序,  第一个发现不行,  用第二个就可以了, 依此类推. 

下面非常弱智地把他们四个讲解一下,  以便大家使用,

线性可分

这是最简单的一种,  就是用一条线,  把不同特性的样本完全分开.

线性不可分

不能按照上面的情况完全分开,  这时候我们进行一些软化操作,  允许一些不可分的特例  这种方法称为软间隔.

非线性

 这种情况样本完全不可分了,  甚至是混合在一起.  然而他们还是有可能可以分的,  我们需要利用核函数K将n维的特征投射到更高维度上去,  再用线性的眼光看待

线性内核就是什么变动都没有做,  常见Kernel 就这几个,  咱们既然不知道原理,  做不出来结果的时候就可以随便试试 ^ ^. 




这里我提供一个实例: 让我们用短短20行代码见证机器学习的威力吧!

乳腺肿瘤通过穿刺采样进行分析可以确定其为良性的或为恶性的。医学研究发现
乳腺肿瘤病灶组织的细胞核显微图像的 10 个量化特征:细胞核直径、质地、周长、面
积、光滑度、紧密度、凹陷度、凹陷点数、对称度、断裂度与该肿瘤的性质有密切的关
系。现试图根据已获得的实验数据建立起一种诊断乳腺肿瘤是良性还是恶性的方法。数
据来自已确诊的 500 个病例,每个病例的一组数据包括采样组织中各细胞核的这 10 个
特征量的平均值、标准差和最坏值共 30 个数据,并将这种方法用于另外 69 名已做穿刺
采样分析的患者。
这个问题实际上属于模式识别问题。什么是模式呢?广义地说,在自然界中可以
观察的事物,如果我们能够区别它们是否相同或是否相似,都可以称之为模式。人们为
了掌握客观事物,按事物相似的程度组成类别。模式识别的作用和目的就在于面对某一
具体事物时将其正确地归入某一类别。
模式识别的方法很多,如数理统计方法、聚类分析方法等。

一个样本是这样的:

842302,-1,17.99,10.38,122.8,1001,0.1184,0.2776,0.3001,0.1471,0.2419,0.07871,1.095,0.9053,8.589,153.4,0.006399,0.04904,0.05373,0.01587,0.03003,0.006193,25.38,17.33,184.6,2019,0.1622,0.6656,0.7119,0.2654,0.4601,0.1189

线性可分的代码:

clc,clear 
load cancerdata.txt; 
can=cancerdata; 
can(:,1)=[];   %删除第一列病例号 
gdb=find(can(:,1)==1);   %读出良性肿瘤的序号 
n1=length(gdb);    %计算良性肿瘤样本点的个数 
bdb=find(can(:,1)==-1); %读出恶性肿瘤的序号 
n2=length(bdb);    %计算恶性肿瘤样本点的个数 
gd=can(gdb,2:end);   %提出良性肿瘤的数据   
bd=can(bdb,2:end);   %提出恶性肿瘤的数据 
xd=can([501:569],[2:end]); %提出待分类数据 
H=eye(31);H(31,31)=0;   %w,b 总共 31 个待定参数,b 对应最后一个参数 
ga=[gd,ones(n1,1)];   %良性样本点对应的系数矩阵 
ba=[bd,ones(n2,1)];   %恶性样本点对应的系数矩阵  
a=[-ga;ba];   %线性不等号约束的系数矩阵 
b=-ones(500,1); %线性不等号约束的右端项 
[wb,fval,flag]=quadprog(H,[],a,b)   %调用二次规划命令 
xdf=[xd,ones(69,1)];  
g=xdf*wb;    %计算w'*x+b 的值      
g1=find(g>0)'    %良性样本序号 
g2=find(g<0)'    %恶性样本序号 
其他我还木有解决,  下次再发.







  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值