QUADCLASS

Quadratic classifier.



 Synopsis:
  [y,dfce] = quadclass(X,model)

 Description:
  This function classifies input data X using quadratic
  discriminant function:

  y(i) = argmax X(:,i)'*A(:,:,y)*X(:,i) + X(:,i)'*B(:,y) + C(y)
           y

  where parameters A [dim x dim x nfun], B [dim x nfun]
  and model C [1 x nfun] are given in model and nfun is
  number of discriminant functions.

  In the binary case (nfun=1) the classification rule is following
    y(i) = 1 if X(:,i)'*A*X(:,i) + X(:,i)'*B + C >= 0
           2 if X(:,i)'*A*X(:,i) + X(:,i)'*B + C < 0
  
  where A [dim x dim], B [dim x 1] and C [1x1] are parameters
  given in model.

 Input:
  X [dim x num_data] Data to be classified.

  model [struct] Describes quadratic classifier:
   .A [dim x dim x nfun] Parameter of quadratic term.
   .B [dim x nfun] Parameter of linear term.
   .C [1 x nfun] Bias.

 Output:
  y [1 x num_data] Predicted labels.
  dfce [nfun x num_data] Values of discriminat function.

 Example:
  trn = load('riply_trn');
  tst = load('riply_tst');
  gauss_model = mlcgmm(trn);
  quad_model = bayesdf(gauss_model);
  ypred = quadclass(tst.X, quad_model);
  cerror(ypred, tst.y)
  figure; ppatterns(trn); pboundary(quad_model);

 See also
  QMAPLIN2QUADLINCLASS


Source: quadclass.m

About: Statistical Pattern Recognition Toolbox
(C) 1999-2003, Written by Vojtech Franc and Vaclav Hlavac
Czech Technical University Prague
Faculty of Electrical Engineering
Center for Machine Perception

Modifications:
2-may-2004, VF