Abstract class, defines interface for classes that enable collecting multiple results. More...
#include <result_tracker.hpp>
Classes | |
struct | ResultRec |
Structure to hold [subset,criterion value] temporary solutions in the course of search. More... | |
Public Types | |
typedef boost::shared_ptr< SUBSET > | PSubset |
typedef ResultRec * | PResultRec |
Public Member Functions | |
Result_Tracker (const Result_Tracker &rt) | |
virtual bool | add (const RETURNTYPE value, const PSubset sub)=0 |
virtual void | clear ()=0 |
virtual long | size () const =0 |
virtual bool | get_first (PResultRec &r)=0 |
iterator | |
virtual bool | get_next (PResultRec &r)=0 |
iterator | |
virtual void | join (Result_Tracker &src) |
adds contents from another tracker to this one | |
Result_Tracker * | clone () const =0 |
Result_Tracker * | sharing_clone () const =0 |
Result_Tracker * | stateless_clone () const =0 |
void | set_output_detail (OutputDetail detail) |
sets the amount of information that is logged to output stream throughout the course of search | |
OutputDetail | get_output_detail () const |
bool | output_normal () const |
bool | output_detailed () const |
Protected Attributes | |
OutputDetail | _detail |
Abstract class, defines interface for classes that enable collecting multiple results.
The reason to do this is to enable a) feature preference fragility workaround, i.e., employing secondary criterion to select a result that may prove better than the seemingly best one, b) evaluation of feature selection stability, c) additional feature selection schemes, etc..
Result_Tracker* FST::Result_Tracker< RETURNTYPE, SUBSET >::clone | ( | ) | const [pure virtual] |
create 1:1 independent clone of the current object
Implements FST::Clonable.
Implemented in FST::Result_Tracker_Dupless< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Feature_Stats< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Regularizer< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET, CRITERION >, and FST::Result_Tracker_Stability_Evaluator< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >.
Result_Tracker* FST::Result_Tracker< RETURNTYPE, SUBSET >::sharing_clone | ( | ) | const [pure virtual] |
create equivalent clone of the current object, parmitting read-only access to structures in the source object (allows referencing instead of copying of large memory structures). may be faster and save space but requires more caution with respect to concurrency Use example: Data_Accessor memory data representation cloning
Implements FST::Clonable.
Implemented in FST::Result_Tracker_Dupless< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Feature_Stats< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Regularizer< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET, CRITERION >, and FST::Result_Tracker_Stability_Evaluator< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >.
Result_Tracker* FST::Result_Tracker< RETURNTYPE, SUBSET >::stateless_clone | ( | ) | const [pure virtual] |
create clone of the current object, ignoring internal temporary structures to save speed. Does not replicate exact object state. The clone must be used carefully in a way that ensures internal structure re-initialization Use example: Data_Splitter cloning or Classifier_SVM cloning due to inability to clone external structures defined in LibSVM
Implements FST::Clonable.
Implemented in FST::Result_Tracker_Dupless< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Feature_Stats< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >, FST::Result_Tracker_Regularizer< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET, CRITERION >, and FST::Result_Tracker_Stability_Evaluator< RETURNTYPE, IDXTYPE, DIMTYPE, SUBSET >.