AI & Data Science


Several projects related to Machine Learning and Data Science can be found on my Github repository. Highlights of some of these projects are below:

Facial Recognition System
Employed deep learning techniques for building facial recognition systems based on pertained HOG detector. Successfully developed facial recognition systems for the following:

  • Detecting faces in images
  • The facial detection system takes an image as input and detects all the faces in the image by drawing a bounding box around each face as shown below:

  • Identifying facial landmarks eg. nose, eye, lips, etc
  • The facial feature detection system identifies key facial features or landmarks of an image. It is able to identify facial features such as the chin, eye, eyebrow, nose lips etc. as shown below:

  • Identifying a face from face encodings
  • The facial recognition system encodes images (faces) of known people and then tries to identify whether an unknown image or face is found in the database of known image encodings or not. It takes an unknown image as input, checks to see if there is a match between the unknown face encoding and the known face encodings in the database. It prints the name of the image (person) if there is a match, otherwise it prints out "unknown".

  • Applying makeup on facial landmarks
  • The digital makeup system applies a digital makeup of choice to key facial landmarks such as lips, eyebrow etc. It takes an image of faces as input and loops through the faces in the image to apply a digital makeup on facial landmarks of choice as shown below:

  • Predicting the lookalike of an image from a database of images collection
  • The celebrity lookalike script implements a facial recognition system for predicting the lookalike of an input image (face) from a database of known images. For example, this project can be applied to checking your celebrity lookalike from a database of celebrities :)

    Anomaly/Attack Detection using Decision Tree Algorithm
    This project aims to apply machine learning techniques for detecting attacks/intrusions. More specifically, the objectives are:
    1. Machine learning can be achieved from historical data (experience)
    2. Machine learning algorithms can be applied to computer security
    3. Understanding the learning task of trying to detect attacks
    4. Understanding a decision-tree learning algorithm
    5. Better understanding of search and knowledge representation
    6. Evaluation of machine learning algorithms

    Business Case Study of Audiobooks sales
    The goal was to create a machine learning algorithm based on an audiobooks dataset that can predict if a customer will buy again from the Audiobook company.

    Use of logistic regression to predict customers behavior towards savings in a bank .
    Created a logistic regression model based on bank data. The data was based on the marketing campaign efforts of a Portuguese banking institution. The classification goal was to predict if the client will subscribe a term deposit (variable y).


    Software

    Projects related to Data Structures and Algorithms:

    Reverse Engineering of Malware/Software
    This consists of projects related to automated malware/binary analysis for the purposes of:
    1. Reverse Engineering
    2. Vulnerability discovery
    3. Optimization
    4. Code protection and recovery
    5. Malware Discovery

    Investigating Texts and Calls
    This project contains five tasks based on a sampled set of calls and texts exchanged during september 2016. I used python to analyze and answer questions about the text and calls contained in the dataset. Finally, I performed a runtime analysis of my solution in order to determine the efficiency.

    "Google-maps" Style Route Planner
    In this project, I used the A* search algorithm to implement a "Google-maps" style route planning algorithm.

    Show me the Data Structures Project
    This consist of a variety of projects related to different forms of data structures. The projects are divided into six sections which cover a variety of topics related to datat strucutres. Each project contains a clean and efficient answer in Python, as well as a text explanation of the efficiency of my code and design choices.

    Problems versus Algorithms Project
    This consists of solutions to seven (7) different projects related to algorithms. The problems cover a variety of topics related to the basic algorithms of the Udacity Data Structures and Algorithms Nanodegree program. Each solution contains a clean and efficient code in Python, as well as a text explanation of the efficiency of my code and design choices.

    End-to-End Deep Learning Project: Video Game Earnings Forecasting
    This is an end-to-end Supervised Machine Learning Project for predicting how much money to expect a future video game to earn based on historical data. The development process involved preprocessing of the video game data, deep learning modeling, model visualization in Tensorboard, and the deployment of model into production using Google Cloud ML-service. The error rate (mean squared error) of the model on the test data was less than 0.40.
    1. Objective: Develop a regression model using deep learning for the purpose of predicting the total earnings of a video game
    2. Tools and Packages: Tensorflow, Keras, Cloud Computing, Scikit-learn, Tensorboard, Google SDK, Google Cloud ML-Service, JSON.