Machine_Learning_Tutorials
Machine_Learning_Tutorials copied to clipboard
Code, exercises and tutorials of my personal blog ! 📝
Machine Learning Tutorials and Articles

In this repository, I'm uploading code, notebooks and articles from my personal blog : https://maelfabien.github.io/. Don't hesitate to ⭐ the repo if you enjoy my work ! New articles are being published weekly !
🚀 I recently started a newsletter in which I gather some cool articles I wrote on a topic, interesting Github repositories, projects, papers and more! I’ll try to send 1 to 2 emails per month. If you want to stay in the loop, just click here : http://eepurl.com/gyYzi5
NEW: I'm looking for motivated Data Scientists to help me build high environmental impact algorithms (CV essentially). Please contact me if you're interested (from my website, contact section)
Table of Content :
- CheatSheets
- Latest Articles
- Machine Learning
- Deep Learning
- Data Engineering
- Written for other blogs
- Medium Articles
First of all, if you're not familiar with the key concepts of machine learrning, make sure to check this first article : https://maelfabien.github.io/machinelearning/ml_base/
The repository is organized the following way :
- articles and tutorials are posted by category
- there is a link to the article in question with the read time specified
- the is a link to the code folder for each article
You would like to work on an article with me ? Or you would like me to work on a specific topic ? Feel free to reach out ! ([email protected])
Machine Learning Cheatsheet :
For the moment, these cheat sheets are written manually. I'd like to create a visual content later that would both dive in the maths and illustrate clearly each algorithm.
- Supervised Learning
- Unsupervised Learning
Projects
I have made a series of projects, all of which are available on my blog : https://maelfabien.github.io/portfolio/#

Latest articles
SP - Voice Gender Detection web application: How to extract relevant features and build a voice gender detection application using MFCC, GMMs and a provided dataset.
SP - Sound Visualization (3/3): Dive into spectrograms, chromagrams, tempograms, spectral power density and more...
SP - Sound Feature Extraction (2/3): An overview with a Python implementation of the different sound features to extract.
SP - Introduction to Voice Processing in Python (1/3): Summary of the book "Voice Computing with Python" with concepts, code and examples.
SP - Building a Voice Activity Detection web application : Voice detection can be used to start a voice assistant or in emergency cases for example. Here's how to implement it using simple methods.
CV - Implementing YoloV3 for Object Detection : Learn how to implement YoloV3 and detect objects on your images and videos.
NLP - Easy Question Answering with AllenNLP : Understand the core concepts and create a simple example of Question Answering.
NLP - Data Augmentation in NLP : Details of the implementation of “Easy Data Augmentation” paper.
NLP - Character-level LSTMs to predict gender of first names : 90% accuracy on predictiong the gender of French and US first names.
NLP - Few Shot Text Classification : Implementation of a simple paper that leverages pre-trained models for few shot text classification.
NLP - Improved Few Shot Text Classification : Improving previous results with Data Augmentation and more complex models.
RL - Introduction to Reinforcement Learning : An introduction to the basic building blocks of reinforcement learning.
RL - Markov Decision Process : Overview of Markov Decision Process and Bellman Equation.
RL - Planning by Dynamic Programming : Introduction to Dynamic Programming, including Policy and Value Iteration.
NLP - I trained a Neural Network to speak like me : Having written over 100 articles, I trained a NN to write articles just like me.
DL - How do Neural Networks learn? : Dive into feedforward process and back-propagation.


