/* *************************************** * Author: M.Babai@rug.nl * * *************************************** */ /* * Example program. This code shows how to use the train procedure, in * order to generate weight file to be used by the KNN based * classifier. */ #include "PndKnnTrain.h" #include "TRandom3.h" int main(int argc, char** argv) { if(argc < 3) { std::cerr << "\t Usage\n" <<"\t./train " << std::endl; return 1; } std::string inpt = argv[1]; std::string oupt = argv[2]; std::vector clas; std::vector nam; // Class Names clas.push_back("electron"); clas.push_back("pion"); //clas.push_back("kaon"); //clas.push_back("muon"); //clas.push_back("proton"); // Parameter Names nam.push_back("emc"); nam.push_back("lat"); nam.push_back("z20"); nam.push_back("z53"); const char* file = inpt.c_str(); // Create classifier object. PndKnnTrain kNNtr (file, clas, nam, true); //NormType tt = VARX; //kNNtr.NormalizeData(VARX); //kNNtr.NormalizeData(MINMAX); //kNNtr.NormalizeData(MEDIAN); // Transform using PCA //kNNtr.PCATransForm(); //Set output file name kNNtr.SetOutPutFile(oupt); //Init and set data structures kNNtr.Initialize(); // Perform training kNNtr.Train(); return 0; }