#============================================================= I. Setup environment #Add to .bashrc #CMS env alias cmset='source /cvmfs/cms.cern.ch/cmsset_default.sh' #CMS software aliases alias cmshow8='/opt/nicadd/contrib/cms/cmsShow-8.1-2/cmsShow ' alias cmshow9='/opt/nicadd/contrib/cms/cmsShow-9.2-1/cmsShow ' #== #setup ROOT v6.10.08+cuda - on SL7 nodes alias rtmva6='module load root/root-6.10.08-SL7-x64-cuda-7.5' # 1) Create or use the development folder on /cdata disk mkdir /cdata/$USER; cd /cdata/$USER; 2) copy and untar the source code from cmslpc kinit -f $USER cd /cdata/$USER rsync -av cmslpc:/uscms/home/serguei/nobackup/suvbs/archive/vbstmva.tgz ./ tar -xzf vbstmva.tgz 3) create links to vbs_ww reduced rootuples: source dsw.sh 4) define TMVA variables and spectators in vbsDL.hpp 5) Train BDT with signal and backrounds (for vbs_ww skims), runtime ~12 min //ok to ignore "unknown branch errors" root -b -q ./vbsTMVAClassification.C\(\"vbs_ww\",\"BDT\"\) //to test DNN runtime ~1 hour root -b -q ./vbsTMVAClassification.C\(\"vbs_ww\",\"Fisher,BDT,DNN_GPU\"\) //MLPBFGS,DNN_GPU,BDT ~8 hours root -b -q ./vbsTMVAClassification.C\(\"vbs_ww\",\"DNN_GPU,MLPBFGS,BDT\"\) 6) Apply BDT classification to data root -b -q ./vbsTMVAClassificationApplication.C\(\"vbs_ww\",\"BDT\"\) //or, if other disriminants were trained root -b -q ./vbsTMVAClassificationApplication.C\(\"vbs_ww\",\"Fisher,BDT,DNN_GPU\"\) //MLPBFGS,DNN_GPU,BDT root -b -q ./vbsTMVAClassificationApplication.C\(\"vbs_ww\",\"DNN_GPU,MLPBFGS,BDT\"\) 7) Use tmvaMon.cpp to analyse output (vbs_ww_SBtmva.root) root -l tmvaMon.cpp\(\"vbs_ww\"\) // root [1] plotvar(anl, "BDT", tmvasel+allCuts, 1.0, 1, 1, -1., 1.3, 0.05); Tools:: - to examine TMVA plots tmgui() - to create set of control plots for TCut=allCuts cplots(anl, allCuts, "allCuts") - to find cut on BDT that corresponds to the maximum of significance s/sqrt(s+b) anl->optCutScan("sgf1",cleanNAN+allCuts,"BDT",-1, 1, 0.1,0.0005, 20) - to create nice looking plots with custom axis labels, title, log scale - plotvar(anl, "BDT", tmvasel+allCuts, 1.0, 1, 1, -1., 1.3, 0.05, 1, 0, "VBS (WV), 35.9 fb^{-1}", "BDT", "Events/bin"); ############################################################# Fine tuning: - to change set of NN variables edit TMVAVARS in writeDL.sh; ./write_vbsDL.sh ############################################################## #Development area (cmsdev user only) export CVS_RSH=ssh export CVSROOT=:ext:cmsdev@nicadd.niu.edu:/cvs export CVSEDITOR="xemacs -nw" alias cmsdev='export CVSROOT=:ext:cmsdev@nicadd.niu.edu:/cvs' mkdir /work/$USER/cmsanl #checkout the source head version cmsdev cvs co -d vbstmva_dev anl/vbstmva cd vbstmva_dev ls # cvs history -Tan anl #If one need to tag package #cvs rtag version_name anl # #=============================================================