Article Title | Read Time | Article | Code Folder |
---|---|---|---|
The linear regression model (1/2) | 14mn | here | here |
The linear regression model (3/2) | 10mn | here | here |
Basics of Statistical Hypothesis Testing | 5mn | here | --- |
The Logistic Regression | 4mn | here | here |
Statistics in Matlab | 4mn | here | --- |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
The Basics of Machine Learning | 4mn | here | --- |
Bayes Classifier | 1mn | here | --- |
Linear Discriminant Analysis | 3mn | here | --- |
Adaboost and Boosting | 7mn | here | here |
Gradient Boosting Regression | 6mn | here | here |
Gradient Boosting Classification | 3mn | here | --- |
Large Scale Kernel Methods for SVM | 9mn | here | here |
Anomaly Detection | 3mn | here | --- |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to Time Series | 4mn | here | here |
Key concepts of Time Series | 4mn | here | here |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Markov Chains | 9mn | here | here |
Hidden Markov Models | 6mn | here | --- |
Build a language recognition app from scratch | 10mn | here | here |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to Graph Mining | 5mn | here | here |
Graph Analysis | 4mn | here | here |
Graph Algorithms | 11mn | here | here |
Graph Learning | 8mn | here | here |
Graph Embedding | 4mn | here | here |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
GridSearch vs. Randomized Search | 2mn | here | --- |
AutoML with h2o | 6mn | here | --- |
Bayesian Hyperparameter Optimization | 7mn | here | here |
Machine Learning Explainability | 12mn | here | --- |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to Data Viz | 12mn | here | --- |
Visual Recommendation System | 4mn | here | --- |
Interactive graphs in Python with Altair | 5mn | here | here |
Dynamic plots with BQ-Plot | --- | --- | here |
An interactive tool with Altair | --- | here | --- |
An interactive tool with D3.js | --- | here | --- |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to Online Learning | 5mn | here | --- |
Linear Classification | 1mn | here | --- |


Article Title | Read Time | Article | Code Folder |
---|---|---|---|
The Rosenbaltt's Perceptron | 8mn | here | here |
Multilayer Perceptron (MLP) | 5mn | here | here |
Prevent Overfitting of Neural Netorks | 6mn | here | --- |
Full introduction to Neural Nets | 6mn | here | --- |
Convolutional Neural Network | 6mn | here | --- |
How do Neural Networks learn? | 3mn | here | --- |
Activation functions in DL | 3mn | here | here |

Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Inception Architecture in Keras | 2mn | here | here |
Build an autoencoder using Keras functional API | 5mn | here | --- |
XCeption Architecture | 5mn | here | here |
GANs on the MNIST dataset | --- | --- | here |


Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Build an Emotion Recognition WebApp from scratch | 8mn | here | here |
A full guide to Face, Mouth and Eyes Real Time detection | 16mn | here | here |
How to use OpenPose on MacOS ? | 3mn | here | --- |
Introduction to Computer Vision | 1mn | here | --- |
Image Filtering and Image Gradients | 5mn | here | here |
Advanced Filtering and Image Transformation | 5mn | here | --- |
Image Features, Panorama, Matching | 5mn | here | --- |
Implementing YoloV3 for Object Detection | 3mn | here | --- |


Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to NLP | 1mn | here | --- |
Text Pre-Processing | 8mn | here | --- |
Text Embedding with BoW and Tf-Idf | 5mn | here | --- |
Text Embedding with Word2Vec | 6mn | here | --- |
I trained a Neural Network to speak like me | 8mn | here | here |
I trained a Neural Network to speak like me | 8mn | here | here |
Few Shot Text Classification | 10mn | here | here |
Improved Few Shot Text Classification | 9mn | here | here |
Predicting Gender of First Names | 7mn | here | here |
Data Augmentation in NLP | 3mn | here | --- |
Easy Question Answering with AllenNLP | 4mn | here | --- |


Article Title | Read Time | Article | Code Folder |
---|---|---|---|
Introduction to Reinforcement Learning | 6mn | here | --- |
Markov Decision Process | 7mn | here | --- |
Planning by Dynamic Programming | 4mn | here | --- |

Two general articles :
-
Understanding Computer Components (6mn read) https://maelfabien.github.io/bigdata/comp_components/
-
Useful Bash commands (1mn read) https://maelfabien.github.io/bigdata/Terminal/
-
Making your code production ready (1mn read) https://maelfabien.github.io/bigdata/Code/

Article Title | Read Time | Article |
---|---|---|
Introduction to Hadoop | 4mn | here |
MapReduce | 3mn | here |
HDFS | 2mn | here |
VMs in Virtual Box | 1mn | here |
Hadoop with the HortonWorks Sandbox | 2mn | here |
Load and move files to HDFS | 2mn | here |
Launch a MapReduce Job | 2mn | here |
MapReduce Jobs in Python | 3mn | here |
MapReduce Job in Python locally | 1mn | here |

