Skip to content

ngetichishmael/60DaysOfMachineLearning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

60 Days of Machine Learning

Week 1: Python Basics

Day 1: Python Basics - Part 1 ✅️

  • Learn about data types: integers, floats, strings, and booleans.
  • Understand variables and assignment.
  • Work with basic arithmetic and operators.
  • Use comparison and logical operators.

Day 2: Python Basics - Part 2 ✅️

  • Explore lists, tuples, and sets.
  • Learn about dictionaries and how to use them.
  • Perform basic operations with these data structures.

Day 3: Python Basics - Part 3 ✅️

  • Understand control flow: if, else, elif statements.
  • Learn about loops: for and while loops.
  • Explore break and continue statements.
  • Introduction to functions and their definitions.

Day 4: Intermediate Python - Part 1 ✅️

  • Learn about first-class functions and closures.
  • Understand global and non-local variables.
  • Explore the use of magic methods and tuple unpacking.
  • Learn about static variables and methods.

Day 5: Intermediate Python - Part 2✅️

  • Dive into lambda functions.
  • Explore inheritance and polymorphism. ✔️
  • Learn about error and exception handling. ✔️
  • Introduction to Python’s garbage collection and debugging. ✔️

Day 6: Advanced Python - Part 1

  • Learn about decorators and their uses.
  • Understand memoization using decorators.
  • Explore generators and yield statements.

Day 7: Advanced Python - Part 2

  • Work with collections: OrderedDict, defaultdict, namedtuple.
  • Explore coroutines and asynchronous programming.

Week 2: Mathematics and Statistics

Day 8: Statistics for Data Science

  • Understand descriptive statistics: mean, median, mode.
  • Learn about probability and distributions.
  • Introduction to hypothesis testing.

Day 9: Mathematics for ML - Part 1 ✅️

  • Learn linear algebra basics: vectors, matrices, and operations.
  • Understand eigenvalues and eigenvectors.

Day 10: Mathematics for ML - Part 2 ✅️

  • Explore calculus: derivatives and integrals.
  • Understand the concept of gradient descent.

Week 3: Data Handling with Python

Day 11: Pandas - Part 1 ✅️

  • Learn the basics of Pandas: Series and DataFrame.
  • Understand data indexing and selection.
  • Perform data manipulation and cleaning.

Day 12: Pandas - Part 2 ✅️

  • Explore advanced data operations: merging, joining, and concatenation.
  • Learn about groupby operations and pivot tables.

Day 13: Numpy Basics ✅️

  • Understand Numpy arrays and their operations.
  • Perform mathematical and statistical operations with Numpy.

Day 14: Data Preprocessing - Part 1 ✅️

  • Learn about data cleaning and handling missing values.
  • Perform feature scaling and normalization.

Day 15: Data Preprocessing - Part 2 ✅️

  • Explore data transformation techniques.
  • Learn about feature engineering and selection.

Week 4: Introduction to Machine Learning

Day 16: Introduction to ML

  • Understand the basics of machine learning.
  • Learn about supervised and unsupervised learning.

Day 17: Linear Regression

  • Learn about simple linear regression.
  • Understand the mathematics behind linear regression.
  • Implement linear regression in Python.

Day 18: Multiple Linear Regression

  • Explore multiple linear regression.
  • Implement multiple linear regression in Python.

Day 19: Polynomial Regression

  • Understand polynomial regression.
  • Implement polynomial regression in Python.

Day 20: Support Vector Regression

  • Learn about support vector machines for regression.
  • Implement support vector regression in Python.

Week 5: Machine Learning Algorithms

Day 21: Decision Tree Regression

  • Understand decision trees and how they work.
  • Implement decision tree regression in Python.

Day 22: Random Forest Regression

  • Learn about ensemble methods and random forests.
  • Implement random forest regression in Python.

Day 23: Logistic Regression

  • Understand logistic regression for classification.
  • Implement logistic regression in Python.

Day 24: K-Nearest Neighbors (KNN)

  • Learn about KNN algorithm.
  • Implement KNN for classification and regression.

Day 25: Support Vector Machines (SVM)

  • Understand SVM for classification.
  • Implement SVM in Python.

Day 26: Naive Bayes

  • Learn about Naive Bayes classifiers.
  • Implement Naive Bayes in Python.

Week 6: Clustering and Dimensionality Reduction

Day 27: K-Means Clustering

  • Understand the k-means clustering algorithm.
  • Implement k-means clustering in Python.

Day 28: Hierarchical Clustering

  • Learn about hierarchical clustering methods.
  • Implement hierarchical clustering in Python.

Day 29: Principal Component Analysis (PCA)

  • Understand PCA for dimensionality reduction.
  • Implement PCA in Python.

Day 30: Advanced Clustering Techniques

  • Explore DBSCAN and other advanced clustering algorithms.
  • Implement advanced clustering techniques in Python.

Week 7: Deep Learning Basics

Day 31: Introduction to Neural Networks

  • Understand the basics of neural networks.
  • Learn about activation functions and layers.

Day 32: Deep Learning with TensorFlow - Part 1

  • Introduction to TensorFlow.
  • Build and train a basic neural network.

