Skip to content

CaptainMich/ML-Classifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Simple Classification Problem Solver

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages