Code Monkey home page Code Monkey logo

mlt's Introduction

Documentation Status TravisCI Status Code Coverage

Maintenance Status Version Contributions

The MachineLearning Testbench

This piece of software prepares different datasets and ML algorithms as well as implementations and saves the qualitative benchmark results.
It emerged as part of a CompSci Masters' Thesis at the University of Applied Sciences and Arts Dortmund.

It is currently in a state of prerelease and still subject to changes!
A stable release can be expected around 03/2019

Getting Started

Have a look at the Getting Started section in the documentation for a detailed guide.
Here is a minimal working example to check your installation:

git clone https://github.com/Maddosaurus/MLT
cd MLT
pipenv install
cd MLT/datasets
git clone https://github.com/defcom17/NSL_KDD NSL_KDD
cd ..
python run.py --pnsl
python run.py --single --nsl --xgb 10 10 0.1

Upon completion, you should be able to find infos for the test run in your console as well as in the subfolder results.

Requirements

  • Python 3.6+
  • CUDA 9.1 (optional)
  • tensorflow-gpu (optional)

If you plan on using GPU-accelerated learning (strongly recommended), please set up CUDA 9.1 on your system. The current version of Tensorflow relies on CUDA 9.1 (not 10!). Please refer to the Tensorflow Install How To for up to date install instructions!
If you are interested in using the GPU-accelerated deep learning potion, make sure to replace tensorflow with tensorflow-gpu in your installation. The use of a virtual environment is strongly advised!
All package requirements can be installed via pipenv install (add --dev for development dependencies).

Besides these, you will need copies of the NSL-KDD and CICIDS2017 datasets stored in the subfolder datasets (/NSL_KDD and /CICIDS2017pub). The CICIDS2017 dataset can be downloaded at the University of New Brunswick, while NSL-KDD can be obtained on GitHub. Additional datasets can be included analogous to these.

Documentation

The current documentation can be found at readthedocs.io.
If you're intersted in manually building the API documentation, run make html in the docroot folder. This command will generate the full sphinx-doc for the project. You can view a local copy of the docs by running cd docroot/_build/html && python -m http.server from the project root.

Workflow

The general workflow is:

  1. Dataset Preparation (sanitize and pickle)
  2. Algorithm definition
  3. Feature Selection, optional CV spits and Normalization/Scaling
  4. Algorithm Training
  5. Result Collection and Evaluation

mlt's People

Contributors

dependabot[bot] avatar maddosaurus avatar snyk-bot avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  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.