rfefeatselchecker.m

来自「关于svm的例程」· M 代码 · 共 41 行

M
41
字号

clear all
close all
nbapp=160;
nbtest=320;
n=3;
sigma=0.7;
nbdimensionparasite=10;
nbVar=2;
nbiter=10;
aux=zeros(nbiter,2+nbdimensionparasite);

for i=1:nbiter;
   
    [xapp,yapp,xtest,ytest]=dataset('Checkers',nbapp,nbtest,sigma);
    nbtest=size(xtest,1);
    xapp=[xapp sigma*randn(nbapp,nbdimensionparasite)];
    xtest=[xtest randn(nbtest,nbdimensionparasite)];
    
    verbose = 0;
    c = inf;                    
    epsilon = 1e-7;          
    kerneloption = 1;           
    kernel='gaussian';
    
    [xsup,w,b,pos,timeps,alpha,EliminatedVariables,Criterion]=svmclassRFEnonlin(xapp,yapp,c,epsilon,kernel,kerneloption,verbose);
    
    [xsup,w,b,pos]=svmclass(xapp(:,EliminatedVariables(1:2)),yapp,c,epsilon,kernel,kerneloption,verbose);
    ypred=svmval(xtest(:,EliminatedVariables(1:2)),xsup,w,b,kernel,kerneloption);
    
    apppos=find(yapp>0);
    appneg=find(yapp<0);
    %plot(xapp(apppos,1),xapp(apppos,2),'or',xapp(appneg,1),xapp(appneg,2),'xb');
    
    testneg=find(ytest<0);
    testpos=find(ytest>0);
    tauxbc=(sum((ypred(testneg)<0))+sum((ypred(testpos)>=0)))/nbtest;
    fprintf(' i:%d   Variables : %d     %d  Taux de Bonne Classif Checkers = %2.2f \n',i,EliminatedVariables(1),EliminatedVariables(2),tauxbc);
    aux(i,:)=EliminatedVariables; 
    clear xapp yapp xtest ytest;
end;

⌨️ 快捷键说明

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