Rahul Chatterjee

Logo

Resume | LinkedIn | GitHub

Self-motivated data science enthusiast, passionate about applying various machine learning algorithms to solve real-world problems.

I am currently working as a graduate research assistant in Bio signals and Systems Analysis Lab, McGill University. I am also an active member of Neuromorph (Medical Device based Startup).

Portfolio


Big Data & Distributed Systems

Semantic Segmentation using AWS Sagemaker

Open Notebook

In this project, I built an object detector from the Single Shot Detector(SSD) algorithm. Finally, trained and deployed the model using Amazon Sagemaker to localize faces of dogs and cats from the IIIT-Oxford Pets Dataset.




Natural language processing (NLP)

Tweet Emotion Recognition with TensorFlow

Open Notebook

This is a multi class classification problem using a tweet emotion dataset to learn to recognize 6 different emotions ('sadness, 'surprise', 'love', 'anger', 'fear', 'joy) in tweets. A tokenizer is implemented in Tensorflow to perform padding and truncating sequences from tweets. The deep learning model includes Bidirectional long-short term memory(Bidirectional LSTM) and is also implemented in TensorFlow.




Exploratory Data Analysis

Geocoding and Analyzing San Francisco Building Permit Data (Jan 2021)

View on GitHub

In this project, I explored and analyzed more than seven years of the City of San Francisco's building permit data and used the API OpenStreetMap to find the geo coordinates of buildings. After creating a new clean dataset that includes geo coordinates, I used Tableau to visualize and analyze the dataset.




Hyper Parameter Optimization in Artificial Neural Network (ANN) using MNIST Data from sklearn (Jan 2021)

Run in Google Colab

In this project, I implemented different hyperparameter tuning methods (e.g. Grid search, Random search, Hyperband, Bayesian Optimization with Gaussian Processes (BO-GP)) to achieve the optimized set of hyperparameters for the ANN architecture.

Time Series Analysis

Stock Price Prediction of Apple Inc. Using Recurrent Neural Network (Dec 2021)

Open Notebook

The project is about prediction of stock price using deep learning. The dataset consists of Open, High, Low and Closing Prices of Apple Inc. stocks from 3rd january 2011 to 13th August 2021. Two sequential LSTM layers have been combined together and a dense layer is used to build the RNN model using Keras deep learning library. Since this is a regression task, 'linear' activation has been used in final layer.




Deep Convolutional Model to Study Brain-stimulation Induced Features from Human EEG Data (May - Aug 2019)

View on GitHub

In this project, I built a Convolutional Neural network-based framework in PyTorch to identify brain stimulation-induced EEG features. EEG data were collected from 30 subjects with 5 different conditions: sham/20Hz/70Hz/individual β/individual γ tACS brain stimulation. [Ref: "Deep Semantic Architecture with discriminative feature visualization for neuroimage analysis", Ghosh A. et al. 2018.




Software-hardware Interface for Synchronization of EEG and Force sensor Devices (May - Aug 2019)

View on GitHub

In this project, I designed the software-hardware interface to synchronize the EEG device with the force sensor and also developed experimental tasks to study motor learning characteristics.




Predict Transient Spikes in Time Series Data using Time-delay Embedded (TDE) Hidden Markov Model (Sep 2020 - Present)

View on GitHub Open Research Poster

As part of my Master’s project, I designed a Time-Delay Embedded (TDE) Hidden Markov model to detect transient bursts from the beta frequency range (13 - 30 Hz) of MEG signal. In this study, I have used morlet wavelet transform to extract beta oscillatory envelopes from the raw MEG signal. Also, I am currently developing a Machine learning (ML) pipeline to classify MEG/EEG signal into ’burst’ states in real-time and the results will be further used to design a closed-loop neurofeedback system.





Supervised-learning-based Classification of EEG Signals to Predict Mental States (May - Jun 2018)

View on GitHub

This project is about mental state classification of human subjects using single channel EEG data. EEG data from 5 subjects were collected during a horror movie, a comedy movie clip and during a mental task. In this study, I have used different supervised machine learning algorithms (such as KNN, SVM, LDA) and studied their performance (precision, recall and F1 score) in classifying different mental states.




Removing Artificial Noise from Acoustic Cardiac Signal (Dec - Jan 2021)

View on GitHub

In this project, I used digital signal processing methods to remove artificially induced artifacts from simulated cardiac rhythms.




Network Analysis

Community Ranking using Social Network Analysis (Sep 2017 - Apr 2018)

View on GitHub

In this project, I used the k-clique algorithm to partition the network into communities. The network was formed using Facebook data, collected from survey participants using the Facebook app. The dataset includes node features (profiles), circles, and ego networks. Community ranking was obtained based on the following methods: Method-1: No of social active nodes present in the community. Method-2: On the basis of the value of the function W(m) of nodes present in the community. W(m)=0.5A1(m)+0.5A2(m), where A1(m) is the average number of posts posted per week by user m and A2(m) is the average number of shares plus the number of comments plus the number of likes for each of his posts.