Skip to content

A collection of commonly used machine learning algorithms implemented in Python/Numpy

License

Notifications You must be signed in to change notification settings

upul/Machine-Learning-Algorithms-From-Scratch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine Learning Algorithms From Scratch

This repository contains a collection of commonly used machine learning algorithms implemented in Python/Numpy. No other third-party libraries (except Matplotlib) are used.

πŸ“‘ Table of Contents

πŸ“’ Introduction

This repository contains a collection of commonly used machine learning algorithms implemented in Python/Numpy. No other third-party libraries (except Matplotlib) are used.

Algorithms are implemented in Jupyter notebooks. Before starting the coding section, we presented the basic intuition of the algorithm along with necessary mathematical derivations.

Optimized and computationally efficient algorithms were not our intention and we just wanted to produce an accessible collection of algorithms for students and software practitioner.

πŸ”¨ Usage

If you want to read Jupyter notebooks just like static document, please follow the nbviewer links or else to execute notebooks locally use the following instructions.

  1. Clone the repository: https://github.com/upul/Machine-Learning-Algorithms-From-Scratch.git
  2. Go to local repository location: cd Machine-Learning-Algorithms-From-Scratch
  3. Run notebooks: jupyter notebook

πŸ”  Prerequisite

In order to successfully following Jupyter notebooks, we assume that you have a basic understanding of the following areas.

  1. Basic programming experience in Python
  2. Introductory knowledge of linear algebra
  3. Basic probability theory
  4. Basic multi-variate calculus

πŸ”© Algorithms

  • Supervised
    • Classification
      • Logistic Regression nbviewer
      • Linear Discriminant Analysis
      • Decision Tree Classifier nbviewer
      • Ransom Forest Classifier
      • Gradient Boosting Classifier
    • Regression
      • Linear Regression nbviewer
      • Ridge Regression
      • Lasso Regression
      • Decision Tree Regression nbviewer
  • Unsupervised
    • Clustering
      • K-Means
      • Gaussian Mixture

πŸ“‚ Resources

  • πŸ“š Text Books

Following books were immensely helpful when we were preparing these Jupyter notebooks. We believe these books should be available on every Machine Learning/Data Science practitioner's bookshelves.

  • πŸŽ₯ MOOCs and Videos

Following MOOCs and Youtube playlists are simply amazing. If you want to broaden your Machine Learning knowledge I'm pretty sure those MOOCs and videos will be really helpful.

About

A collection of commonly used machine learning algorithms implemented in Python/Numpy

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published