SPIDER The Spider Objects

Kernel object - for calculating inner products in feature spaces


   Attributes: 
    ker='linear'      -- type of kernel (linear, poly rbf, custom, SEE BELOW)
    kerparam=[]       -- parameters of the kernel  
    kercaching=0      -- yes if caching the kernel (only for data_global)
    calc_on_output=0  -- calc kernel on outputs (Ys), rather than inputs (Xs)
    output_distance=0 -- output associated distance rather than kernel
    dat=[]            -- storage of data (for use when training/testing kernels)
   
  
   Methods:
    calc(k,d1,[d2]):     calc inner products in feature space between data d1 
                         and d2 (or itself if d2 not specified) using kernel k 
    get_norm(k,d):       calc norm of data in feature space
    train,test
     
   KERNEL               PARAMETERS &  DESCRIPTION
    linear                             k(x,y)=x.y
    poly                poly degree d, k(x,y)=(x.y+1)^d
    rbf                 sigma,         k(x,y)=exp(-|x-y|^2/(2*sigma^2))
    Gaussian            sigma,         k(x,y)=1/(2*pi^(N/2)*sqrt(sigma)) exp(..)
    kmgraph             gamma,         marginalized kernel for graphs
    spikernel                          kernel for spike trains
   
    weighted_linear     scale fact. w, k(x,y)=sum w_i^2 x_i y_i
    weighted_poly       scale fact. w, k(x,y)=(sum w_i^2 x_i y_i+1)^d
  
    rbf_of_dist         rbf kernel applied to an input distance matrix
    poly_of_ker         poly kernel applied to an input kernel matrix
  
    template_kernel     example to help make your own kernel 
    custom              takes values from indices of matrix (kerparam)
    custom_fast         takes values from global variable K 
  
   Example: - calc(kernel('rbf',2),data(rand(5)))
            - calc(kernel('localfunctioninsearchpath',data(rand(5)))
  
   [Note: you can also access kernel params using "rbf",
   "poly" or "weighted_linear" for poly, rbf and weighted_linear kernels, which
   is implemented using alias member of @algorithm, aliasing the kerparam
   e.g a=svm(kernel('rbf')); a.rbf=4;    set width of rbf kernel
   see help algorithm for more information]  

Reference : Learning with Kernels (Bernhard Schölkopf and Alexander J. Smola)
Author : Bernhard Schölkopf , Alexander J. Smola
Link : http://www.amazon.com/exec/obidos/tg/detail/-/0262194759/qid=1080825189/sr=1-1/ref=sr_1_1/002-6279399-2828812?v=glance&s=books