Machine learning is a set of algorithms in the discipline of AI that enable various systems to learn and improve from data and experience without being explicitly given a set of rules or formulas. Machine learning can seem like magic sometimes, but a goal in this course is to learn that machine learning is not magic but, rather, is based on very rigorous mathematical and engineering principles with a vast number of applications.
This course will start with requisite mathematical backgrounds (probability theory, statistics, some basic linear algebra, etc.). Then we will discuss unsupervised ML models, namely linear regression/classification models, neural network models, and kernel machine models. Finally, we will pivot to unsupervised learning and discuss unsupervised ML algorithms, such as graphical models, K-clustering algorithm, EM (Expectation Maximization) algorithm, autoencoders, PCA/ICA, etc. Programming using Python and ML software packages (PyTorch, Tensorflow, etc.) will be used to supplement your understanding of the mathematics and algorithms covered in this course and to develop large-scale applications of ML algorithms.
The topics covered in this course are relevant for building, understanding, and analyzing a wide range of current state-of-the-art machine learning models and lay a strong theoretical foundation for understanding how the ideas of machine learning are used in fields such as economics, finance, policy-making, and healthcare, just to name a few.
This course is open only to students enrolled in the online MEng in Computer Engineering program. This course cannot be used to satisfy any AB, BE, MEM, MS, PhD, or residential MEng degree requirements.