Machine Learning

AWS Machine Learning Specialty

AWS| May 2022

Demonstrated ability to build, train, tune, and deploy ML models using the AWS Cloud.

Can derive insight from AWS ML services using either pre-trained models or custom models built from open-source frameworks.

Open Source frameworks include Spark, Zepplin, and Hadoop.

Machine Learning DevOps Engineer Nano Degree

Udacity | Feb 2022

This Nano degree focuses on writing production-level models.

Consists of 5 different modules, each module has a specific project to test your abilities.

  1. Clean Code Principles

  2. Building a Reproducible Model Workflow

  3. Deploying a Scalable ML Pipeline in Production

  4. ML model scoring & Monitoring

Tools Learnt:

  • Git & Github

  • Weights and Biases

  • Ml flow

  • Hydra

  • Pytest

  • Conda

  • Yaml

  • Docker

  • DVC

  • AWS

  • Heroku

  • FAST API

  • Flask

  • WSL

  • Crontab

Skills Developed:

  1. Clean Code Principles

  • Writing results.log, using logger for debugging

  • Writing README.md files for Project reusability

  • Model development in git

  • Modularisation of Project Libraries & Function

  • Using Pylint to score your code out of 10

  • Using Autopep8 to fix issues regarding formating of your code

Skills Developed:

2. Building a reproducible workflow

  • Creating a clean, organized, reproducible, end-to-end machine learning pipeline from scratch using conda, Hydra and Pytest.

  • Transforming, validating and verifying your data

  • Writing Deterministic tests and non-deterministic tests for various datasets.

  • Use fixtures to share data between tests.

  • Use conftest.py to add options to the command line of pytest so you can pass parameters and use it within components of ML pipelines.

  • Running experiments, tracking data, code, and results using tags.

  • Understanding of Feature Engineering and Feature store.

  • Creating an inference pipeline with sklearn and export it with mlflow and scikit-learn and Pytorch.

  • Evaluate the inference artifact against the test dataset

  • Selecting the best performing model and promoting it to production.

  • Creating an artifact ready for deployment, and releasing your final pipeline on Github.

  • Assign version numbers using Semantic Versioning

  • Deploy inference artifact with MLflow and other tools for both online (real-time) and offline (batch) inference

Skills Developed:

3. Deploying a Scalable Machine Learning Model

  • Review Validation Sets and K-Fold Cross-Validation.

  • Data Slicing

Data Slicing Use Cases and Testing

  • Model Bias

  • The Aequitas Package

  • Model Cards

  • Data Provenance

  • Remote Storage with DVC

  • Pipelines with DVC

  • Experiment Tracking with DVC

  • Continuous Integration with GitHub Actions

  • Continuous Deployment with Heroku

  • Fundamentals of FastAPI

  • Local API Testing

  • Live API Testing

Skills Developed:

4. ML Model Scoring & Monitoring

  • Writing Model files to persistent storage and production directories on Amazon S3 database

  • Automation of Job Scheduling with crontab

  • Scoring models using relevant analysis functions

  • Reading and writing model scores

  • Model drift, reepelacing obsolete models and hypothesis testing

  • Latency consideration in model re-deployment pipeline

  • Data Integrity testing

  • Data Instability testing

  • Updating outdated dependencies automatically

  • API configuration with Python flask

  • End-point scripting

  • Calling API's

  • GET & POST

Tensorflow Developer Certificate

Tensorflow Developer Program- Google Developer Certification| Jan 2022

Earned by giving a 5 hour exam of modelling neural networks in Tensorflow framework in python. The certificate program requires an understanding of building TensorFlow models using Computer Vision, Convolutional Neural Networks, Natural Language Processing, Sequences and time series, and real-world image data and strategies.

Skills Developed:

  • Foundational principles of ML and Deep Learning

  • Building ML models in TensorFlow 2.x

  • Building image recognition, object detection, text recognition algorithms with deep neural networks and convolutional neural networks

  • Using real-world images in different shapes and sizes to visualize the journey of an image through convolutions to understand how a computer “sees” information, plot loss and accuracy

  • Exploring strategies to prevent overfitting, including augmentation and dropouts

  • Applying neural networks to solve natural language processing problems using TensorFlow

Tools Learnt:

  • Tensorflow

  • Keras

  • Python

  • Pandas

  • Numpy

