From a0c31bdc97fd97c89460a5c6bee0d56c16452fbc Mon Sep 17 00:00:00 2001 From: Nikolai Hartmann <Nikolai.Hartmann@physik.uni-muenchen.de> Date: Wed, 9 May 2018 10:49:53 +0200 Subject: [PATCH] adding README --- README.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e2dad5c --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +# KerasROOTClassification + +This is an attempt to simplify the training of Keras models from ROOT TTree input. + +The recommended usage is to put this module in your python path and +create run scripts to define and train your model. + +For example: + +```python +import numpy as np +import logging + +from KerasROOTClassification import ClassificationProject + +logging.basicConfig() +logging.getLogger("KerasROOTClassification").setLevel(logging.INFO) + +c = ClassificationProject("my_project", # this will also be the name of the project directory + signal_trees = [(filename1, treename1)], + bkg_trees = [(filename2, treename2), + (filename3, treename3), + ], + optimizer="Adam", + selection="some-selection-expression", + branches = ["var1", "var2", "var3"], + weight_expr = "some-weight-expression", + identifiers = ["var4", "var5"], # variables that identify which events were used for training + step_bkg = 10, # take every 10th bkg event for training + step_sig = 2, # take every second sig event for training +) + +c.train(epochs=20) +``` + +Previously created projects can be inspected in iypthon like + +``` +ipython -i -m KerasROOTClassification.browse <project-dir> +``` + +# Conda setup + +An example for a mini conda setup that contains the nescessary packages: + +```sh +conda install keras pandas matplotlib scikit-learn pydot graphviz jupyter +pip install root_numpy +``` -- GitLab