Giter Club home page Giter Club logo

draco-mlfoy's Introduction

DRACO-MLfoy

Collection of Machine learning frameworks for DNNs, Regressions, Adversaries, CNNs and Others (DRACO)

Refer to READMEs in the corresponding directories for specific information!

For readability there is a README for each step (this here is only for an overview!):

ATTENTION

When working with the combination of

  • ROOT.__version__ = 6.14/04
  • keras.__version__ = 2.2.4
  • pandas.__version__ = 0.23.4 segmentation violations appear when opening hdf-files with pandas.read_hdf() or pandas.HDFStore(). To circumvent this, first import everything related to ROOT, only then start importing things from keras.

Package-requirements

  • CMSSW_9_4_9 or newer
  • uproot pip install --user uproot==3.2.7
  • pip install --user uproot-methods==0.2.6
  • pip install --user awkward==0.4.2
  • TensorFlow backend for KERAS export KERAS_BACKEND=tensorflow

Workflow in a nutshell

  1. Preprocess input data:
    • to create input features you need data in the ntuple format, these get converted into hdf5 dataframes
    • create a list of input features in variable_sets/ (look at the README for structural advice)
    • adjust settings in preprocessing/root2pandas/preprocessing.py, check README
    • execute it on the NAF (tested with CMSSW_9_4_9)
    • this creates one dataset for each event category you specified in preprocessing.py
  2. Setup training:
    • move to directory train_scripts/ and create a config script for your training (for simple DNN training adjust train_scripts/train_template.py)
    • look at the README for further instructions
  3. Execute training
    • execute the trainig script with your jet-tag category as option (further parser options described in README)
    • after completion of the script you can look at results in the specified output directory

preprocessing

collection of scripts for preprocessing of ntuples files to hdf5 files as input for DRACOs

  • root2pandas: generate hdf5 files from ntuples + MEM files

train_scripts

collection of top-level scripts for training

pyrootsOfTheCaribbean

collection of scripts for plotting

  • plot_configs: collection of scripts for configuring plots

variable_sets

lists of input variables used for dnn trainings

DRACO_Frameworks

collections of frameworks for training and evaluation of different machine learning frameworks

draco-mlfoy's People

Contributors

angelagiraldi avatar leareuter avatar pekraem avatar sebwieland avatar sehnle avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.