Example 54: Feature Selection Stability Evaluation. More...
#include <boost/smart_ptr.hpp>
#include <exception>
#include <iostream>
#include <cstdlib>
#include <string>
#include <vector>
#include "error.hpp"
#include "global.hpp"
#include "subset.hpp"
#include "data_intervaller.hpp"
#include "data_splitter.hpp"
#include "data_splitter_cv.hpp"
#include "data_splitter_randrand.hpp"
#include "data_scaler.hpp"
#include "data_scaler_void.hpp"
#include "data_accessor_splitting_memTRN.hpp"
#include "data_accessor_splitting_memARFF.hpp"
#include "criterion_wrapper.hpp"
#include "distance_euclid.hpp"
#include "classifier_knn.hpp"
#include "seq_step_straight.hpp"
#include "search_seq_sfs.hpp"
#include "result_tracker_stabileval.hpp"
Functions | |
int | main () |
Example 54: Feature Selection Stability Evaluation.
int main | ( | ) |
Feature selection stability is defined as robustness of feature preferences with respect to different sampling of the same training data. Different stability measures have been defined to evaluate the feature selection process (Kalousis, 2007) (Somol, IEEE, TPAMI, 2010). FST3 provides a selection of stability measures capable of evaluating feature selection process that yields subsets of varying subset size. In this example ten feature selection trials are performed, each on differently randomly sampled 80% of the data. In each of the trials the resulting subset is obtained through SFS procedure, optimizing the 3-Nearest Neighbour accuracy evaluated by means of 3-fold cross-validation. Various stability measures are eventually evaluated. Note that each of the measures yields values from [0,1], where 0 marks the least stable and 1 marks the most stable feature selection process characteritic.
References FST::Search_SFS< RETURNTYPE, DIMTYPE, SUBSET, CRITERION, EVALUATOR >::search(), and FST::Search_SFS< RETURNTYPE, DIMTYPE, SUBSET, CRITERION, EVALUATOR >::set_search_direction().