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

#include <StatsIterator.h>

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

List of all members.

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 OptionListgetOptionList () const
virtual OptionMapgetOptionMap () const
virtual RemoteMethodMapgetRemoteMethodMap () const
virtual StddevStatsIteratordeepCopy (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 PPathdeclaringFile ()

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< intnsamples

Private Types

typedef StatsIterator inherited

Detailed Description

Definition at line 163 of file StatsIterator.h.


Member Typedef Documentation

Reimplemented from PLearn::StatsIterator.

Definition at line 165 of file StatsIterator.h.


Member Function Documentation

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.

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

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);
  }
Parameters:
olList 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.

Here is the call graph for this function:

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;
}

Here is the call graph for this function:

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())

Returns:
Information about the object

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();
} 

Here is the call graph for this function:

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);
      ...
  }
Parameters:
copiesA 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().

Here is the call graph for this function:

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");
}

Here is the call graph for this function:

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().

Here is the call graph for this function:


Member Data Documentation

Reimplemented from PLearn::StatsIterator.

Definition at line 177 of file StatsIterator.h.

Definition at line 169 of file StatsIterator.h.

Referenced by declareOptions().

Definition at line 168 of file StatsIterator.h.

Referenced by declareOptions().

Definition at line 170 of file StatsIterator.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