Machine Learning Course with Python:

Overview

A Machine Learning Course with Python

https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat https://badges.frapsoft.com/os/v2/open-source.png?v=103 https://img.shields.io/twitter/follow/machinemindset.svg?label=Follow&style=social

Table of Contents

Download Free Deep Learning Resource Guide

Slack Group

Introduction

The purpose of this project is to provide a comprehensive and yet simple course in Machine Learning using Python.

Motivation

Machine Learning, as a tool for Artificial Intelligence, is one of the most widely adopted scientific fields. A considerable amount of literature has been published on Machine Learning. The purpose of this project is to provide the most important aspects of Machine Learning by presenting a series of simple and yet comprehensive tutorials using Python. In this project, we built our tutorials using many different well-known Machine Learning frameworks such as Scikit-learn. In this project you will learn:

  • What is the definition of Machine Learning?
  • When it started and what is the trending evolution?
  • What are the Machine Learning categories and subcategories?
  • What are the mostly used Machine Learning algorithms and how to implement them?

Machine Learning

Title Document
An Introduction to Machine Learning Overview

Machine Learning Basics

_img/intro.png
Title Code Document
Linear Regression Python Tutorial
Overfitting / Underfitting Python Tutorial
Regularization Python Tutorial
Cross-Validation Python Tutorial

Supervised learning

_img/supervised.gif
Title Code Document
Decision Trees Python Tutorial
K-Nearest Neighbors Python Tutorial
Naive Bayes Python Tutorial
Logistic Regression Python Tutorial
Support Vector Machines Python Tutorial

Unsupervised learning

_img/unsupervised.gif
Title Code Document
Clustering Python Tutorial
Principal Components Analysis Python Tutorial

Deep Learning

_img/deeplearning.png
Title Code Document
Neural Networks Overview Python Tutorial
Convolutional Neural Networks Python Tutorial
Autoencoders Python Tutorial
Recurrent Neural Networks Python IPython

Pull Request Process

Please consider the following criterions in order to help us in a better way:

  1. The pull request is mainly expected to be a link suggestion.
  2. Please make sure your suggested resources are not obsolete or broken.
  3. Ensure any install or build dependencies are removed before the end of the layer when doing a build and creating a pull request.
  4. Add comments with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations and container parameters.
  5. You may merge the Pull Request in once you have the sign-off of at least one other developer, or if you do not have permission to do that, you may request the owner to merge it for you if you believe all checks are passed.

Final Note

We are looking forward to your kind feedback. Please help us to improve this open source project and make our work better. For contribution, please create a pull request and we will investigate it promptly. Once again, we appreciate your kind feedback and support.

Developers

Creator: Machine Learning Mindset [Blog, GitHub, Twitter]

Supervisor: Amirsina Torfi [GitHub, Personal Website, Linkedin ]

Developers: Brendan Sherman*, James E Hopkins* [Linkedin], Zac Smith [Linkedin]

NOTE: This project has been developed as a capstone project offered by [CS 4624 Multimedia/ Hypertext course at Virginia Tech] and Supervised and supported by [Machine Learning Mindset].

*: equally contributed

Citation

If you found this course useful, please kindly consider citing it as below:

