Git Product home page Git Product logo

ml-classifier's Introduction

Contributors Forks Stargazers Issues MIT License


Logo

ML-Classifier

This project aims to identify "normal" or "danger" objects in conveyor belt of an airport
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

Table of Contents
  1. Getting Started
  2. Options
  3. Roadmap
  4. Contributing
  5. License

Getting Started

Prerequisites

You need to install the following packets using pip

  • pip
    pip install pandas
    pip install fpdf
    pip install sklearn
    pip install matplotlib
    pip install yellowbrick

How it works?

Run main.py and see a PDF report in the ./output/info (one for each selected classifier is generated).
All the plots are stored in the ./output/plot :

  • Precision/Recall/F1 Report and Confusion Matrix (with and without normalization)

    Logo

  • Decision Boundary 2D for all plane

    Logo

  • Decision Boundary 3D

    Logo

Options

Dataset

Dataset is made by the measures of three different sensors, 'RMs' 'LMs' 'UMs' placed respectively in the right, in the left and up.
Format is the following

RMs LMs UMs Class
1.98242 2.017493 2.015046 Object

Configuration

Configuration file entries are:

  • csv_path : the path of csv dataset folder; can be also one single file
  • classes : list of the two classes identifier since the classifier is binary
  • classifiers : list containing all the classifiers we want to use. All possibilities are:
    ["Naive-Bayes", "LinearSVC", "KNN", "DecisionTree", "LogisticRegression", "LDA", "SVM"]
  • csv_cols : list of features; must contains only 2 values
  • csv_labels : list of labels
  • normal : list of normal objects
  • danger : list of danger objects
  • plot_path : the path of the plot output
  • info_path : the path of the pdf output

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create.
Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details

ml-classifier's People

Contributors

captainmich avatar

Stargazers

 avatar Davide avatar

Watchers

James Cloos 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.