This page show cases work done during my internship as well as the AI and Machine Learning Systems (in reverse chronological order) collaboratively built with my fellow team mates during my study in the Masters of Technology in Intelligent Systems in the National University of Singapore, Institute of System Science from 2019 to 2020.
Picture Credits: Wikipedia
Internship at the Chope Group
During this internship, I worked with Product & Engineering Teams and Senior Data Scientist on several projects and productionizing Machine Learning Services end-to-end.
- Increased lift of Search Recommendation system with optimized low-latency serving
- Implemented new features like Pre-search & Search Autocomplete API
- Designed and implemented Python-based RPA including: Document Extraction MVP, Search Benchmark Analysis and Batch Automation
- Designed and implemented sequence-aware Deep Recommender System MVP (user-item & item-item) including end-to-end ML Pipeline
- Tools: Python, TensorFlow, Keras, Spotlight (Pytorch-based), numpy, pandas, scikit-learn, prophet, Flask, Selenium, BeautifulSoup, Elasticsearch, Docker, Github, BigQuery, Google Cloud
Aerial filming with synchronized drones using Reinforcement Learning
The team sets out to explore Reinforcement Learning based approaches to tackle aerial filming using synchronized drones while tracking the target using Camera and GPS sensors.
- Deep Reinforcement Learning
- Object Detection
- Multi-modal sensor fusion
- Training using a Realistic Simulation Environment
- Tools: Python, Microsoft AirSim, TensorFlow, Keras, GeoPy, Docker and Google Cloud (for training)
Usage of multiple drones is necessary for aerial filming applications to ensure redundancy. However, this could inevitably contribute to higher risks of collisions, especially when the number of drones increases. Hence, this motivates us to explore various autonomous flight formation control methods that have the potential to enable multiple drones to effectively track a specific target at the same time. In this paper, we designed a model-free deep reinforcement learning algorithm, which is mainly based on the Deep Recurrent Q-Network concept, for the aforementioned purposes. The proposed algorithm was expanded into single and multi-agent types that enable multiple drones tracking while maintaining formation and preventing collision. The involved rewards in these approaches are two-dimensional in nature and are dependent on the communication system. Using Microsoft AirSim simulator, a virtual environment that includes four virtual drones was developed for experimental purposes. A comparison was made among various methods during the simulations, and the results concluded that the recurrent, single-agent model is the most effective method, being 33% more effective than its recurrent, multi-agent counterparts. The poor performance of the non-recurrent, single-agent baseline model also suggests that the recurrent elements in the network are essential to enable desirable multiple-drones flight.
Food and Workout Recommendation Intelligent Self-Learning System
In this project, the team proposed an Intelligent Self-Learning System that recommends to the user a highly personalized daily eating and exercise plan which keeps the calories in check and maximizes the user’s happiness from food consumption. The exercise plan is also being optimized such that it is just enough to burn away the input calories by an amount based on user’s weight loss goal.
- Reinforcement Learning
- Evolutionary Learning (including Genetic Algorithms, Particle Swarm Optimization and Differential Evolution)
- Tools: Python, PySwarms, numpy, scikit-learn
Property Hunter Intelligent System
There is a business opportunity in providing a more efficient and effective way for potential property buyers to search for, view and make an offer for the property they are interested to purchase. The team proposed an Intelligent System solution to automated three of the six activities identified in the Property Search and Make Offer process which are more tedious and repetitive, leaving only the decision-making task to the buyer.
- Business Case Formulation
- Business Process Analysis
- Robotics Process Automation
- Machine Learning, Deep Learning (Autoencoders, Random Forests)
- Price Forecasting
- Multiple Conversational Agents (Chatbots)
- Tools used: Python, TagUI, DialogFlow, Telegram, TensorFlow, scikit-learn, prophet
Exploring Feature Engineering and Various Machine Learning Models for Human Action Recognition on the UTD-MHAD
This group project sets out to explore sensor-based machine learning approaches to human activity recognition. Through studying the human anatomy and how the human body moves to perform various actions, feature engineering was performed. Several outcomes were achieved including models that outperformed benchmark in the original paper; a new graph model was conceptualized and implemented from scratch and Time Series to CNN Transfer Learning was also explored.
- Feature engineering on sensor data
- Multi-model sensor fusion
- Building and comparing Machine Learning and Deep Learning models including Random Forests, ConvLSTM and DenseNet (Transfer learning)
- Tools used: Python, scikit-learn, TensorFlow, fastai
Food Image Classification
With huge focus on food and growing emphasis on healthy lifestyle in the local market, there is great potential in applying Computer Vision Deep Learning techniques to food classification. In this project, the team showcases the motivation behind the project and the effectiveness of Image Classification with Convolutional Neural Networks and its variants.
The team also strives to share with the reader the team’s journey to develop highly effective Deep Learning vision models while overcoming challenges like overfitting and training deep models by applying best practices. The team would also like to share empirical nuggets of wisdom gained from this journey when implementing various network architecture from scratch and techniques employed.
- Computer Vision (Multi-class Image Classification)
- Data Collection
- Building and comparing multiple CNN architectures
- Investigation into model improvements by progressively introducing more sophisticated techniques including Batch Normalization, different initializers, batch size and optimizers.
- Tools used: Python, TensorFlow, Keras
The team sets out to apply data processing & Machine Learning techniques to detect Epilepsy and subsequently multi-class classification using the Epileptic Seizure Recognition data set studied by Andrzejak et al and provided to the UCI Machine Learning Repository by Wu et el.
- Comparison of different Machine Learning models including Logistic Regression, XGBoost and Multi-layer Perceptrons
- Binary and Multi-class Classification
- Tools used: Python, scikit-learn
Conversational Agent Project
In this project, the team aims to design and train a chatbot based on Google Dialogflow to automatically handle users’ general enquiries about Institute of System Sciences (ISS) at National University of Singapore (NUS). The main objectives are to increase the efficiency of information retrieval and to provide more human-like conversational experiences.
- Design and Implemmentation of Conversational Agents (Chatbots)
- Tools used: Python, DialogFlow
Nurse Roster Optimization
An important aspect of hospital operations in Singapore is the effective scheduling of nurses in various wards, which is vital for the hospitals’ patients to receive timely care from the nurses with the necessary skill sets. However, the scheduling of the nurses’ roster is very time-consuming and challenging due to the need to balance the intensive demands of healthcare and the well-being of nurses. In addition, due to the dynamic nature of the workload and unforeseen circumstances, rescheduling is also very common.
The team project focuses on taking the chore out of the painstaking process of scheduling with the objective of reducing the time taken to achieve the best possible schedule in a highly repeatable manner.
- Constraint solving
- Tools used: KIE Optaplanner, SpringBoot
Trustworthiness Validation Solution – Merchant Onboarding
The aim of the group project is to deliver a light-weight, low-cost but highly efficient background screening web services for small and medium companies to facilitate fast, frictionless and digital-centric onboarding experiences for their users. To better achieve this objective, we also employed machine reasoning methods like rule based reasoning and certainty factors to accelerate screening processes and to improve risk evaluation accuracy.
- Machine Reasoning
- Business Process Management
- Tools used: Django, KIE jBPM