PLearn 0.1
|
A costfunction that allows to reweight another costfunction (weight being last element of target) Returns target.lastElement() * costfunc(output,target.subVec(0,target.length()-1));. More...
#include <WeightedCostFunction.h>
Public Member Functions | |
WeightedCostFunction () | |
WeightedCostFunction (Ker the_costfunc) | |
virtual string | classname () const |
virtual OptionList & | getOptionList () const |
virtual OptionMap & | getOptionMap () const |
virtual RemoteMethodMap & | getRemoteMethodMap () const |
virtual WeightedCostFunction * | deepCopy (CopiesMap &copies) const |
virtual string | info () const |
Returns a bit more informative string about object (default returns classname()) | |
virtual void | makeDeepCopyFromShallowCopy (CopiesMap &copies) |
Does the necessary operations to transform a shallow copy (this) into a deep copy by deep-copying all the members that need to be. | |
virtual real | evaluate (const Vec &output, const Vec &target) 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) |
Declare options (data fields) for the class. | |
Protected Attributes | |
Ker | costfunc |
Private Types | |
typedef Kernel | inherited |
A costfunction that allows to reweight another costfunction (weight being last element of target) Returns target.lastElement() * costfunc(output,target.subVec(0,target.length()-1));.
Definition at line 55 of file WeightedCostFunction.h.
typedef Kernel PLearn::WeightedCostFunction::inherited [private] |
Reimplemented from PLearn::Kernel.
Definition at line 57 of file WeightedCostFunction.h.
PLearn::WeightedCostFunction::WeightedCostFunction | ( | ) | [inline] |
Definition at line 63 of file WeightedCostFunction.h.
: costfunc() {}
PLearn::WeightedCostFunction::WeightedCostFunction | ( | Ker | the_costfunc | ) | [inline] |
Definition at line 64 of file WeightedCostFunction.h.
:costfunc(the_costfunc) {}
string PLearn::WeightedCostFunction::_classname_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
OptionList & PLearn::WeightedCostFunction::_getOptionList_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
RemoteMethodMap & PLearn::WeightedCostFunction::_getRemoteMethodMap_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
Object * PLearn::WeightedCostFunction::_new_instance_for_typemap_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Definition at line 49 of file WeightedCostFunction.cc.
StaticInitializer WeightedCostFunction::_static_initializer_ & PLearn::WeightedCostFunction::_static_initialize_ | ( | ) | [static] |
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
string PLearn::WeightedCostFunction::classname | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 49 of file WeightedCostFunction.cc.
void PLearn::WeightedCostFunction::declareOptions | ( | OptionList & | ol | ) | [static, protected] |
Declare options (data fields) for the class.
Redefine this in subclasses: call declareOption
(...) for each option, and then call inherited::declareOptions(options)
. Please call the inherited
method AT THE END to get the options listed in a consistent order (from most recently defined to least recently defined).
static void MyDerivedClass::declareOptions(OptionList& ol) { declareOption(ol, "inputsize", &MyObject::inputsize_, OptionBase::buildoption, "The size of the input; it must be provided"); declareOption(ol, "weights", &MyObject::weights, OptionBase::learntoption, "The learned model weights"); inherited::declareOptions(ol); }
ol | List of options that is progressively being constructed for the current class. |
Reimplemented from PLearn::Kernel.
Definition at line 61 of file WeightedCostFunction.cc.
References PLearn::OptionBase::buildoption, costfunc, and PLearn::declareOption().
{ declareOption(ol, "costfunc", &WeightedCostFunction::costfunc, OptionBase::buildoption, ""); inherited::declareOptions(ol); }
static const PPath& PLearn::WeightedCostFunction::declaringFile | ( | ) | [inline, static] |
Reimplemented from PLearn::Kernel.
Definition at line 67 of file WeightedCostFunction.h.
{ return "weighted "+costfunc->info(); }
WeightedCostFunction * PLearn::WeightedCostFunction::deepCopy | ( | CopiesMap & | copies | ) | const [virtual] |
Reimplemented from PLearn::Kernel.
Definition at line 49 of file WeightedCostFunction.cc.
** Subclasses must override this method **
returns K(x1,x2)
Implements PLearn::Kernel.
Definition at line 57 of file WeightedCostFunction.cc.
References PLearn::TVec< T >::length(), and PLearn::TVec< T >::subVec().
{ return target[target.length()-1] * costfunc(output,target.subVec(0,target.length()-1)); }
OptionList & PLearn::WeightedCostFunction::getOptionList | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 49 of file WeightedCostFunction.cc.
OptionMap & PLearn::WeightedCostFunction::getOptionMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 49 of file WeightedCostFunction.cc.
RemoteMethodMap & PLearn::WeightedCostFunction::getRemoteMethodMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 49 of file WeightedCostFunction.cc.
virtual string PLearn::WeightedCostFunction::info | ( | ) | const [inline, virtual] |
Returns a bit more informative string about object (default returns classname())
Reimplemented from PLearn::Object.
Definition at line 69 of file WeightedCostFunction.h.
{ return "weighted "+costfunc->info(); }
void PLearn::WeightedCostFunction::makeDeepCopyFromShallowCopy | ( | CopiesMap & | copies | ) | [virtual] |
Does the necessary operations to transform a shallow copy (this) into a deep copy by deep-copying all the members that need to be.
This needs to be overridden by every class that adds "complex" data members to the class, such as Vec
, Mat
, PP<Something>
, etc. Typical implementation:
void CLASS_OF_THIS::makeDeepCopyFromShallowCopy(CopiesMap& copies) { inherited::makeDeepCopyFromShallowCopy(copies); deepCopyField(complex_data_member1, copies); deepCopyField(complex_data_member2, copies); ... }
copies | A map used by the deep-copy mechanism to keep track of already-copied objects. |
Reimplemented from PLearn::Kernel.
Definition at line 51 of file WeightedCostFunction.cc.
References PLearn::deepCopyField().
{ inherited::makeDeepCopyFromShallowCopy(copies); deepCopyField(costfunc, copies); }
Reimplemented from PLearn::Kernel.
Definition at line 67 of file WeightedCostFunction.h.
Ker PLearn::WeightedCostFunction::costfunc [protected] |
Definition at line 60 of file WeightedCostFunction.h.
Referenced by declareOptions().