Course Catalog
Machine Learning for Problem Solving
95-828
Units: 12
Description
"95-828 Machine Learning for Problem Solving'' explores how machine learning techniques can be leveraged to address practical challenges in various domains. From predicting outcomes to optimizing decisions, this course focuses on the entire lifecycle of using machine learning to solve real-world problems. A key emphasis is on understanding both the mathematical foundations and practical applications, enabling students to not only build machine learning models but also interpret their results and integrate them into actionable strategies. By working with structured and semi-structured datasets, students will learn to frame problem-solving tasks as machine learning pipelines.
Learning Outcomes
Throughout the course, students will engage with a range of machine learning methods, from classical models like linear regression, logistic regression, and support vector machines, to more advanced approaches, such as deep generative models. In addition to learning algorithmic techniques, the course also covers important considerations such as model evaluation, handling bias and variance tradeoffs, and incorporating domain knowledge into model design. Hands-on programming in Python, utilizing tools like scikit-learn and PyTorch, will be an integral part of the learning experience. While students are encouraged to use modern tools like large language models (e.g., ChatGPT) to deepen their understanding and tackle challenges, their use is strictly prohibited for homework assignments and exams.
Prerequisites Description
Students enrolling in this course are expected to have a good understanding in basic probability and statistics, linear algebra, and calculus, as these concepts underpin many of the machine learning techniques covered in this course. Familiarity with programming, particularly in Python, is essential, as the course involves hands-on implementation of algorithms and data analysis using libraries like scikit-learn and PyTorch. Prior experience with basic data preprocessing and visualization tools (e.g., pandas, NumPy, matplotlib) will also be beneficial. While no prior experience in machine learning is required, a willingness to engage with mathematical concepts and apply them to real-world problems is crucial for success in this course.