GURLS++  2.0.00
C++ Implementation of GURLS Matlab Toolbox
gurls::KernelLinear< T > Class Template Reference

KernelLinear is the sub-class of Kernel that builds the kernel matrix for a linear model.

#include <linearkernel.h>

Inheritance diagram for gurls::KernelLinear< T >:
Collaboration diagram for gurls::KernelLinear< T >:

List of all members.

Public Member Functions

GurlsOptionsListexecute (const gMat2D< T > &X, const gMat2D< T > &Y, const GurlsOptionsList &opt) throw (gException)
 Builds the symmetric kernel matrix of matrix X for a linear model.

Static Public Member Functions

static Kernel< T > * factory (const std::string &id) throw (BadKernelCreation)
 Factory function returning a pointer to the newly created object.

Detailed Description

template<typename T>
class gurls::KernelLinear< T >

Definition at line 59 of file linearkernel.h.


Member Function Documentation

template<typename T >
GurlsOptionsList * gurls::KernelLinear< T >::execute ( const gMat2D< T > &  X,
const gMat2D< T > &  Y,
const GurlsOptionsList opt 
) throw (gException) [virtual]
Parameters:
Xinput data matrix
Ylabels matrix
optnot udes
Returns:
kernel, a GurslOptionList with the following fields:
  • type = "linear"
  • K = the kernel matrix

Implements gurls::Kernel< T >.

Definition at line 77 of file linearkernel.h.

{

    GurlsOptionsList* kernel = new GurlsOptionsList("kernel");
    kernel->addOpt("type", "linear");

    gMat2D<T>* K = new gMat2D<T>(X.rows(), X.rows());

    dot(X.getData(), X.getData(), K->getData(), X.rows(), X.cols(), X.rows(), X.cols(), K->rows(), K->cols(), CblasNoTrans, CblasTrans, CblasColMajor);

    kernel->addOpt("K", new OptMatrix<gMat2D<T> >(*K));

    return kernel;
}
template<typename T>
static Kernel<T>* gurls::Kernel< T >::factory ( const std::string &  id) throw (BadKernelCreation) [inline, static, inherited]
Warning:
The returned pointer is a plain, un-managed pointer. The calling function is responsible of deallocating the object.

Definition at line 110 of file kernel.h.

    {
        if(id == "linear")
            return new KernelLinear<T>;
        if(id == "rbf")
            return new KernelRBF<T>;
        if(id == "chisquared")
            return new KernelChisquared<T>;

        throw BadKernelCreation(id);
    }

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends