PLearn 0.1
|
#include <StatsIterator.h>
Public Member Functions | |
virtual string | info () const |
Returns a bit more informative string about object (default returns classname()) | |
virtual void | init (int inputsize) |
Call this method once with the correct inputsize. | |
virtual void | update (const Vec &input) |
Then iterate over the data set and call this method for each row. | |
virtual bool | finish () |
virtual string | classname () const |
virtual OptionList & | getOptionList () const |
virtual OptionMap & | getOptionMap () const |
virtual RemoteMethodMap & | getRemoteMethodMap () const |
virtual StddevStatsIterator * | deepCopy (CopiesMap &copies) const |
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 void | oldwrite (ostream &out) const |
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 | |
Vec | meansquared |
Vec | mean |
TVec< int > | nsamples |
Private Types | |
typedef StatsIterator | inherited |
Definition at line 163 of file StatsIterator.h.
typedef StatsIterator PLearn::StddevStatsIterator::inherited [private] |
Reimplemented from PLearn::StatsIterator.
Definition at line 165 of file StatsIterator.h.
string PLearn::StddevStatsIterator::_classname_ | ( | ) | [static] |
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
OptionList & PLearn::StddevStatsIterator::_getOptionList_ | ( | ) | [static] |
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
RemoteMethodMap & PLearn::StddevStatsIterator::_getRemoteMethodMap_ | ( | ) | [static] |
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
Object * PLearn::StddevStatsIterator::_new_instance_for_typemap_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Definition at line 200 of file StatsIterator.cc.
StaticInitializer StddevStatsIterator::_static_initializer_ & PLearn::StddevStatsIterator::_static_initialize_ | ( | ) | [static] |
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
string PLearn::StddevStatsIterator::classname | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 200 of file StatsIterator.cc.
void PLearn::StddevStatsIterator::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::StatsIterator.
Definition at line 240 of file StatsIterator.cc.
References PLearn::declareOption(), PLearn::OptionBase::learntoption, mean, meansquared, and nsamples.
{ declareOption(ol, "mean", &StddevStatsIterator::mean, OptionBase::learntoption, " mean\n"); declareOption(ol, "meansquared", &StddevStatsIterator::meansquared, OptionBase::learntoption, " meansquared\n"); declareOption(ol, "nsamples", &StddevStatsIterator::nsamples, OptionBase::learntoption, " nsamples\n"); inherited::declareOptions(ol); }
static const PPath& PLearn::StddevStatsIterator::declaringFile | ( | ) | [inline, static] |
Reimplemented from PLearn::StatsIterator.
Definition at line 177 of file StatsIterator.h.
: static void declareOptions(OptionList& ol);
StddevStatsIterator * PLearn::StddevStatsIterator::deepCopy | ( | CopiesMap & | copies | ) | const [virtual] |
Reimplemented from PLearn::StatsIterator.
Definition at line 200 of file StatsIterator.cc.
bool PLearn::StddevStatsIterator::finish | ( | ) | [virtual] |
Call this method when all the data has been shown (through update) If the method returns false, then a further pass through the data is required.
Implements PLearn::StatsIterator.
Definition at line 224 of file StatsIterator.cc.
References i, PLearn::mean(), n, and PLearn::sqrt().
{ Vec square_mean(mean.length()); for (int i=0;i<mean.length();i++) { //mean[i] /= nsamples[i]; real n = nsamples[i]; square_mean[i] = mean[i]*mean[i]/(n*(n-1.0)); meansquared[i] /= n-1.0; } //squareSubtract(meansquared, mean); meansquared -= square_mean; result = sqrt(meansquared); return true; }
OptionList & PLearn::StddevStatsIterator::getOptionList | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 200 of file StatsIterator.cc.
OptionMap & PLearn::StddevStatsIterator::getOptionMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 200 of file StatsIterator.cc.
RemoteMethodMap & PLearn::StddevStatsIterator::getRemoteMethodMap | ( | ) | const [virtual] |
Reimplemented from PLearn::Object.
Definition at line 200 of file StatsIterator.cc.
virtual string PLearn::StddevStatsIterator::info | ( | ) | const [inline, virtual] |
Returns a bit more informative string about object (default returns classname())
Reimplemented from PLearn::Object.
Definition at line 173 of file StatsIterator.h.
{ return "std_dev"; }
void PLearn::StddevStatsIterator::init | ( | int | inputsize | ) | [virtual] |
Call this method once with the correct inputsize.
Implements PLearn::StatsIterator.
Definition at line 209 of file StatsIterator.cc.
References PLearn::mean().
{ // We do not use resize on purpose, so // that the previous result Vec does not get overwritten meansquared = Vec(inputsize); mean = Vec(inputsize); nsamples.resize(inputsize); nsamples.clear(); }
void PLearn::StddevStatsIterator::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::StatsIterator.
Definition at line 202 of file StatsIterator.cc.
References PLearn::deepCopyField(), and PLearn::mean().
{ inherited::makeDeepCopyFromShallowCopy(copies); deepCopyField(mean, copies); deepCopyField(meansquared, copies); }
void PLearn::StddevStatsIterator::oldwrite | ( | ostream & | out | ) | const [virtual] |
Reimplemented from PLearn::StatsIterator.
Definition at line 254 of file StatsIterator.cc.
References PLearn::mean(), PLearn::write(), PLearn::writeField(), PLearn::writeFooter(), and PLearn::writeHeader().
{ writeHeader(out,"StddevStatsIterator"); inherited::write(out); writeField(out,"mean",mean); writeField(out,"meansquared",meansquared); writeField(out,"nsamples",nsamples); writeFooter(out,"StddevStatsIterator"); }
void PLearn::StddevStatsIterator::update | ( | const Vec & | input | ) | [virtual] |
Then iterate over the data set and call this method for each row.
Implements PLearn::StatsIterator.
Definition at line 219 of file StatsIterator.cc.
References PLearn::addXandX2IfNonMissing(), and PLearn::mean().
{ addXandX2IfNonMissing(input,nsamples,mean,meansquared); }
Reimplemented from PLearn::StatsIterator.
Definition at line 177 of file StatsIterator.h.
Vec PLearn::StddevStatsIterator::mean [protected] |
Definition at line 169 of file StatsIterator.h.
Referenced by declareOptions().
Vec PLearn::StddevStatsIterator::meansquared [protected] |
Definition at line 168 of file StatsIterator.h.
Referenced by declareOptions().
TVec<int> PLearn::StddevStatsIterator::nsamples [protected] |
Definition at line 170 of file StatsIterator.h.
Referenced by declareOptions().