Research

CS 189/289A

Introduction to Machine Learning (UC Berkeley)

I am currently the head TA for CS 189/289A: Introduction to Machine Learning, which is being taught by Prof. Narges Norouzi and Prof. Joseph Gonzalez. This course aims to provide a rigorous foundation in the mathematics, algorithms, and concepts of machine learning, prepare students for advanced coursework and research in artificial intelligence, and enable students to implement machine learning algorithms and apply them to real-world problems. I am working with 18 other TAs and staff members to redesign the Intro to ML curriculum, develop brand new content, and facilitate the course. I lead the development of content for our discussion sections to reinforce course concepts and provide hands-on practice with course material. All of the discussion content will be made publicly available in our Discussions folder. We also make much of the other course content publicly available on our course website and are actively working on compiling course materials from previous iterations of the course at the CS189 index page.


In the Spring of 2025, I was also the head TA for CS 189/289A: Introduction to Machine Learning, which was taught by Prof. Jonathan Shewchuk. This class introduces algorithms for learning, covering classification, regression, density estimation, dimensionality reduction, and clustering. I led 28 other TAs and staff members to teach a course of around 700 machine learning students. I organized the final project for graduate students and developed discussion materials that are available online. Much of the other content we developed during this semester is publicly available on our course website.


I also served as TA for CS 189/289A: Introduction to Machine Learning in the Spring of 2023 when it again was taught by Prof. Jonathan Shewchuk. During this semester, I also developed discussion materials that are available online. I also put together notes on Machine Learning and Probability & Random Processes that many students have found helpful. Much of the other content we developed during this semester is publicly available on our course website.

EECS 127/227AT

Optimization Models in Engineering (UC Berkeley)

In the Spring of 2022, I served as a TA for EECS 127/227AT: Optimization Models in Engineering, which was taught by Prof. Thomas Courtade. This course offers an introduction to optimization models and their applications, ranging from machine learning and statistics to decision-making and control, with emphasis on numerically tractable problems, such as linear or constrained least-squares optimization. The course covers two main topics: practical linear algebra and convex optimization. During this semester, I led discussion sections using the material provided here. I also put together notes on Convex Optimization.

EE 221A

Linear System Theory (UC Berkeley)

In the Fall of 2021, I served as a TA for EE 221A: Linear System Theory, which was taught by Prof. Shankar Sastry. This is a graduate course that provides an introduction to the modern state space theory of linear systems and control. As a TA, I led a discussion section focused on building problem-solving skills. I also put together notes on Linear Systems, Linear Algebra, and the Fundamental Math/Notation used in my other notes.

LearnSTEM

High School STEM Research Program (LearnSTEM)

I have had the privilege of working with six high school students through the LearnSTEM program on topics spanning circuit design and analysis, machine learning, data science, robotics, and computer vision. Below are some of the curricula I put together for this program (more coming soon!):
    * The Design and Analysis of Electric Circuits
    * An Introduction to Machine Learning (version 1)
    * An Introduction to Machine Learning (version 2)
    * An Introduction to Machine Learning (version 3)

I have mentored three high school students on research projects focused on robotics. Below are some of their research papers (more coming soon!):
    * Lightweight Vision: Object Detection & Localization for Resource-Constrained Devices