Skip to content

100 days journey learning machine learning with the goal of building a project at the end of the journey. The older repo had some issues and it is not working correctly.

KaviRana/100DaysofML

Repository files navigation

100 Days of Machine Learning

Introduction

The 100 Days of Code is a well-known coding challenge that anyone, regardless of their background, can undertake to significantly enhance their coding skills. Rules are straightforward: maintain a continuous streak of 100 days where you learn a new skill and put it into practice. On top of that, I have made the decision that by the end of the 100 Days of Machine Learning challenge, I will create ONE project based on solving a real world problem.

Roadmap

Topics I have covered :

Mathematics

  • Descriptive Statistics
  • Probability Distribution Functions
  • Gaussian Distribution
  • Non Gaussian Distributions

Introduction to Machine Learning

  • What is ML?
  • Types of ML
  • Machine Learning Development Life Cycle
  • Tensors

Sourcing Data

  • Working with CSV files and JSON files
  • Fetching data from API
  • Fetchind data from a DB (MySQL)
  • Web Scraping using BeautifulSoup

Exploratory Data Analysis

  • Questions to ask
  • Univariate, Bivariate , Multivariate Analysis
  • Pandas Profiling

Feature Engineering

  • Introduction
  • Scaling - Standarsization and Normalisation
  • Encoding Categorical Data - Ordinal Encoding and One Hot Encoding
  • Column Transformations (Power,Function,Log,Reciprocal,Square Root , Box-Cox and YeoJohnson)
  • Binning and Binarization
  • Discretization
  • Quantile Binning
  • KMeans Binning
  • Principal Component Analysis
  • Imputation Techniques

Machine Learning

Supervised Learning

  • Simple Linear Regression
  • Regression Metrics
  • Multiple Linear Regression
  • Gradient Descent - Batch , Stochastic , Mini Batch
  • Polynomial Regression
  • Bias Variance Tradeoff
  • Regularisation
  • Perceptron Trick
  • Logistic Regression
  • Softmax Regression
  • Decision Trees and Regression Trees
  • Support Vector Machines
  • Voting Ensemble
  • Bagging Ensemble and Random Forest Ensemble
  • AdaBoosting Ensemble
  • Gradient Boosting Ensemble
  • Stacking Ensemble

UnSupervised Learning

  • K means Clustering
  • Agglomerative Clustering (Hierarchical)
  • DBSCAN Clustering
  • Hyperparameter Optimisation Techniques:

Deep Learning

  • Fundamentals of Tensorflow
  • Types of Neural Networks
  • MLP and MLP notation
  • Loss Functions in model.compile()
  • Forward Propagation
  • Backpropagation Algorithm (and how to improve it using meoisation)
  • Vanishing Gradeint Descent Problem
  • Fine tuning hyper parameters for improving neural networks
  • Regularisation Techniques : Early Stopping , Dropout Layers
  • Activation Functions : Tanh(x) function , sigmoid function
  • Rectified Linear Unit Function and its variants
  • Weight Initialisation Techniques : with zero , with random , Xavier Glorat , He method
  • Batch Normalisation
  • Optimisers : SDG with momentum , Nesterov , Ada Grad , RMSprop , Adam
  • Keras Tuner for Hyper parameter tuning
  • Convolutional Neural Network
  • CNN architecture , pooling functions
  • Strides and Padding
  • Recurrent Neural Network

Natural Language Processing

  • Text Preprocessing
  • End to End Pipeline Understandin(Theory)
  • Text Preprocessing (Removing , Tokenisation , Stemming and Lemitisation)
  • Parts of Speech Tagging using Spacy
  • Text Representation and Word Embeddings (Word2Vec)
  • Text Classification

Deployment

  • Streamlit for Web applications
  • Restful APIs
  • Flask
  • Django

Libraries that I have worked with in these 100Days

Numpy,Pandas,Matplotlib,Seaborn BeautifulSoup Tensorflow PandasProfile Streamlit NLTK Sci-Kit Learn KerasTuner makepipeline spacy

Resources

During my #100DaysofMachineLearning journey, I'll be using various resources to learn and explore different topics. Here are some of the key resources that I'll be referring to:

  1. Books:

    • Storytelling with Data - Willey
    • The Hundred-Page Machine Learning Book - Andriy Burkov
    • Deep Learning - MIT , Ian Goodfellow and Yoshua Bengio and Aaron Courville
    • Deep Learning Cookbook - Douwe Osinga
    • Real world machine learning - Henrik Brink
  2. YouTube Resources

    • Krish Naik
    • CodeBasics
    • Danieal Bourke
    • Gourav Gupta
    • CampusX
    • Serrano Academy
    • Jovian
    • Harvard CS50 course on FreeCodeCamp
    • Made with ML
  3. Websites and Blogs:

  4. Documentation:

    • Scikit-learn Documentation
    • TensorFlow Documentation
    • Keras Documentation
    • Streamlit Documentation

Projects

  1. Book Recommender System
  2. Spam Classifier System
  3. Plagiarism Detector
  4. Skincare Recommender App (in progress)

Conclusion

I'm excited to embark on this #100DaysofMachineLearning challenge and explore the fascinating world of machine learning. I'll be sharing my progress, code, and insights in this repository, so feel free to follow along and provide feedback.

Let's dive into the world of machine learning together!

About

100 days journey learning machine learning with the goal of building a project at the end of the journey. The older repo had some issues and it is not working correctly.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published