PLearn 0.1
|
#include <CompactVMatrixPolynomialKernel.h>
Public Member Functions | |
CompactVMatrixPolynomialKernel () | |
CompactVMatrixPolynomialKernel (int degree, PP< CompactVMatrix > &vm, real the_beta=1.0) | |
virtual string | classname () const |
virtual OptionList & | getOptionList () const |
virtual OptionMap & | getOptionMap () const |
virtual RemoteMethodMap & | getRemoteMethodMap () const |
virtual CompactVMatrixPolynomialKernel * | deepCopy (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 PPath & | declaringFile () |
Static Public Attributes | |
static StaticInitializer | _static_initializer_ |
Static Protected Member Functions | |
static void | declareOptions (OptionList &ol) |
recognized options are "n", "beta" and "m" | |
Protected Attributes | |
int | n |
degree of polynomial | |
real | beta |
a normalization constant for numerical stability | |
PP< CompactVMatrix > | m |
Private Types | |
typedef Kernel | inherited |
behaves like PolynomialKernel except that the x1 and x2 vectors actually only contain INDICES of the rows of a CompactVMatrix, and the square difference is performed efficiently, taking advantage of the discrete nature of many fields.
Definition at line 59 of file CompactVMatrixPolynomialKernel.h.
typedef Kernel PLearn::CompactVMatrixPolynomialKernel::inherited [private] |
Reimplemented from PLearn::Kernel.
Definition at line 61 of file CompactVMatrixPolynomialKernel.h.
PLearn::CompactVMatrixPolynomialKernel::CompactVMatrixPolynomialKernel | ( | ) | [inline] |
Definition at line 68 of file CompactVMatrixPolynomialKernel.h.
PLearn::CompactVMatrixPolynomialKernel::CompactVMatrixPolynomialKernel | ( | int | degree, |
PP< CompactVMatrix > & | vm, | ||
real | the_beta = 1.0 |
||
) | [inline] |
Definition at line 70 of file CompactVMatrixPolynomialKernel.h.
string PLearn::CompactVMatrixPolynomialKernel::_classname_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
OptionList & PLearn::CompactVMatrixPolynomialKernel::_getOptionList_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
RemoteMethodMap & PLearn::CompactVMatrixPolynomialKernel::_getRemoteMethodMap_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
Object * PLearn::CompactVMatrixPolynomialKernel::_new_instance_for_typemap_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
StaticInitializer CompactVMatrixPolynomialKernel::_static_initializer_ & PLearn::CompactVMatrixPolynomialKernel::_static_initialize_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
string PLearn::CompactVMatrixPolynomialKernel::classname | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
void PLearn::CompactVMatrixPolynomialKernel::declareOptions | ( | OptionList & | ol | ) | [static, protected] |
recognized options are "n", "beta" and "m"
Reimplemented from PLearn::Kernel.
Definition at line 59 of file CompactVMatrixPolynomialKernel.cc.
References beta, PLearn::OptionBase::buildoption, PLearn::declareOption(), m, and n.
{ declareOption(ol, "n", &CompactVMatrixPolynomialKernel::n, OptionBase::buildoption, "TODO: Some comments"); declareOption(ol, "beta", &CompactVMatrixPolynomialKernel::beta, OptionBase::buildoption, "TODO: Some comments"); declareOption(ol, "m", &CompactVMatrixPolynomialKernel::m, OptionBase::buildoption, ""); inherited::declareOptions(ol); }
static const PPath& PLearn::CompactVMatrixPolynomialKernel::declaringFile | ( | ) | [inline, static] |
Reimplemented from PLearn::Kernel.
Definition at line 73 of file CompactVMatrixPolynomialKernel.h.
:
CompactVMatrixPolynomialKernel * PLearn::CompactVMatrixPolynomialKernel::deepCopy | ( | CopiesMap & | copies | ) | const [virtual] |
Reimplemented from PLearn::Kernel.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
real PLearn::CompactVMatrixPolynomialKernel::evaluate | ( | const Vec & | x1, |
const Vec & | x2 | ||
) | const [virtual] |
** Subclasses must override this method **
returns K(x1,x2)
Implements PLearn::Kernel.
Definition at line 49 of file CompactVMatrixPolynomialKernel.cc.
References PLearn::dot(), PLearn::dot_product(), PLearn::ipow(), m, and n.
{ // return ipow(beta*dot(x1,x2)+1.0, n); real dot_product=0; if (m) dot_product=m->dotProduct(int(x1[0]),int(x2[0])); else dot_product=dot(x1,x2); return ipow(beta*dot_product+1.0, n); }
OptionList & PLearn::CompactVMatrixPolynomialKernel::getOptionList | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
OptionMap & PLearn::CompactVMatrixPolynomialKernel::getOptionMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
RemoteMethodMap & PLearn::CompactVMatrixPolynomialKernel::getRemoteMethodMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 47 of file CompactVMatrixPolynomialKernel.cc.
Reimplemented from PLearn::Kernel.
Definition at line 73 of file CompactVMatrixPolynomialKernel.h.
real PLearn::CompactVMatrixPolynomialKernel::beta [protected] |
a normalization constant for numerical stability
Definition at line 65 of file CompactVMatrixPolynomialKernel.h.
Referenced by declareOptions().
PP<CompactVMatrix> PLearn::CompactVMatrixPolynomialKernel::m [protected] |
Definition at line 66 of file CompactVMatrixPolynomialKernel.h.
Referenced by declareOptions().
int PLearn::CompactVMatrixPolynomialKernel::n [protected] |
degree of polynomial
Definition at line 64 of file CompactVMatrixPolynomialKernel.h.
Referenced by declareOptions().