- Timestamp:
- Sep 10, 2007, 4:38:14 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/test/feature_selection_test.cc
r862 r864 23 23 */ 24 24 25 #include "yat/classifier/DataLookupWeighted1D.h" 25 26 #include "yat/classifier/FeatureSelectorIR.h" 26 27 #include "yat/classifier/FeatureSelectorRandom.h" 27 28 #include "yat/classifier/MatrixLookupWeighted.h" 28 29 #include "yat/classifier/Target.h" 29 #include "yat/statistics/ AUC.h"30 #include "yat/statistics/SNRScore.h" 30 31 31 32 #include "yat/utility/matrix.h" … … 53 54 bool ok = true; 54 55 55 statistics:: AUC roc;56 classifier::FeatureSelectorIR f( roc, 12);56 statistics::SNRScore snr; 57 classifier::FeatureSelectorIR f(snr, 12); 57 58 classifier::FeatureSelectorRandom f2(12); 58 59 … … 85 86 86 87 f.update(dataviewweighted,targets); 87 *error << "\n AUCordered ordered features (top 12):\n";88 *error << "\nSNR ordered ordered features (top 12):\n"; 88 89 features=f.features(); 89 90 std::copy(features.begin(),features.end(), … … 91 92 *error << std::endl; 92 93 94 size_t best_feature=features[0]; 95 if(best_feature!=69) { 96 *error << "\nERROR: Incorrect best feature found!\n" << std::endl; 97 ok=0; 98 } 99 100 classifier::DataLookupWeighted1D row(dataviewweighted,best_feature,true); 101 double score_diff=fabs(snr.score(targets,row)-1.47804); 102 if(score_diff>0.00001) { 103 *error << "\nERROR: Best score not what expected!\n" << std::endl; 104 ok=0; 105 } 106 107 // Re-rank the best features 108 classifier::MatrixLookupWeighted ranked=f.get(dataviewweighted); 109 f.update(ranked,targets); 110 features=f.features(); 111 for(size_t i=0;i<features.size();i++) { 112 if(features[i]!=i) { 113 ok=0; 114 *error << "ERROR: Problem with top-ranked feature" << std::endl; 115 } 116 } 93 117 94 118 if (ok)
Note: See TracChangeset
for help on using the changeset viewer.