Deep Learning Specialisatiton

Deep Learning.AI| Dec 2020

This Certificate consists of completing 5 different courses in Deep learning topic

Courses include:

  1. Neural Networks & Deep Learning

  2. Improving Deep Neural Networks: Hyperparameter Tuning, Regularisation and Optimisation

  3. Convolutional Neural Network

  4. Structuring Machine Learning Projects

  5. Sequence Models

Each courses required project assigment to be completed described in the project section.

Tools Learnt:

  • Python

  • Jupyter Notebooks

  • Pandas

  • Numpy

  • Tensorflow

Skills Developed:

  1. Neural Networks & Deep Learning

    • Binary Classification

    • Logistic Regression

    • Cost Functions

    • Gradient Descent

    • Vectorization

      • Using Numpy

    • Activation Functions

      • Sigmoid

      • Relu

      • Leaky Relu

      • Tanh

      • Softmax

    • Forward Propagation

    • Backward Propagation

2. Improving Deep Neural Networks: Hyperparameter Tuning, Regularisation and Optimisation

  • Bias and Variance in Deep Learning

  • Data Segregation

    • Train/Valid/Test sets splits

  • Regularisation

    • Dropout

    • Data Augmentation

    • Early stopping

  • Normalizing Inputs

  • Vanishing/ Exploding Gradients

  • Weight Initialization of Neural Networks

  • Gradient Checking

  • Batch Normalization

  • Multiclass Classification

    • Softmax activation function

  • Optimization Algorithms

    • Gradient Descent

    • Stochastic Gradient Descent(SGD)

    • Batch Gradient Descent

    • Gradient Descent withMomentum

    • Mini-batch gradient descent

    • RMS Prop

    • Adam

      • Learning rate decay

  • Hyperparameters Tuning

    • Momentum value (Optimizer)

    • Beta (Optimizer)

    • Layers

    • Hidden units

    • Learning rate decay

    • Mini-batch size

Skills Developed:

3. Convolutions Neural Network

    • Convolution Operation

    • Components in convolutional Neural network

      • Filters

      • Strides

      • padding

    • Pooling Layers

      • Average Pooling

      • Max Pooling

    • ResNets

    • Inception Networks

    • Transfer Learning

    • Data Augmentation

    • Object Localisation

      • Bounding box prediction

      • Non max supression

      • Intersection over union

      • Anchor Boxes

      • YOLO algorithm

      • R-CNN

      • Fast R-CNN

      • Faster R-CNN

    • Face Recognition

      • One shot learning

      • Siamese Network

      • Triplet Loss function

      • Face Verification

    • Neural Style Transfer

      • Content cost function

      • Style cost function

4. Structuring Machine Learning Projects

  • Avoidable bias

  • Single number evaluation metrics

  • Data segregation on large datasets

  • Error Analysis

  • Mismatched training and dev/test set

  • Human Level Performance

  • Transfer Learning

  • Multi Task Learning

Skills Developed:

5. Sequence Models

  • Recurrent Neural Network

  • Back Propagation through time

  • Different types of RNN

    • many-to-many

    • many-to-one

    • one-to-one

    • one-to-many

  • Vanishing Gradient in RNN

  • Gated Recurrent Unit(GRU) Layers

  • Long short term memory (LSTM) Layers

  • Bi-directional RNN

  • Deep RNN

  • Word Embeddings

  • Learning Word Embeddings

    • Word2Vec

    • Negative Sampling

    • GloVe

  • Application using Word Embeddings

    • Sentiment Classification

    • Debiasing Word Embeddings

  • Various Sequence to Sequence Architecture

    • Beam Search

    • Bleu Score

    • Attention Model

Machine Learning

Stanford Online| Oct 2020

This course teaches about the concepts applied in machine learning.

Tools Learnt

  • MATLAB

Skills Developed:

  • Programming Fundamentals

  • Supervised Learning

    • Linear Regression

    • Logistic Regression

  • Unsupervised Learning

    • K-means algorithm

    • Elbow method

  • Neural Networks

    • Forward Propagation

    • Backward Propagation

  • Support Vector Machines

  • Model Performance Evaluation

    • Regularisation

  • Principal Components Analysis

  • Anomaly Detection

  • Recommender Systems

  • Photo OCR - Object Detection