Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

PLearn::SubMatVariable Class Reference

#include <SubMatVariable.h>

Inheritance diagram for PLearn::SubMatVariable:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SubMatVariable ()
 Default constructor for persistence.

 SubMatVariable (Variable *v, int i, int j, int the_length, int the_width)
 PLEARN_DECLARE_OBJECT (SubMatVariable)
virtual void build ()
 Should call simply inherited::build(), then this class's build_().

virtual void recomputeSize (int &l, int &w) const
 Recomputes the length l and width w that this variable should have, according to its parent variables.

virtual void fprop ()
 compute output given input

virtual void bprop ()
virtual void bbprop ()
 compute an approximation to diag(d^2/dinput^2) given diag(d^2/doutput^2), with diag(d^2/dinput^2) ~=~ (doutput/dinput)' diag(d^2/doutput^2) (doutput/dinput) In particular: if 'C' depends on 'y' and 'y' depends on x ...

virtual void symbolicBprop ()
 compute a piece of new Var graph that represents the symbolic derivative of this Var

virtual void rfprop ()

Static Public Member Functions

void declareOptions (OptionList &ol)
 redefine this in subclasses: call declareOption(...) for each option, and then call inherited::declareOptions(options) ( see the declareOption function further down)


Protected Attributes

int startk
int length_
int width_
int i_
int j_

Private Types

typedef UnaryVariable inherited

Private Member Functions

void build_ ()

Member Typedef Documentation

typedef UnaryVariable PLearn::SubMatVariable::inherited [private]
 

Reimplemented from PLearn::UnaryVariable.

Definition at line 56 of file SubMatVariable.h.

Referenced by SubMatVariable().


Constructor & Destructor Documentation

PLearn::SubMatVariable::SubMatVariable  )  [inline]
 

Default constructor for persistence.

Definition at line 67 of file SubMatVariable.h.

References startk.

PLearn::SubMatVariable::SubMatVariable Variable v,
int  i,
int  j,
int  the_length,
int  the_width
 

Definition at line 57 of file SubMatVariable.cc.

References build_(), and inherited.


Member Function Documentation

void PLearn::SubMatVariable::bbprop  )  [virtual]
 

compute an approximation to diag(d^2/dinput^2) given diag(d^2/doutput^2), with diag(d^2/dinput^2) ~=~ (doutput/dinput)' diag(d^2/doutput^2) (doutput/dinput) In particular: if 'C' depends on 'y' and 'y' depends on x ...

d^2C/dx^2 = d^2C/dy^2 * (dy/dx)^2 + dC/dy * d^2y/dx^2 (diaghessian) (gradient)

Reimplemented from PLearn::Variable.

Definition at line 142 of file SubMatVariable.cc.

References k, PLearn::Variable::length(), PLearn::Var::length(), PLearn::Variable::nelems(), startk, PLearn::Var::width(), and PLearn::Variable::width().

void PLearn::SubMatVariable::bprop  )  [virtual]
 

Implements PLearn::Variable.

Definition at line 120 of file SubMatVariable.cc.

References k, PLearn::Variable::length(), PLearn::Variable::nelems(), startk, PLearn::Var::width(), and PLearn::Variable::width().

void PLearn::SubMatVariable::build  )  [virtual]
 

Should call simply inherited::build(), then this class's build_().

This method should be callable again at later times, after modifying some option fields to change the "architecture" of the object.

Reimplemented from PLearn::Variable.

Definition at line 68 of file SubMatVariable.cc.

References build_().

void PLearn::SubMatVariable::build_  )  [private]
 

This method should be redefined in subclasses and do the actual building of the object according to previously set option fields. Constructors can just set option fields, and then call build_. This method is NOT virtual, and will typically be called only from three places: a constructor, the public virtual build() method, and possibly the public virtual read method (which calls its parent's read). build_() can assume that it's parent's build_ has already been called.

Reimplemented from PLearn::Variable.

Definition at line 74 of file SubMatVariable.cc.

References i_, j_, PLearn::Var::length(), PLERROR, startk, and PLearn::Var::width().

Referenced by build(), and SubMatVariable().

void PLearn::SubMatVariable::declareOptions OptionList ol  )  [static]
 

redefine this in subclasses: call declareOption(...) for each option, and then call inherited::declareOptions(options) ( see the declareOption function further down)

ex: static void declareOptions(OptionList& ol) { declareOption(ol, "inputsize", &MyObject::inputsize_, OptionBase::buildoption, "the size of the input\n it must be provided"); declareOption(ol, "weights", &MyObject::weights, OptionBase::learntoption, "the learnt model weights"); inherited::declareOptions(ol); }

Reimplemented from PLearn::UnaryVariable.

Definition at line 85 of file SubMatVariable.cc.

References PLearn::declareOption(), and PLearn::OptionList.

void PLearn::SubMatVariable::fprop  )  [virtual]
 

compute output given input

Implements PLearn::Variable.

Definition at line 98 of file SubMatVariable.cc.

References k, PLearn::Variable::length(), PLearn::Variable::nelems(), startk, PLearn::Var::width(), and PLearn::Variable::width().

PLearn::SubMatVariable::PLEARN_DECLARE_OBJECT SubMatVariable   ) 
 

void PLearn::SubMatVariable::recomputeSize int l,
int w
const [virtual]
 

Recomputes the length l and width w that this variable should have, according to its parent variables.

This is used for ex. by sizeprop() The default version stupidly returns the current dimensions, so make sure to overload it in subclasses if this is not appropriate.

Reimplemented from PLearn::Variable.

Definition at line 95 of file SubMatVariable.cc.

References length_, and width_.

void PLearn::SubMatVariable::rfprop  )  [virtual]
 

Reimplemented from PLearn::Variable.

Definition at line 178 of file SubMatVariable.cc.

References k, PLearn::Variable::length(), PLearn::TVec< T >::length(), PLearn::Variable::nelems(), PLearn::UnaryVariable::resizeRValue(), startk, PLearn::Var::width(), and PLearn::Variable::width().

void PLearn::SubMatVariable::symbolicBprop  )  [virtual]
 

compute a piece of new Var graph that represents the symbolic derivative of this Var

Reimplemented from PLearn::Variable.

Definition at line 166 of file SubMatVariable.cc.

References PLearn::extend(), PLearn::Variable::length(), PLearn::Var::length(), startk, PLearn::Variable::width(), and PLearn::Var::width().


Member Data Documentation

int PLearn::SubMatVariable::i_ [protected]
 

Definition at line 62 of file SubMatVariable.h.

Referenced by build_().

int PLearn::SubMatVariable::j_ [protected]
 

Definition at line 62 of file SubMatVariable.h.

Referenced by build_().

int PLearn::SubMatVariable::length_ [protected]
 

Definition at line 61 of file SubMatVariable.h.

Referenced by recomputeSize().

int PLearn::SubMatVariable::startk [protected]
 

Definition at line 60 of file SubMatVariable.h.

Referenced by bbprop(), bprop(), build_(), fprop(), rfprop(), SubMatVariable(), and symbolicBprop().

int PLearn::SubMatVariable::width_ [protected]
 

Definition at line 61 of file SubMatVariable.h.

Referenced by recomputeSize().


The documentation for this class was generated from the following files:
Generated on Tue Aug 17 16:25:41 2004 for PLearn by doxygen 1.3.7