Education

Fall semesters: second-year graduate-level course in machine learning.

Spring 2023: second-year graduate course with industry proposed team projects focused on Computing and Data Science for Soft Materials Innovation (co-teaching with lead instructor Prof. Arthi Jayaraman)

Spring 2023: In development: a 300-level undergraduate course in geospatial data science (co-teaching with Prof. Jing Gao and Prof. Gregory Dobler

Spring 2022–: NRT-MIDAS NSF funded research traineeship, serving as Core Faculty and secondary advisor for trainees

Spring 2020, 2021, 2022: 300-level undergraduate course in signal processing and linear system analysis

Summer 2021: Independent study on adaptive filters

Spring 2021: Graduate Data Science Community Hour during Spring 2020

Graduate Course

Large-Scale Machine Learning ELEG/FSAN 817

Course Description: Introduction to the analysis and processing of massive high-dimensional data. Massive data sets generally involve growth not only in the number of individuals represented but also in the number of descriptive parameters of the individuals, leading to exponential growth in the number of hypothesis considered. Approaches to address these problems exploit concepts from statistics and machine learning.

Offered: Fall 2019, Fall 2020, Fall 2021, Fall 2022

The course serves as a capstone course in machine learning for graduate students, with the goal of readying students for machine learning and data science research. Computational and statistical scaling of machine learning is discussed from both theoretical and practical perspectives. The formative assessments provide exercise in key aspects of machine learning research: problem formulation, critical reading of literature, algorithm implementation, abstract writing, experimental design, and peer review. Summative assessment is based on a mid-term exam and final project.

2021 hyrid (in person/online synchronous) course enrollment: There were 9 students enrolled: ECE (2 Ph.D. | 4+1 B.S./M.S.), CS (5 Ph.D.), Bioinformatics Data Science (1 Ph.D.).

2020 online synchronous course enrollment: There were 17 students enrolled: ECE (9 Ph.D. / 2 M.S.), FSAN (3 Ph.D.), Computer Science (1 Ph.D.), and Physics and Astronomy (1 Ph.D.). One additional ECE Ph.D. student audited.

2019 course enrollment: There were 13 students enrolled: ECE (3 Ph.D. / 2 M.S. / 1 B.S./M.S.), Computer Science (5 Ph.D.), Economics (1 Ph.D.), Civil & Environmental Eng. (1 Ph.D., auditing).

Anonymous feedback from 2021 course evaluations:

Anonymous feedback from 2020 course evaluations:

Anonymous feedback from 2019 course evaluations:

Undergraduate Courses

Signals and Systems ELEG 305

This course examines continuous and discrete-time signals and systems at the introductory level.

Course description: Introduction to signals and systems, with an emphasis on time and frequency characterization of linear, time-invariant systems. Covers discrete and continuous time systems, sampling, and Fourier, Laplace, and Z transforms.

Offered: Spring 2020, Spring 2021, Spring 2022

Core requirement in the following programs:

Technical elective:

Prerequisite for subsequent courses:

Honors Discussion Section: Students registered in Honors for this class will be involved in an additional discussion section, which introduces content beyond the general class: specifically, non-linear, adaptive, and random systems. They will also be required to complete a semester long project that reflects an application of such systems.

Unsolicited Feedback from 2021 Honors section:

Unsolicited Feedback from 2020 section:

Independent Study ELEG 466

“Adaptive Filtering as an Introduction to Machine Learning”

Offered: Summer 2021

Course description: Introduction to adaptive filter theory and application. Students will create a technical report that details the theory, implementation, and computational experiments with the application of adaptive filtering. Topics to be covered include review of delay lines, z-transform, multivariate signal processing, Gaussian white noise, correlation matrices, whitening transforms, least squares, convex optimization, Wiener filter, stochastic gradient descent, least mean squares (LMS), NLMS, common spatial patterns, and various types of recurrent memory. A comprehensive technical report with equations and figures will be typeset in Latex. The report will detail the problem formulations, equations, and vector graphics of block diagrams, plots of results. Software implementations will be made in MATLAB/Octave, Julia, python/Numpy, or python/Pytorch. Synthetic experiments will be conducted for noise cancellation, channel estimation, and machine learning.

Learning outcomes: While students typically learn theory and fundamentals of signal processing and filtering in ELEG305 “Signals and Systems” and probability theory and statistics related to signals in ELEG310, due to time constraints and curriculum design, students rarely have the opportunity to learn and apply adaptive filter theory that combines filtering, linear algebra, optimization, and statistics together. This combination is the foundation of machine learning theory and algorithms. This independent study will attempt to fill the gap in the current curriculum areas in theory and practice. A combination of synthetic data and real-world projects will be explored by students to master these concepts. Students will practice their understanding by describing the formulations and results (equation and paper typesetting, block diagrams, data visualization and presentation) in their own words as well as implementing and testing software for adaptive filtering and machine learning. In summary the students will learn the foundations and techniques of machine learning: linear and non-linear filtering, supervised learning, least squares, optimization, stochastic gradient descent, batch normalization, and experimental design (training, validation, and testing).

Experience: The course will solidify knowledge learned in other courses and provide the student with a diverse and broad understanding of adaptive filtering, and an introduction to machine learning. The course project will require tools learned in other academic classes (signal and systems, linear algebra, calculus, probability, and statistics) and will help the student in future classes (communication systems, machine learning, control theory) as well as research.

Expectations: Students will be required to complete a technical report which will be a culmination of most of the topics covered in class. Weekly revised versions of the technical report must be submitted to document learning progress until the end of the course. Each of these weekly submissions, will require an executive summary that overviews the specific learning activities, progress in understanding and experiments, obstacles, and interesting insights or useful skills that have been learned. Students can work in groups and collaborate in a civil and equal manner.