Wrapper Bias Evaluator - returns bias estimate (difference of classifier accuracy on training and validation data parts). More...
#include <criterion_wrapper_bias_estimate.hpp>
Public Types | |
typedef Criterion_Wrapper < RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR > | parent |
typedef boost::shared_ptr < CLASSIFIER > | PClassifier |
typedef boost::shared_ptr < DATAACCESSOR > | PDataAccessor |
typedef boost::shared_ptr< SUBSET > | PSubset |
Public Member Functions | |
virtual bool | evaluate (RETURNTYPE &result, const PSubset sub) |
trains then tests then returns estimated classifcation accuracy | |
RETURNTYPE | getBiasEstimate () const |
returns estimated bias average over all evaluate() invocations since the last reset | |
void | resetBiasEstimate () |
Criterion_Wrapper_Bias_Estimate * | clone () const |
Criterion_Wrapper_Bias_Estimate * | sharing_clone () const |
Criterion_Wrapper_Bias_Estimate * | stateless_clone () const |
virtual std::ostream & | print (std::ostream &os) const |
Protected Member Functions | |
Criterion_Wrapper_Bias_Estimate (const Criterion_Wrapper_Bias_Estimate &cwbe) | |
Protected Attributes | |
RETURNTYPE | _collected_bias_estimate |
RETURNTYPE | _collected_bias_count |
Wrapper Bias Evaluator - returns bias estimate (difference of classifier accuracy on training and validation data parts).
Wraps Classifier objects to serve as secondary feature selection criterion. Trains classifier on training data, then evaluates the difference between estimated classification accuracy on training data and test data. Especially in small-sample scenarios a considerable difference (i.e., bias) can be expected. Large bias can be viewed as a sign of overfitting and can thus be used as indicator of feature selection process failure.
Criterion_Wrapper_Bias_Estimate< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR > * FST::Criterion_Wrapper_Bias_Estimate< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >::clone | ( | ) | const [inline, virtual] |
create 1:1 independent clone of the current object
Reimplemented from FST::Criterion_Wrapper< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >.
Criterion_Wrapper_Bias_Estimate* FST::Criterion_Wrapper_Bias_Estimate< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >::sharing_clone | ( | ) | const [inline, 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
Reimplemented from FST::Criterion_Wrapper< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >.
Criterion_Wrapper_Bias_Estimate* FST::Criterion_Wrapper_Bias_Estimate< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >::stateless_clone | ( | ) | const [inline, 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
Reimplemented from FST::Criterion_Wrapper< RETURNTYPE, SUBSET, CLASSIFIER, DATAACCESSOR >.