PLearn 0.1
Public Member Functions | Static Public Member Functions | Static Public Attributes | Static Protected Member Functions | Protected Attributes | Private Types
PLearn::ConvexBasisKernel Class Reference

returns prod_i log(1+exp(c*(x1[i]-x2[i]))) NOTE: IT IS NOT SYMMETRIC! More...

#include <ConvexBasisKernel.h>

Inheritance diagram for PLearn::ConvexBasisKernel:
Inheritance graph
[legend]
Collaboration diagram for PLearn::ConvexBasisKernel:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ConvexBasisKernel ()
 ConvexBasisKernel (real the_c)
virtual string classname () const
virtual OptionListgetOptionList () const
virtual OptionMapgetOptionMap () const
virtual RemoteMethodMapgetRemoteMethodMap () const
virtual ConvexBasisKerneldeepCopy (CopiesMap &copies) const
virtual real evaluate (const Vec &x1, const Vec &x2) const
 ** Subclasses must override this method **

Static Public Member Functions

static string _classname_ ()
static OptionList_getOptionList_ ()
static RemoteMethodMap_getRemoteMethodMap_ ()
static Object_new_instance_for_typemap_ ()
static bool _isa_ (const Object *o)
static void _static_initialize_ ()
static const PPathdeclaringFile ()

Static Public Attributes

static StaticInitializer _static_initializer_

Static Protected Member Functions

static void declareOptions (OptionList &ol)
 recognized option is "c"

Protected Attributes

real c
 smoothing constant

Private Types

typedef Kernel inherited

Detailed Description

returns prod_i log(1+exp(c*(x1[i]-x2[i]))) NOTE: IT IS NOT SYMMETRIC!

Definition at line 55 of file ConvexBasisKernel.h.


Member Typedef Documentation

Reimplemented from PLearn::Kernel.

Definition at line 57 of file ConvexBasisKernel.h.


Constructor & Destructor Documentation

PLearn::ConvexBasisKernel::ConvexBasisKernel ( ) [inline]

Definition at line 63 of file ConvexBasisKernel.h.

        : inherited(false), c() {}
PLearn::ConvexBasisKernel::ConvexBasisKernel ( real  the_c) [inline]

Definition at line 65 of file ConvexBasisKernel.h.

        : inherited(false), c(the_c) {}

Member Function Documentation

string PLearn::ConvexBasisKernel::_classname_ ( ) [static]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

OptionList & PLearn::ConvexBasisKernel::_getOptionList_ ( ) [static]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

RemoteMethodMap & PLearn::ConvexBasisKernel::_getRemoteMethodMap_ ( ) [static]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

bool PLearn::ConvexBasisKernel::_isa_ ( const Object o) [static]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

Object * PLearn::ConvexBasisKernel::_new_instance_for_typemap_ ( ) [static]

Reimplemented from PLearn::Object.

Definition at line 50 of file ConvexBasisKernel.cc.

StaticInitializer ConvexBasisKernel::_static_initializer_ & PLearn::ConvexBasisKernel::_static_initialize_ ( ) [static]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

string PLearn::ConvexBasisKernel::classname ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 50 of file ConvexBasisKernel.cc.

void PLearn::ConvexBasisKernel::declareOptions ( OptionList ol) [static, protected]

recognized option is "c"

Reimplemented from PLearn::Kernel.

Definition at line 62 of file ConvexBasisKernel.cc.

References PLearn::OptionBase::buildoption, c, and PLearn::declareOption().

Here is the call graph for this function:

static const PPath& PLearn::ConvexBasisKernel::declaringFile ( ) [inline, static]

Reimplemented from PLearn::Kernel.

Definition at line 68 of file ConvexBasisKernel.h.

:
ConvexBasisKernel * PLearn::ConvexBasisKernel::deepCopy ( CopiesMap copies) const [virtual]

Reimplemented from PLearn::Kernel.

Definition at line 50 of file ConvexBasisKernel.cc.

real PLearn::ConvexBasisKernel::evaluate ( const Vec x1,
const Vec x2 
) const [virtual]

** Subclasses must override this method **

returns K(x1,x2)

Implements PLearn::Kernel.

Definition at line 51 of file ConvexBasisKernel.cc.

References c, PLearn::TVec< T >::data(), PLearn::exp(), i, PLearn::TVec< T >::length(), PLearn::log(), and n.

{ 
    real p=1;
    real* x1i=x1.data();
    real* x2i=x2.data();
    int n=x1.length();
    for (int i=0;i<n;i++)
        p *= log(1+exp(c*(x1i[i]-x2i[i])));
    return p;
}

Here is the call graph for this function:

OptionList & PLearn::ConvexBasisKernel::getOptionList ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 50 of file ConvexBasisKernel.cc.

OptionMap & PLearn::ConvexBasisKernel::getOptionMap ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 50 of file ConvexBasisKernel.cc.

RemoteMethodMap & PLearn::ConvexBasisKernel::getRemoteMethodMap ( ) const [virtual]

Reimplemented from PLearn::Object.

Definition at line 50 of file ConvexBasisKernel.cc.


Member Data Documentation

Reimplemented from PLearn::Kernel.

Definition at line 68 of file ConvexBasisKernel.h.

smoothing constant

Definition at line 60 of file ConvexBasisKernel.h.

Referenced by declareOptions().


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