📄 svm_rbf.m
字号:
function [pesos,vect,b]=svm_rbf2(datos,escala,niter,cad,restric);%% [pesos,vect,b]=svm_rbf(datos,escala,niter,cad,restric);%% datos - data% escala - width of centers% niter - number of iterations% cad - learning rate% restric - regularization parameter%% pesos - weights% vect - support vectors% b - bias%% Hugh Pasika 1997[numero,pp]=size(datos);y = 2*datos(:,5)-1;k = zeros(numero,numero);for i=1:numero, k(:,i)=(datos(:,1)-datos(i,1)).^2 + (datos(:,2)-datos(i,2)).^2;endk = exp(-k/escala);k = k.*(y*(y')); % no estoy seguro de estoalfa=zeros(numero,1);for i=1:niter alfa=alfa+cad*(1-k*alfa); alfa=alfa-mean(alfa.*y)*y; alfa=svm_proymenor(svm_proymayor(alfa,0,0),restric,0);% plot(i,(sum(alfa)+(alfa')*k*alfa)),drawnowendaux1=find(alfa~=0);if length(aux1)==0, error('No support vectors identified.'); endpesos = alfa(aux1).*y(aux1);vect = datos(aux1,:);k = k./(y*(y'));k = k(aux1,:);b = mean(y-(k')*pesos);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -