Machine Learning

Summary

After graduating as a mechanical engineer, my interest in machine learning outgrew my passion for machines. In 2 years, I have done several projects in variety of fields to display my skills in machine learning.

Dynamic Risk Assessment System

Github:

https://github.com/arkaan27/Dynamic-Risk-Asssesment-System

Project Description:

With an assumption that we have a Machine Learning model in production, the project aims to check in regular intervals (per crontab configuration) for new datasets and acts upon any new data that is saved. The model is tested for checking whether model drift, re-train if needed and new reporting of the model performance, data quality and timing of execution is saved to local folder.

Tools & Libraries:

  • Flask for deploying the application system to the web.

  • Scikit-Learn for calculating the metrics and using standard models

  • Pandas and Numpy for EDA processing

  • Cronjob for automating daily jobs

  • Subprocesses for extracting command lines outputs

  • Scipy for calculating statistics of datasets

  • Timeit for calculating the execution time of different modules/scripts in the project

  • Pickle for saving and loading machine learning models

Deploying ML pipeline with Heroku and FAST API

Github:

https://github.com/arkaan27/Deploying-ML-Pipeline-using-REST-API

Project Description:


Tools & Libraries:

  • AWS S3 for storing datasets and models that are being used.

  • DVC for data- version-controlling the datasets and the models

  • Git for code versioning and tracking commit messages

  • GitHub Actions & workflow for creating virtual environment, and implimenting Continious Integration (CI)

  • Heroku for Continious deployment (CD)

  • FAST API for implimenting applications functions over the web.

  • Matplotlib & Seaborn for Data visualisation

  • Pandas and Numpy for EDA & processing

  • Pytest for Local and Live API Testing

ML pipeline NYC rental sales Airbnb

Github:

https://github.com/arkaan27/ML_Pipeline_NYC_Rental_Sales_Prediction_Airbnb

Project Description:

In this project, we will be deploying an end to end property rental price predictions using scikit-learn, mlflow and weights and biases. The pipeline estimates the typical price of a given property based on the price of similar properties. The focus on the project is on the MLops process such as the tracking of experiments, pipeline artifacts and the deployment of the inference pipeline rather than on the EDA and modelling.

Tools & Libraries:

  • MLflow for the pipeline's different components' orchestration and the random forest model's artifact creations

  • Weights & Biases for the tracking and versioning all of the rental prices prediction pipelines (e.g datasets, charts, notebooks, hyper parameters) as well as experiments

  • Conda for each pipeline component's python dependencies and packages

  • Hydra for the component's configuration management

  • Scikit-Learn for the modelling

  • Pytest for the validation of the cleaned dataset

  • Github for the code versioning and pipeline release management.

  • Matplotlib & Seaborn for Data visualisation

  • Pandas and Numpy for EDA & processing

ML Pipeline representation

Prediction Churn

Github:

https://github.com/arkaan27/Prediction_Churn

Project Description:

Churn prediction model for bank data. This project reads a csv file bank_data.csv and performs exploratory data analysis in modular manner. The code is production level ready for deployment as it is fully tested and logged. This code has followed PEP8 compliance as required.

Language:

  • Python

Tools & Libraries:

  • Conda

  • Pandas

  • Numpy

  • Scipy

  • Scikit-learn

  • Matplotlib

  • Seaborn

  • Logger

  • Pylint

  • Autopep8

Facial Recognition

Github:

https://github.com/arkaan27/Face_recognition

Project Description:

Facial Recognition model, using the Siamese Network and Triplet loss function to take minimal pictures of the user as data input and achieve a high accuracy.

Language:

  • Python

Tools & Libraries:

  • Tensorflow

  • Numpy

  • Keras

  • CV2

  • Inception_blocks_v2

Autonomous Car Detection

Github:

https://github.com/arkaan27/Autonomous_car_detection

Project Description:

An autonomous car detection model for object detection. Recognises 82 different objects as it is pre-trained. User for assisting in driving autonomously with combination of sensor fusion.

Language:

  • Python

Tools & Libraries:

  • Tensorflow

  • Numpy

  • Keras

  • Matplotlib

  • Scipy

  • YOLO algorithm

Cat-Classifier Using Logistic Regression

Github:

https://github.com/arkaan27/cat-classifer-using-logistic-regression

Project Description:

Basic Logistic regression model for classifying cat pictures.

Language:

  • Python

Tools & Libraries

  • Matplotlib

  • Numpy

  • Scipy

Neural-Style Transfer

Github:

https://github.com/arkaan27/Neural_Style_Transfer

Project Description:

Uses Inception v4 network architecture to allow neural-style transfer of 2 images. This model can be used by artists to test their creativity, combining ancient pictures to the recent pictures they produce.

Language

  • Python

Tools & Libraries:

  • Tensorflow

  • Scipy

  • Matplotlib

  • Numpy