3 #ifndef L1Trigger_L1TMuonEndCap_emtf_Forest 4 #define L1Trigger_L1TMuonEndCap_emtf_Forest 16 Forest(std::vector<Event*>& trainingEvents);
39 void generate(
int numTrainEvents,
int numTestEvents,
double sigma);
49 const char* savetreesdirectory,
66 std::vector<std::vector<Event*> >
events;
void predictEvents(std::vector< Event *> &eventsp, unsigned int trees)
void predictEvent(Event *e, unsigned int trees)
std::vector< std::vector< Event * > > events
void updateEvents(Tree *tree)
void prepareRandomSubsample(double fraction)
void doRegression(int nodeLimit, int treeLimit, double learningRate, LossFunction *l, const char *savetreesdirectory, bool saveTrees)
std::vector< std::vector< Event * > > subSample
void doStochasticRegression(int nodeLimit, int treeLimit, double learningRate, double fraction, LossFunction *l)
void saveSplitValues(const char *savefilename)
void loadFromCondPayload(const L1TMuonEndCapForest::DForest &payload)
void updateRegTargets(Tree *tree, double learningRate, LossFunction *l)
std::vector< Event * > getTrainingEvents()
void listEvents(std::vector< std::vector< Event *> > &e)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
std::vector< DTree > DForest
void sortEventVectors(std::vector< std::vector< Event *> > &e)
void generate(int numTrainEvents, int numTestEvents, double sigma)
std::vector< Tree * > trees
void loadForestFromXML(const char *directory, unsigned int numTrees)
void setTrainingEvents(std::vector< Event *> &trainingEvents)
void rankVariables(std::vector< int > &rank)
Tree * getTree(unsigned int i)
Forest & operator=(const Forest &forest)
void appendCorrection(std::vector< Event *> &eventsp, int treenum)