Article Title | Read Time | Article |
---|---|---|
Introduction to Spark | 6mn | here |
Install Spark-Scala and PySpark | 1mn | here |
Discover Spark-Scala | 2mn | here |

Article Title | Read Time | Article |
---|---|---|
A No-SQL project from scratch | 8mn | here |
Big (Open) Data, the GDelt project | 2mn | here |
Install Zeppelin locally | 1mn | here |
Run Zeppelin on AWS EMR | 4mn | here |
Work with S3 buckets | 1mn | here |
Launch and access AWS EC2 instances | 2mn | here |
Install Apache Cassandra on EC2 Cluster | 2mn | here |
Install Zookeeper on EC2 instances | 3mn | here |
Build an ETL in Scala | 3mn | here |
Move Scala Dataframes to Cassandra | 2mn | here |
Move Scala Dataframes to Cassandra | 2mn | here |

Article Title | Read Time | Article |
---|---|---|
AWS Cloud Concepts | 2mn | here |
AWS Core Services | 1mn | here |

Article Title | Read Time | Article |
---|---|---|
TPU Survival Guide on Colab | 8mn | here |
Store files on Google Cloud and Colab | 1mn | here |
TPU Survival Guide on Colab | 8mn | here |
Introduction to GCP (Week 1 Module 1) | 6mn | here |
Lab - Instance VM + Cloud Storage | 3mn | here |
Lab - BigQuery Public Datasets | 1mn | here |
Introduction to Recommendation Systems (Week 1 Module 2) | 4mn | here |
Run Spark jobs on Cloud DataProc (Week 1 Module 2) | 2mn | here |
Lab - Recommend products using Cloud SQL and SparkML | 6mn | here |
Run ML models in SQL with BigQuery ML (Week 1 Module 3) | 6mn | here |

Article Title | Read Time | Article |
---|---|---|
Introduction to ElasticStack | 1mn | here |
Getting Started with ElasticSearch and Kibana | 7mn | here |
Install and run Kibana locally | 1mn | here |
Working with DevTools in ElasticSearch | 9mn | here |
Working with DevTools in ElasticSearch | 9mn | here |

Article Title | Read Time | Article |
---|---|---|
Introduction to Graph Databases | 1mn | here |
A day at Neo4J GraphTour | 7mn | here |
Written for other blogs
-
Who's the painter? - For explorium.ai : An illustration of how data enrichment and feature engineering can improve a model.
-
Machine Learning Interpretability and Explainability (1/2) - For explorium.ai : An introduction to interpretable models with code and examples.
-
Machine Learning Interpretability and Explainability (2/2) - For explorium.ai : An introduction to explainability in Machine Learning with code and examples.
-
A guide to Face Detection - For digitalminds.io : An overview of the different techniques face Face Detection in Python (with code).
-
Modéliser des distributions avec Python (French) - For Stat4Decision: Distribution fitting web application with Streamlit.
-
Introduction au Traitement Automatique de Language Naturel (TAL) (French) - For Stat4Decision
Medium Articles
-
Boosting and Adaboost clearly explained : https://towardsdatascience.com/boosting-and-adaboost-clearly-explained-856e21152d3e
-
A guide to Face Detection in Python: https://towardsdatascience.com/a-guide-to-face-detection-in-python-3eab0f6b9fc1
-
Markov Chains and HMMs: https://towardsdatascience.com/markov-chains-and-hmms-ceaf2c854788
-
Introduction to Graphs (Part 1): https://towardsdatascience.com/introduction-to-graphs-part-1-2de6cda8c5a5
-
Graph Algorithms (Part 2): https://towardsdatascience.com/graph-algorithms-part-2-dce0b2734a1d
-
Graph Algorithms (Part 3): https://towardsdatascience.com/learning-in-graphs-with-python-part-3-8d5513eef62d
-
I trained a neural network to speak like me: https://towardsdatascience.com/i-trained-a-network-to-speak-like-me-9552c16e2396
Stay tuned :)