21 #ifndef _SINGLE_TREE_H
22 #define _SINGLE_TREE_H
30 #include "BaseTrainer.h"
38 typedef std::vector<Classifier> ClassifierCollection;
40 std::vector<Pattern> m_backup;
52 BaseTrainer::InitTrainer(preload);
55 TestFeatureGeneration(f,
false);
65 template<
class FeatureGenerator>
68 std::cout <<
"SingleTree" << std::endl;
73 if(!BaseTrainer::Train(bestH.root, f, preload))
77 BaseTrainer::EvaluateAndSet(bestH.root);
79 std::swap(m_backup, m_templates);
80 m_backup_pattern = n_pattern;
85 for(
int i =0;i<m_backup_pattern;++i)
87 if( m_backup[i].test == 1 )
89 m_templates.push_back(m_backup[i]);
94 std::cout <<
" === 1: " << n_pattern <<
" === " << std::endl;
97 BaseTrainer::Train(bestH.pos, f, preload);
102 for(
int i =0;i<m_backup_pattern;++i)
104 if( m_backup[i].test == -1 )
106 m_templates.push_back(m_backup[i]);
111 std::cout <<
" === -1: " << n_pattern <<
" === " << std::endl;
114 BaseTrainer::Train(bestH.neg, f, preload);
116 std::swap(m_templates, m_backup);
117 n_pattern = m_backup_pattern;
123 this->m_weak_classifiers.push_back(bestH);
Definition: FeatureGenerator.h:36
void ShutdownTrainer()
Freed temporary memory before next InitTrainer.
Definition: SingleTree.h:59
Definition: BoostClassifier.h:61
bool Test()
Test current network.
Definition: SingleTree.h:35
bool Train(FeatureGenerator &f, bool preload)
Esegue un singolo ciclo di training.
Definition: SingleTree.h:66
void InitTrainer(F &f, int preload)
Initialize Trainer.
Definition: SingleTree.h:50
a voting for majority classifier.
void Restart()
Reset weight and bootstrap from classifier.
Definition: SingleTree.h:62