@software{amirsina_torfi_2019_3585763,
  author       = {Amirsina Torfi and
                  Brendan Sherman and
                  Jay Hopkins and
                  Eric Wynn and
                  hokie45 and
                  Frederik De Bleser and
                  李明岳 and
                  Samuel Husso and
                  Alain},
  title        = {{machinelearningmindset/machine-learning-course:
                   Machine Learning with Python}},
  month        = dec,
  year         = 2019,
  publisher    = {Zenodo},
  version      = {1.0},
  doi          = {10.5281/zenodo.3585763},
  url          = {https://doi.org/10.5281/zenodo.3585763}
}
Comments
  • OF and LR updates

    OF and LR updates

    Taking into account review notes. Having trouble setting up my python environment, so I have not been able to test the code yet. I hope to fix that today/tomorrow. Fixed the table in LR.

    opened by BroccoliHijinx 11
  • Multilayer Perceptron write-up

    Multilayer Perceptron write-up

    Submitting a PR now to allow for comments on what is done. There are placeholders for what is left to be done, and I should be able to do that tomorrow.

    Left to do;

    images and associated text

    More on backprop

    Defining and explaining actual MLPs (most right now is on NN basics)

    opened by BroccoliHijinx 3
  • Addressed comments brought up in peer review

    Addressed comments brought up in peer review

    I decided to remove the multiple linear regression section because it seems beyond the scope of this module. Those images, MLR.png and MLR_POBF.png, can safely be removed from our image folder. I left a mention to it for completeness. I also added captions for all figures and equations to explain what they are.

    opened by b-sherman 3
  • Logistic Regression Files, some overfitting changes

    Logistic Regression Files, some overfitting changes

    Within Logistic Regression, I have a table that I cannot get working. I want to keep messing around with it, but I'm not sure what is wrong. I am using the rst basic table, but I think the spacing is off somehow.

    opened by BroccoliHijinx 3
  • Naive bayes question

    Naive bayes question

    Hi @astorfi , Thanks for your great work ! I'm a beginner of ML. Tonight when I learn Naive Bayes Classification in your tutorial, I found the Equation 1 in the tutorial is different from that in Wiki. I wonder which one is correct or both of them are right?

    image


    image

    Look forward to your reply.

    opened by suedroplet 2
  • Chinese Translation

    Chinese Translation

    Hi @astorfi , Thanks for your great work ! My friends and I have learned a lot here. China has a platform called KESCI (https://www.kesci.com). They provide algorithm competition opportunities for developers, which is similar to Kaggle, and self - training online environment to enhance their algorithmic ability. I am going to translate the whole series to Chinese and applied for a column to publish them on KESCI, as a series. Hope to get your permission. thanks.

    opened by Vivian0210 2
  • Overfitting rst file

    Overfitting rst file

    I don't think including code with this module makes much sense, so I just included a write-up. I tried to keep it short and simple, since this is something to keep in mind in the entire course.

    opened by BroccoliHijinx 2
  • Naive bayes

    Naive bayes

    I just created a new branch for the updated naive bayes files since the old one is very far behind now. Included are the images, code, and module text.

    opened by b-sherman 1
  • Linear regression

    Linear regression

    I redid all the linear regression code with a completely new data set to assure originality and because the existing scikit-learn ones are confusing to me so they are bound to be confusing to a new reader. I also changed all the images to reflect the new code. I tried to simplify the code as much as possible and only used the bare minimum number of references to scikit-learn functions. I also revised the rst document to reflect these changes. All generated images now have a link to the code I used to create them as well because it seemed like a good idea.

    opened by b-sherman 1
  • Updated linear_regression.rst

    Updated linear_regression.rst

    +Added a Motivation section that talks about what the problem is +Changed raw URLs into hyperlinks on smaller words +Added a Code section that links to the module code and talks about what it does +Added a Conclusion section to close out the module

    opened by b-sherman 1
  • Reference fixes

    Reference fixes

    Changed the "References" indent level in several modules to be consistent. Changed header casing in some modules to be consistent. Requesting merge so that the site can be updated for screenshots to include in the final project report.

    opened by b-sherman 0
Releases(1.0)
Owner
Instill AI
A company offering AI-based solutions to real-world applications.
Instill AI
Flask app to predict daily radiation from the time series of Solcast from Islamabad, Pakistan

Solar-radiation-ISB-MLOps - Flask app to predict daily radiation from the time series of Solcast from Islamabad, Pakistan.

Abid Ali Awan 1 Dec 31, 2021
ETNA – time series forecasting framework

ETNA Time Series Library Predict your time series the easiest way Homepage | Documentation | Tutorials | Contribution Guide | Release Notes ETNA is an

Tinkoff.AI 675 Jan 08, 2023
Compare MLOps Platforms. Breakdowns of SageMaker, VertexAI, AzureML, Dataiku, Databricks, h2o, kubeflow, mlflow...

Compare MLOps Platforms. Breakdowns of SageMaker, VertexAI, AzureML, Dataiku, Databricks, h2o, kubeflow, mlflow...

Thoughtworks 318 Jan 02, 2023
DeepSpeed is a deep learning optimization library that makes distributed training easy, efficient, and effective.

DeepSpeed is a deep learning optimization library that makes distributed training easy, efficient, and effective. 10x Larger Models 10x Faster Trainin

Microsoft 8.4k Dec 30, 2022
Python package for concise, transparent, and accurate predictive modeling

Python package for concise, transparent, and accurate predictive modeling. All sklearn-compatible and easy to use. 📚 docs • 📖 demo notebooks Modern

Chandan Singh 983 Jan 01, 2023
CorrProxies - Optimizing Machine Learning Inference Queries with Correlative Proxy Models

CorrProxies - Optimizing Machine Learning Inference Queries with Correlative Proxy Models

ZhihuiYangCS 8 Jun 07, 2022
Probabilistic programming framework that facilitates objective model selection for time-varying parameter models.

Time series analysis today is an important cornerstone of quantitative science in many disciplines, including natural and life sciences as well as eco

Christoph Mark 129 Dec 24, 2022
Backtesting an algorithmic trading strategy using Machine Learning and Sentiment Analysis.

Trading Tesla with Machine Learning and Sentiment Analysis An interactive program to train a Random Forest Classifier to predict Tesla daily prices us

Renato Votto 31 Nov 17, 2022
This project used bitcoin, S&P500, and gold to construct an investment portfolio that aimed to minimize risk by minimizing variance.

minvar_invest_portfolio This project used bitcoin, S&P500, and gold to construct an investment portfolio that aimed to minimize risk by minimizing var

1 Jan 06, 2022
Automated Time Series Forecasting

AutoTS AutoTS is a time series package for Python designed for rapidly deploying high-accuracy forecasts at scale. There are dozens of forecasting mod

Colin Catlin 652 Jan 03, 2023
A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming.

Master status: Development status: Package information: TPOT stands for Tree-based Pipeline Optimization Tool. Consider TPOT your Data Science Assista

Epistasis Lab at UPenn 8.9k Jan 09, 2023
Extended Isolation Forest for Anomaly Detection

Table of contents Extended Isolation Forest Summary Motivation Isolation Forest Extension The Code Installation Requirements Use Citation Releases Ext

Sahand Hariri 377 Dec 18, 2022
AutoTabular automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications.

AutoTabular AutoTabular automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications. With just

wenqi 2 Jun 26, 2022
Cryptocurrency price prediction and exceptions in python

Cryptocurrency price prediction and exceptions in python This is a coursework on foundations of computing module Through this coursework i worked on m

Panagiotis Sotirellos 1 Nov 07, 2021
Visualize classified time series data with interactive Sankey plots in Google Earth Engine

sankee Visualize changes in classified time series data with interactive Sankey plots in Google Earth Engine Contents Description Installation Using P

Aaron Zuspan 76 Dec 15, 2022
Fourier-Bayesian estimation of stochastic volatility models

fourier-bayesian-sv-estimation Fourier-Bayesian estimation of stochastic volatility models Code used to run the numerical examples of "Bayesian Approa

15 Jun 20, 2022
Retrieve annotated intron sequences and classify them as minor (U12-type) or major (U2-type)

(intron I nterrogator and C lassifier) intronIC is a program that can be used to classify intron sequences as minor (U12-type) or major (U2-type), usi

Graham Larue 4 Jul 26, 2022
nn-Meter is a novel and efficient system to accurately predict the inference latency of DNN models on diverse edge devices

A DNN inference latency prediction toolkit for accurately modeling and predicting the latency on diverse edge devices.

Microsoft 241 Dec 26, 2022
Stock Price Prediction Bank Jago Using Facebook Prophet Machine Learning & Python

Stock Price Prediction Bank Jago Using Facebook Prophet Machine Learning & Python Overview Bank Jago has attracted investors' attention since the end

Najibulloh Asror 3 Feb 10, 2022