Example 60: Detecting alternative feature selection results with equal criterion value. 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_5050.hpp"
#include "data_splitter_cv.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_dos.hpp"
#include "result_tracker_dupless.hpp"
Functions | |
int | main () |
Example 60: Detecting alternative feature selection results with equal criterion value.
int main | ( | ) |
In many feature selection tasks multiple solutions may exists yielding the same maximal criterion value. Nevertheless, standard feature selection procedures are defined to yield one solution only. To reveal possible alternatives that would otherwise remain neglected, FST3 implements result tracking, i.e., it is possible to let the search procedure store all candidate solutions that have been evaluated in the course of search. Eventually, all solutions yielding the same maximum criterion value can be retrieved. Here we demonstrate the case in which many equivalent solutions exist. In optical digit recognition task with features representing pixels we use Dynamic Oscillating Search with 3-fold cross-validated 3-Nearest Neighbor Wrapper on 50% of data used for training to select feature subset.
References FST::Search_DOS< RETURNTYPE, DIMTYPE, SUBSET, CRITERION, EVALUATOR >::search(), FST::Search_DOS< RETURNTYPE, DIMTYPE, SUBSET, CRITERION, EVALUATOR >::set_delta(), and FST::Search< RETURNTYPE, DIMTYPE, SUBSET, CRITERION >::set_output_detail().