Day 33: Deep Learning with TensorFlow - Part 2

  • Learn about convolutional neural networks (CNNs).
  • Implement a CNN for image classification.

Day 34: Recurrent Neural Networks (RNN)

  • Understand RNNs and their applications.
  • Implement an RNN for sequence data.

Day 35: Long Short Term Memory Networks (LSTM)

  • Learn about LSTM networks.
  • Implement LSTM for time series prediction.

Day 36: Transfer Learning

  • Understand transfer learning and its benefits.
  • Implement transfer learning for image classification.

Week 8: Natural Language Processing (NLP)

Day 37: Introduction to NLP

  • Understand the basics of NLP.
  • Learn about text preprocessing techniques.

Day 38: Sentiment Analysis

  • Implement sentiment analysis using machine learning.

Day 39: Text Classification

  • Learn about text classification techniques.
  • Implement text classification using machine learning.

Day 40: Named Entity Recognition (NER)

  • Understand NER and its applications.
  • Implement NER using machine learning.

Day 41: Topic Modeling

  • Learn about topic modeling techniques.
  • Implement topic modeling using LDA.

Day 42: Advanced NLP with BERT

  • Introduction to BERT and transformers.
  • Implement text classification using BERT.

Week 9: Model Evaluation and Tuning

Day 43: Model Evaluation Techniques

  • Learn about different model evaluation metrics.
  • Understand confusion matrix, precision, recall, F1-score.

Day 44: Cross-Validation

  • Understand the concept of cross-validation.
  • Implement cross-validation techniques.

Day 45: Hyperparameter Tuning

  • Learn about hyperparameter tuning methods.
  • Implement grid search and random search for hyperparameter tuning.

Day 46: Model Selection

  • Understand model selection criteria.
  • Learn about bias-variance tradeoff.

Week 10: Time Series Analysis

Day 47: Introduction to Time Series Analysis

  • Understand time series data and its components.
  • Learn about stationary and non-stationary time series.

Day 48: Time Series Forecasting - Part 1

  • Implement moving average and exponential smoothing.

Day 49: Time Series Forecasting - Part 2

  • Learn about ARIMA models.
  • Implement ARIMA for time series forecasting.

Week 11: Advanced Machine Learning Topics

Day 50: Ensemble Methods

  • Understand ensemble learning.
  • Implement bagging and boosting algorithms.

Day 51: Gradient Boosting Machines (GBM)

  • Learn about GBM and its variants.
  • Implement GBM in Python.

Day 52: XGBoost

  • Introduction to XGBoost.
  • Implement XGBoost for regression and classification.

Day 53: LightGBM

  • Learn about LightGBM.
  • Implement LightGBM for regression and classification.

Week 12: Special Topics and Final Projects

Day 54: Reinforcement Learning - Part 1

  • Introduction to reinforcement learning.
  • Understand the basics of Q-learning.

Day 55: Reinforcement Learning - Part 2

  • Implement a simple reinforcement learning algorithm.

Day 56: Computer Vision with OpenCV

  • Introduction to OpenCV.
  • Implement basic image processing tasks.

Day 57: Advanced Computer Vision

  • Learn about object detection and segmentation.
  • Implement YOLO or SSD for object detection.

Day 58: Final Project - Part 1

  • Start working on a comprehensive data science project.
  • Perform data collection and preprocessing.

Day 59: Final Project - Part 2

  • Build and evaluate machine learning models.
  • Fine-tune and optimize your models.

Day 60: Final Project - Part 3

  • Present your final project.
  • Create a project report and share your findings.

Machine Learning Algorithms

Supervised Learning

  • Regression
    • Linear Regression ✅
    • Polynomial Regression ✅
    • Ridge/Lasso Regression ✅
  • Classification
    • Logistic Regression ✅
    • Naive Bayes
    • K-NN ✅
    • SVM ✅
    • Decision Trees ✅

Unsupervised Learning

  • Clustering
    • K-Means✅
    • Mean Shift ✅
    • DBSCAN (Density-Based Spatial Clustering Of Applications With Noise)
    • Agglomerative
    • Fuzzy C-Means
  • Dimensionality Reduction
    • PCA
    • LDA
    • t-SNE
    • SVD
    • LSA
  • Association Rule Learning
    • Apriori
    • FP Growth
    • Eclat

Ensemble Learning

  • Bagging
    • Random Forest
  • Boosting
    • AdaBoost
    • Gradient Boosting
    • XGBoost
    • LightGBM
    • CatBoost
  • Stacking

Neural Networks and Deep Learning

  • Perceptrons
  • Autoencoders
  • Convolutional Neural Networks (CNNs)
    • DCNN
  • Recurrent Neural Networks (RNNs)
    • LSTM
    • GRU
    • seq2seq
  • Generative Adversarial Networks (GAN)
  • Deep Belief Networks (DBN)
  • Long Short-Term Memory (LSTM)
  • Gated Recurrent Unit (GRU)

Reinforcement Learning

  • Q-Learning
  • SARSA
  • Deep Q-Networks (DQN)
  • A3C
  • Genetic Algorithm

About

60 Days of Machine Learning

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published