Giter Site home page Giter Site logo

ids's Introduction

Building Intrusion Detection System (IDS) using Machine Learning

Need for Machine learning in IDS:

Traditionally intrusion detection systems (IDS) are signature/rule-based which means they excel at detecting known attacks. Since the vulnerabilities and their exploits are evolving at a breakneck pace, it may not always be possible to have all known exploits/signatures as a part of the database. Hence there is a need for a more intelligent, proactive and flexible system that automatically learns the characteristics of malicious access from a historical database. The machine learning algorithms learn from the existing instances and extract valuable and discriminative features from the data set to help the learning algorithm differentiate the intrusions.

Machine Learning methods :
Upper Confidance Bound, a classic solution to reinforcement learning problem called multi armed bandit is implemented.It can maximize the model performance in XGBoost active learning by exploring/exploiting 3 alternative choices(uncertainity sampling techniques). More details are in the report.

#Code Execution instructions

0) Running baseline model

     python playground.py --type 0

1) Running Active learnig techniques

    python playground.py --type 1 --method entropy

    or 
    python playground.py --type 1 --method margin

    or 
    python playground.py --type 1 --method random

2) Running UCB technique
    
    python playground.py --type 2

place the data in parent folder with names train.csv and test.csv and code in sub folder. Code automatically cleans the data before the models starts.

ids's People

Contributors

krishnachaitanya-gopaluni avatar

Watchers

 avatar

Forkers

diimka123

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.