# I want to optimize Nonlinear Least Square SVM 's hyper parameters (c,eta,gamma) using Artificial Bee Colony (ABC) Algorithm (downloaded from mathworks website). Please guide me how to pass 3 parameters in cost function to optimize hyper parameters.

5 views (last 30 days)
SANA on 1 Apr 2018
Edited: SANA on 1 Apr 2018
% if true
1 function z = Sphere(x)
2 z = sum(x.^2);
3 end
% end
I write following function but I am not sure it will work.
% if true
1 % diff: Difference between Actual labels/classes of test data
2 % and labels predicted by the Kernel SVM classifier
3 % c: cost penalty
4 % eta: insensitive loss parameter
5 % gamma: value of gamma in kernel fuction of Kernel SVM
6 function w = RegularizedRiskFunction(test,SVM_Mdl, eta, c, gamma)
7 % % % KSVM_3(gamma);
9 % Calculating class labels of test data classified
11 test = test17;
13 tp = tp17;
14 % Predicting test data price
15 P = predict (SVM_Mdl, test);
16 save predictedLabel P;
17 % Calculating KSVM Model and percentage accuracy of classification
18 diff = [];
19 score = 0;
20 for i = 1: size(tf17)
21 diff(i,:) = abs(tp17(i) - P(i));
22 if diff(i,:) < Eta
23 diff(i,:) = 0;
24 score = score + 1;
25 end
26 end
27 save CError diff;
28 diff = yi-y;
29 Eta = e;
30 for i = 1 : size(diff16)
31 if diff16 < Eta
32 diff16 = 0;
33 end
34 s = sum(diff);
35 m = 0.5;
36 D = 3;
37 w = (s + m*(c^2))/D;
38 end
% end
Please guide me, how to pass hyper parameters(optimized by ABC algorithm) to cost function and train svm model after every iteration of ABC algorithm and how to calculate error to pass back to ABC algorithm.