/netlab/knn.m

http://princeton-mvpa-toolbox.googlecode.com/ · MATLAB · 35 lines · 11 code · 5 blank · 19 comment · 1 complexity · beede5e80f0a8295dca33b3666b052d6 MD5 · raw file

  1. function net = knn(nin, nout, k, tr_in, tr_targets)
  2. %KNN Creates a K-nearest-neighbour classifier.
  3. %
  4. % Description
  5. % NET = KNN(NIN, NOUT, K, TR_IN, TR_TARGETS) creates a KNN model NET
  6. % with input dimension NIN, output dimension NOUT and K neighbours.
  7. % The training data is also stored in the data structure and the
  8. % targets are assumed to be using a 1-of-N coding.
  9. %
  10. % The fields in NET are
  11. % type = 'knn'
  12. % nin = number of inputs
  13. % nout = number of outputs
  14. % tr_in = training input data
  15. % tr_targets = training target data
  16. %
  17. % See also
  18. % KMEANS, KNNFWD
  19. %
  20. % Copyright (c) Ian T Nabney (1996-2001)
  21. net.type = 'knn';
  22. net.nin = nin;
  23. net.nout = nout;
  24. net.k = k;
  25. errstring = consist(net, 'knn', tr_in, tr_targets);
  26. if ~isempty(errstring)
  27. error(errstring);
  28. end
  29. net.tr_in = tr_in;
  30. net.tr_targets = tr_targets;