Course Catalog
Machine Learning for Problem Solving
95-828
Units: 12
Description
Machine Learning (ML) is centered around automated methods that improve their own performance through learning patterns in data, and then using the uncovered patterns to predict the future and make decisions. ML is heavily used in a wide variety of domains such as business, finance, healthcare, security, etc. for problems including display advertising, fraud detection, disease diagnosis and treatment, face/speech recognition, automated navigation, to name a few.
"If I had an hour to solve a problem I'd spend 55 minutes thinking about the problem and 5 minutes thinking about solutions." -- Albert Einstein
"A problem well put is half solved." -- John Dewey
This course provides graduate students with a comprehensive and practical grounding in modern machine learning. The goal is to build a strong intuitive understanding of machine learning concepts, models, and workflows; anchored in real-world applications rather than abstract theory.
Through hands-on assignments, students will gain practical experience in recognizing, formulating, and solving machine learning problems “in the wild.” The emphasis is on understanding and applying the end-to-end machine learning process (data preparation, model development, evaluation) preparing students to apply ML effectively in research or industry settings.
"All models are wrong, but some models are useful." -- George Box
Because there is no universally best model, this course surveys a wide range of machine learning methods and learning paradigms, each offering distinct tradeoffs in speed, accuracy, and interpretability. The curriculum progresses from classical supervised learning—covering linear and logistic regression, decision trees, ensemble methods, kernel, and nonparametric models—to modern deep learning architectures, including neural networks, CNNs, RNNs, LSTMs, transformers, and diffusion models. The course also explores unsupervised learning techniques such as clustering, anomaly detection, and dimensionality reduction, and concludes with machine learning on specialized data modalities, including tabular, graph, temporal, text, and image data.
Learning Outcomes
By the end of this course, students will be able to:
-
Understand the core concepts, methodologies, and tools underlying both classical and modern machine learning.
-
Recognize and formulate machine learning tasks across diverse real-world problems and data modalities (tabular, graph, temporal, text, and image).
-
Compare and contrast models and learning paradigms—from linear and nonparametric methods to deep learning architectures—considering their speed, accuracy, and interpretability tradeoffs.
-
Apply best practices in data preprocessing, model selection, evaluation, and validation to ensure reliable and reproducible results.
-
Gain hands-on experience implementing machine learning models in Python and Pytorch, including deep learning frameworks, and applying them to complex, real-world datasets.
Prerequisites Description
This course does not assume prior experience with machine learning theory or practice. However, students are expected to have the following background:
-
A basic understanding of probability and statistics
-
A working knowledge of linear algebra
-
Basic programming skills, including familiarity with Python
-
Experience using NumPy, pandas, and matplotlib for data manipulation and visualization