PLearn 0.1
|
This class is an abstract base class for mechanisms allowing to "split" a dataset into one or several partitions (or "splits"). More...
#include <Splitter.h>
Public Member Functions | |
virtual Splitter * | deepCopy (CopiesMap &copies) const |
Splitter () | |
virtual void | setDataSet (VMat the_dataset) |
Sets the dataset on which the splits are to be based. | |
VMat | getDataSet () |
Returns the dataset given with setDataSet. | |
virtual int | nsplits () const =0 |
Returns the number of available different "splits". | |
virtual int | nSetsPerSplit () const =0 |
Returns the number of sets per split. | |
virtual TVec< VMat > | getSplit (int i=0)=0 |
Returns split number i. | |
virtual void | makeDeepCopyFromShallowCopy (CopiesMap &copies) |
Transforms a shallow copy into a deep copy. | |
Static Public Member Functions | |
static string | _classname_ () |
static OptionList & | _getOptionList_ () |
static RemoteMethodMap & | _getRemoteMethodMap_ () |
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) |
Declares the class options. | |
static void | declareMethods (RemoteMethodMap &rmm) |
Declare the methods that are remote-callable. | |
Protected Attributes | |
VMat | dataset |
Private Types | |
typedef Object | inherited |
This class is an abstract base class for mechanisms allowing to "split" a dataset into one or several partitions (or "splits").
Thus for instance a subclass can be used to implement k-fold splits (for k-fold cross validation), where each of the k splits returned by getSplit(i=0..k-1) would be an 2-element array containing the corresponding training-set and test-set.
A splitter is an essential part of a PTester.
Definition at line 61 of file Splitter.h.
typedef Object PLearn::Splitter::inherited [private] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 63 of file Splitter.h.
PLearn::Splitter::Splitter | ( | ) | [inline] |
Definition at line 79 of file Splitter.h.
{};
string PLearn::Splitter::_classname_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
OptionList & PLearn::Splitter::_getOptionList_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
RemoteMethodMap & PLearn::Splitter::_getRemoteMethodMap_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
StaticInitializer Splitter::_static_initializer_ & PLearn::Splitter::_static_initialize_ | ( | ) | [static] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
void PLearn::Splitter::declareMethods | ( | RemoteMethodMap & | rmm | ) | [static, protected] |
Declare the methods that are remote-callable.
TODO export virtual TVec<VMat> getSplit(int i=0) = 0;
Reimplemented from PLearn::Object.
Definition at line 73 of file Splitter.cc.
References PLearn::declareMethod(), getSplit(), PLearn::RemoteMethodMap::inherited(), nSetsPerSplit(), nsplits(), and setDataSet().
{ // Insert a backpointer to remote methods; note that this // different than for declareOptions() rmm.inherited(inherited::_getRemoteMethodMap_()); declareMethod( rmm, "setDataSet", &Splitter::setDataSet, (BodyDoc("Set this splitter's dataset\n"), ArgDoc ("the_dataset","The dataset to split"))); declareMethod( rmm, "nSetsPerSplit", &Splitter::nSetsPerSplit, (BodyDoc("Returns the number of sets per split\n"), RetDoc ("the numer of sets per split"))); declareMethod( rmm, "nsplits", &Splitter::nsplits, (BodyDoc(" Returns the number of available different 'splits'\n"), RetDoc (" the numer of available splits"))); declareMethod( rmm, "getSplit", &Splitter::getSplit, (BodyDoc("Get one of the splits\n"), ArgDoc ("i","The split to get"), RetDoc ("The ith split (vec. of N sets)"))); }
void PLearn::Splitter::declareOptions | ( | OptionList & | ol | ) | [static, protected] |
Declares the class options.
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 63 of file Splitter.cc.
References dataset, PLearn::declareOption(), PLearn::OptionBase::learntoption, PLearn::OptionBase::nosave, and PLearn::OptionBase::remotetransmit.
Referenced by PLearn::TrainValidTestSplitter::declareOptions(), PLearn::TrainTestSplitter::declareOptions(), PLearn::ToBagSplitter::declareOptions(), PLearn::TestInTrainSplitter::declareOptions(), PLearn::StackedSplitter::declareOptions(), PLearn::SourceVMatrixSplitter::declareOptions(), PLearn::SequentialSplitter::declareOptions(), PLearn::RepeatSplitter::declareOptions(), PLearn::MultiTaskSeparationSplitter::declareOptions(), PLearn::KFoldSplitter::declareOptions(), PLearn::FractionSplitter::declareOptions(), PLearn::FilterSplitter::declareOptions(), PLearn::DBSplitter::declareOptions(), PLearn::ClassSeparationSplitter::declareOptions(), PLearn::BootstrapSplitter::declareOptions(), and PLearn::BinSplitter::declareOptions().
{ declareOption(ol,"dataset", &Splitter::dataset, OptionBase::learntoption | OptionBase::nosave | OptionBase::remotetransmit, "Dataset to split."); inherited::declareOptions(ol); }
static const PPath& PLearn::Splitter::declaringFile | ( | ) | [inline, static] |
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 77 of file Splitter.h.
{};
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 61 of file Splitter.cc.
VMat PLearn::Splitter::getDataSet | ( | ) | [inline] |
Returns the dataset given with setDataSet.
Definition at line 85 of file Splitter.h.
{ return dataset; }
Returns split number i.
Implemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Referenced by declareMethods().
void PLearn::Splitter::makeDeepCopyFromShallowCopy | ( | CopiesMap & | copies | ) | [virtual] |
Transforms a shallow copy into a deep copy.
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 101 of file Splitter.cc.
References PLearn::deepCopyField().
Referenced by PLearn::TrainValidTestSplitter::makeDeepCopyFromShallowCopy(), PLearn::TrainTestSplitter::makeDeepCopyFromShallowCopy(), PLearn::ToBagSplitter::makeDeepCopyFromShallowCopy(), PLearn::TestInTrainSplitter::makeDeepCopyFromShallowCopy(), PLearn::StackedSplitter::makeDeepCopyFromShallowCopy(), PLearn::SourceVMatrixSplitter::makeDeepCopyFromShallowCopy(), PLearn::RepeatSplitter::makeDeepCopyFromShallowCopy(), PLearn::MultiTaskSeparationSplitter::makeDeepCopyFromShallowCopy(), PLearn::FractionSplitter::makeDeepCopyFromShallowCopy(), PLearn::FilterSplitter::makeDeepCopyFromShallowCopy(), PLearn::DBSplitter::makeDeepCopyFromShallowCopy(), PLearn::ClassSeparationSplitter::makeDeepCopyFromShallowCopy(), PLearn::BootstrapSplitter::makeDeepCopyFromShallowCopy(), and PLearn::BinSplitter::makeDeepCopyFromShallowCopy().
{ inherited::makeDeepCopyFromShallowCopy(copies); deepCopyField(dataset, copies); }
virtual int PLearn::Splitter::nSetsPerSplit | ( | ) | const [pure virtual] |
Returns the number of sets per split.
Implemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Referenced by declareMethods().
virtual int PLearn::Splitter::nsplits | ( | ) | const [pure virtual] |
Returns the number of available different "splits".
Implemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Referenced by declareMethods().
void PLearn::Splitter::setDataSet | ( | VMat | the_dataset | ) | [virtual] |
Sets the dataset on which the splits are to be based.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ConcatSetsSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 107 of file Splitter.cc.
Referenced by declareMethods(), PLearn::TrainValidTestSplitter::setDataSet(), PLearn::RepeatSplitter::setDataSet(), PLearn::ToBagSplitter::setDataSet(), PLearn::SourceVMatrixSplitter::setDataSet(), PLearn::BootstrapSplitter::setDataSet(), PLearn::BinSplitter::setDataSet(), and PLearn::TestInTrainSplitter::setDataSet().
{ dataset = the_dataset; }
Reimplemented from PLearn::Object.
Reimplemented in PLearn::BinSplitter, PLearn::BootstrapSplitter, PLearn::ClassSeparationSplitter, PLearn::ConcatSetsSplitter, PLearn::DBSplitter, PLearn::ExplicitSplitter, PLearn::FilterSplitter, PLearn::FractionSplitter, PLearn::KFoldSplitter, PLearn::MultiTaskSeparationSplitter, PLearn::NoSplitSplitter, PLearn::RepeatSplitter, PLearn::SelectSetsSplitter, PLearn::SequentialSplitter, PLearn::SourceVMatrixSplitter, PLearn::StackedSplitter, PLearn::TestInTrainSplitter, PLearn::ToBagSplitter, PLearn::TrainTestSplitter, and PLearn::TrainValidTestSplitter.
Definition at line 77 of file Splitter.h.
VMat PLearn::Splitter::dataset [protected] |
Definition at line 70 of file Splitter.h.
Referenced by PLearn::TrainValidTestSplitter::build_(), PLearn::ToBagSplitter::build_(), PLearn::RepeatSplitter::build_(), PLearn::MultiTaskSeparationSplitter::build_(), PLearn::BootstrapSplitter::build_(), declareOptions(), PLearn::TrainValidTestSplitter::getSplit(), PLearn::TrainTestSplitter::getSplit(), PLearn::ToBagSplitter::getSplit(), PLearn::SequentialSplitter::getSplit(), PLearn::RepeatSplitter::getSplit(), PLearn::MultiTaskSeparationSplitter::getSplit(), PLearn::KFoldSplitter::getSplit(), PLearn::FractionSplitter::getSplit(), PLearn::FilterSplitter::getSplit(), PLearn::ClassSeparationSplitter::getSplit(), PLearn::BinSplitter::getSplit(), PLearn::SequentialSplitter::nsplits(), PLearn::KFoldSplitter::nsplits(), and PLearn::MultiTaskSeparationSplitter::setDataSet().