Rohan Saha

Using machine learning to understand brains.

About Me

Hi, I am Rohan! I am a master's student at the University of Alberta. My area of research is using machine learning models to understand how the human brain processess information.
I am supervised by Dr. Alona Fyshe
My goal is to contribute to the scientific community for the betterment of the world.

Apart from research, here are some hobbies that I engage myself in.

  • Reading non-fiction and science books - I am currently reading The Book of Why by Judea Pearl
  • Fitness and bodybuilding are one of my priorities for my well-being. I am currently following this program.
  • I also fancy baking. Recently, I baked banana bread for the holiday season. Yum!
  • I love to watch sci-fi movies. My favorites are Arrival and Interstellar.


I believe education should be accessible to everyone and thus I have created a medium page where I write articles on machine learning. I try to cover many topics starting from linear models to statistics with the simplest possible explanation. You can find all of my articles here. I also have some new article ideas upcoming!


I recently gave a talk at the Machines, Inference, & Algorithms (MIA) at the Broad Institute (MIT) on Decoding Word Meaning from Brain Imaging Data along with Dr. Alona Fyshe. Full talk here


Talk on Linear Models at Calgary Data Science Academy (CADASA) during the Machine Learning Bootcamp, November 2020. Full talk here.

Another talk where I talk about new features in Android 11 at the Android 11 meetup by Google Developers Group Edmonton. Full talk here


Project that I'm currently working on


The project uses machine learning to understand how early do the semantics of the words are acquired by the human brain. We read EEG data from children brains and train a machine learning algorithm on it. This is a decoding problem where we find the relationship between the EEG and the stimuli. We also use word embeddings from Word2Vec for the stimuli. We also use various optimization techniques along with statistical tests for significance testing.

Tools and Frameworks

  • Python
  • Scikit-Learn
  • Pandas, Numpy, Matplotlib
  • EEG

Technical skills and things I know about

I love programming. Here are some programming languages that I know.

  • Python - I use it almost everyday to work on my research and other machine learning projects.
  • Java - I use it sometimes when some app requires it.
  • C++ - Mostly for competitive coding.
  • C - I like C because it makes me appreciate programming.

Here are some frameworks I know.

  • Keras (for high-level deep learning)
  • Pytorch (for more machine and deep learning)
  • Basic python data science stack (numpy, pandas etc)
  • Basic web development


University of Alberta, Canada

Sept 2019 - Sept 2021

Master of Science in Computing Science

I am currently pursuing my master's degree with a GPA of 3.5/4.0. Here, I am working on improving my research abilities. My primary research area is in the intersection of machine learning, neuroscience, and natural language processing. Supervisor: Dr. Alona Fyshe.

Kalinga Institue of Industrial Technology, India

July 2015 - May 2019

Bachelor of Technology in Computer Science and Engineering

I completed my undergraduate degree with a GPA of 9.48/10.0. Here, I studied the foundations of computer science.

Work Experience

University of Alberta

Graduate Research Assistant Fellowship

Currently working as a research assistant at the University of Alberta, Computing Science department.

University of Alberta

Graduate Teaching Assistantship

I taught CMPUT-301 (Software Engineering) for terms Fall 2019 and Winter 2020 at the Computing Science department, University of Alberta.

Robert Bosch Engineering and Business Solutions, India

Software Engineer Intern

Six months internship working on a mixed reality project with Microsoft HoloLens. We developed a proof-of-concept application to visualize ambient radiation in the environment.

Endurance International Group, India

Software Engineer Intern

Two month internship where I worked on a payment collections interface. I used Ruby on Rails to upgrade the software to the latest framework version.


Computing Science Graduate Students' Association,
University of Alberta

June 2021 - May 2022

Vice President

Vice President at the CSGSA. Roles include assisting the president and other executives in making executive decisions along with organizing department wide events.

Computing Science Graduate Students' Association,
University of Alberta

June 2020 - May 2021

Academic Director

Volunteering as the Academic Director at the CSGSA. My roles and responsibilities include promoting academic opportunities for students, overseeing the buddy list program, and assigning office spaces to students.

Google Developers Group, Edmonton

December 2019 - Present

Technical Speaker

Technical speaker on various topics such as machine learning, python, firebase, and introductory android developement. I was also a session lead for a recent machine learning bootcamp where I covered linear models.

Mozilla Student Chapter, KIIT University, India

December 2017 - December 2018

Technical Speaker

I was a technical speaker and I taught deep learning, machine learning, and python to peers and undergraduate students. I also gave talks on machine learning at other institues.


Analysis of Evolutionary Program Synthesis for Card Games

This was a course project for CMPUT 659 - XAI in Games, University of Alberta. We implemented a evolutionary program synthesis approach with a domain specific language to generate the best set of rules for winning the game.

View Project

Comparing Classification models using Kepler Data

In this project, I compare various classification models on Kepler Data to find out whether a celestial body is a planet given various features and characteristics. This was a course project for CMPUT-566, Introduction to Machine Learning at University of Alberta.

View Project

Homonym Identification Using BERT

In this project, various unsupervised algorithms were assessed on their ability to cluster contextual embeddings from the BERT language model. Various linear and non-linear dimensionality reduction techniques were also used for visualizing the data.

View Project
More projects: and

Get in Touch