⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 program.m

📁 matlab支持向量机程序SVM_SteveGu
💻 M
字号:
clc
clear
close all
x = rand(10,2);
X=x(:,1);
Y=x(:,2);
y=rand(1,10);
%[alpha,b] = trainlssvm({X,Yc,type,gam,sig2,kernel_type,preprocess});  
[nsv, alpha, b0,w] = svc(x,y);
[p0,d]=chuidian(X,Y);
if  min(d)
    
end    
[w,b]=fenleixian(X,Y);        %此处应有递归调用
pi=jiaodian(w,b);

n=length(pi); %N为类的个数,n为分类线交点的个数
for i=1:n  
    if w==((p(i,2)-p(0,2))/(p(i,1)-p(0,1))) %  判断p(i)是否和p0共分类线
        p=p(i);
    end
end
pn = length(p); 
disp(pn);                                    %和p0共线的个数

for i=1:pn   
    for j=1:pn
       if (p(i)-p0)*(p0-p(j))<0 & min(abs(p(j)-p0)+abs(p0-p(i)))          % 点在p0 的两侧且到p0的距离最小
            if p(i,1)>p(j,1)
                    p1=p(i);
                    p2=p(j);
            else
                    p1=p(j);
                    p2=p(i); 
            end
        
       end
             
     end
      tubao(p1,p2,p3);
end
%=======以下是只利用构成凸包的分类线解决分类
%[alpha,b] = trainlssvm({X,Yc,type,gam,sig2,kernel_type,preprocess});  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -