| pe_kernelm PE_KERNELM  Pseudo-Euclidean kernel mapping
      K = PE_KERNELM(A,B)W = B*PE_KERNELM
 W = PE_KERNELM([],B)
 K = A*W
 
 
  | Input |  | A | Pseudo-Euclidean dataset of size NxK |   | B | Pseudo-Euclidean dataset of size MxK |   | Output |  | W | PE mapping |   | K | Kernel matrix, size [N M] |   Description Computation of a kernel matrix in a pseudo-Euclidean space. The signature  of this space should be stored in the datasets A and B, see SETSIG.  K = A*J*B', where J is a diagonal matrix with 1's, followed by -1's.  | J | = diag ([ONES(SIG(1),1);  -ONES(SIG(2),1)]); |  | The | two-element vector SIG stores the signature of the space. This is the |   | number | of 'positive' dimensions, followed by the number of 'negative' |   | dimensions. | It is computed by a pseudo-Eucledean embedding, e.g. PSEM, |   | and | stored in the related mapping and datasets that are projected in this |   | space. |  |   The resulting kernel matrix K is indefinite in case A == B. This routine  may be used in support vector routines and other kernelized procedures.  Note that most of such routines are not optimal for indefinite kernels.  Example(s)
 a = gendatb;                  % generate dataset
d = a*proxm(a,'m',1);         % compute L1 distance matrix
 w = psem(d);                  % embed in PE space
 b = d*w;                      % project data in this space
 [trainset testset] = gendat(b,0.5);     % split in trainset and testset
 ktrain = pe_kernelm(trainset,trainset); % compute train kernel
 w = svc(ktrain,0);            % compute SV classifier
 ktest = pe_kernelm(testset,trainset);   % compute test kernel
 ktest*w*testc                 % inspect error of testset
 
  See also
datasets, mappings, pe_em, pe_distm,  | This file has been automatically generated. If badly readable, use the help-command in Matlab. | 
 |