Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- load data/usps/tr.dat;
- load data/usps/trlabels.dat;
- load data/usps/ts.dat;
- load data/usps/tslabels.dat;
- ###########################################
- ##Separacion de los datos que vamos a usar#
- ###########################################
- indicesTraining = find(trlabels<=3);
- tr = tr(indicesTraining,:);
- trlabels = trlabels(indicesTraining,:);
- indicesTest = find(tslabels<=3);
- ts = ts(indicesTest,:);
- tslabels = tslabels(indicesTest,:);
- ############################
- #Funcion prediccion binaria#
- ############################
- function[label] = binario(indices,tr,trlabels,ts,tslabels)
- trvs = tr(indices,:);
- tlvs = trlabels(indices,:);
- res = svmtrain(tlvs,trvs,"-t 2 -c 0.1 -q");
- label = svmpredict(tslabels,ts,res,' ');
- endfunction
- label0vs1 = binario(find(trlabels <= 1),tr,trlabels,ts,tslabels);
- label0vs2 = binario(find(trlabels == 0 | trlabels == 2),tr,trlabels,ts,tslabels);
- label0vs3 = binario(find(trlabels == 0 | trlabels == 3),tr,trlabels,ts,tslabels);
- label1vs2 = binario(find(trlabels == 1 | trlabels == 2),tr,trlabels,ts,tslabels);
- label1vs3 = binario(find(trlabels == 1 | trlabels == 3),tr,trlabels,ts,tslabels);
- label2vs3 = binario(find(trlabels == 2 | trlabels == 3),tr,trlabels,ts,tslabels);
- labels = zeros(size(tslabels),1);
- for i = 1:size(tslabels)
- if (label0vs3(i) == 0)
- if (label0vs2(i) == 0)
- if (label0vs1(i) == 0)
- labels(i) = 0;
- else
- labels(i) = 1;
- endif
- else
- if (label1vs2(i) == 1)
- labels(i) = 1;
- else
- labels(i) = 2;
- endif
- endif
- else
- if (label1vs3(i) == 3)
- if (label2vs3(i) == 3)
- labels(i) = 3;
- else
- labels(i) == 2;
- endif
- else
- if (label1vs2(i) == 2)
- labels(i) = 2;
- else
- labels(i) = 1;
- endif
- endif
- endif
- endfor
- sum(labels == tslabels)/size(tslabels)(1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement