Introduction to Machine Learning

Course
Identifier: 
COM S 4740

Last Updated: Fall 2024

  1. Credits and contact hours: 3 credits, 4 contact hours
  2. Instructor’s or course coordinator’s name: Bowen Weng
  3. Text book, title, author, and year: None required
  4. Other supplemental materialsMachine Learning: A Probabilistic Perspective, Kevin Murphy; Approaching (Almost) Any Machine Learning Problem, Matthew May; online documentation of scikit-learn and PyTorch

Specific course information

  1. Brief description of the content of the course: This class will introduce basic machine learning models and concepts, such as linear classifiers, support vector machines (SVMs), decision trees and random forests, neural networks, and deep learning. While most concepts will be on supervised learning, unsupervised learning and reinforcement learning will also be briefly covered. This class will balance theoretical foundations and hands-on experience. Homework will include mathematical derivations, proofs and calculation, both analytical and numerical. Students are expected to write programs to implement the aforementioned models and use existing APIs (e.g., scikit-learn, TensorFlow, and PyTorch) to build projects.
  2. Prerequisites or co-requisites: COM S 3110, STAT 3050 or STAT 3300 or STAT 3410 or STAT 3470, MATH 1650, ENGL 2500
  3. Required, elective, or selected elective? Selected Elective

Specific goals for the course

  1. Specific outcomes of instruction:
  • Understand what Machine learning is
  • Understand the mathematics and foundations behind standard models, algorithms, and methods
  • Gain experience using standard software tools

Brief list of topics to be covered

  • Review of probability theory
  • Bayesian decision theory
  • Maximum-Likelihood and Bayesian parameter estimation
  • Evaluation of classifiers
  • Naïve Bays Classifier
  • Nearest neighbor methods
  • Linear models
  • Decision trees
  • Neural networks
  • Support vector machines
  • Bayesian networks
  • Ensemble classifiers
  • Unsupervised learning: Clustering
  • Student project presentations