Advertisement
Guest User

Untitled

a guest
Feb 9th, 2012
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. private Kernel getKernel (KernelType kType) {
  2. Kernel k = null;
  3. double width = 1.4;
  4. int cache_size = 10;
  5. switch (kType) {
  6. case GAUSSIAN:
  7. k = new GaussianKernel (10, width);
  8. break;
  9. case HIK:
  10. double beta = 1.4;
  11. HistogramIntersectionKernel hik = new HistogramIntersectionKernel (cache_size);
  12. hik.set_beta (beta);
  13. k = hik;
  14. break;
  15. case POLY:
  16. int degree = 1;
  17. k = new PolyKernel (cache_size, degree);
  18. break;
  19. case CHI2:
  20. k = new Chi2Kernel (cache_size, width);
  21. break;
  22. default:
  23. System.err.println ("invalid kernel type!");
  24. System.exit (1);
  25. }
  26. return k;
  27. }
  28.  
  29. public void train (DoubleMatrix trainSet, Labels trainLabels) {
  30. double eps = 1e-5;
  31. double C = 1;
  32.  
  33. RealFeatures trainFeats = new RealFeatures (trainSet);
  34.  
  35. boolean slow = false;
  36. if (slow) {
  37. kernel = getKernel (kernelType);
  38. kernel.init (trainFeats, trainFeats);
  39. } else {
  40. kernel = new HistogramIntersectionKernel (trainFeats, trainFeats, 1.4);
  41. }
  42. ml = new LaRank (C, kernel, trainLabels);
  43. ((LaRank)ml).set_epsilon (eps);
  44. ml.train ();
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement