This tutorial examines the design, implementation, and analysis of machine learning algorithms. Machine Learning is a field that derives from Artificial Intelligence, Statistics, and others, and aims to develop algorithms that will improve a system’s performance. Improvement might involve acquiring new factual knowledge from data, learning to perform a new task, or learning to perform an old task more efficiently or effectively. This tutorial will cover examples of supervised learning algorithms (including Bayesian approaches, support vector machines, and neural networks — both deep and traditional), unsupervised learning algorithms (including k-means and expectation maximization), and possibly reinforcement learning algorithms (such as Q learning and temporal difference learning). It will also introduce methods for the evaluation of learning algorithms, as well as topics in computational learning theory and ethics.
Format: tutorial; Though this course will be offered remotely by the instructor, pairs of students on campus may choose to meet in person for their tutorial sessions. If so, a classroom will be scheduled for them by the instructor.
Grading: no pass/fail option,
no fifth course option
presentations, problem sets, programming exercises, empirical analyses of algorithms, critical analysis of current literature; the final two weeks are focused on a project of the student's design.
CSCI 136 and CSCI 256 or permission of instructor
Computer Science majors
This course heavily relies on discrete mathematics, calculus, and elementary statistics. Students will be proving theorems, among many other mathematically oriented assignments. Additionally, they will be programming, which involves analytical and logical thinking.
COGS Interdepartmental Electives