Graduate Artificial Intelligence
This course is targeted at graduate students who are interested in learning about artificial intelligence. The focus is on modern AI techniques. The course also covers techniques from the intersection of AI and other disciplines such as integer programming, continuous optimization, and game theory. The course content is profiled so as to not have too much overlap with narrower specialized AI courses offered at CMU.
There are no formal pre-requisites for the course, but students should have previous programming experience (programming assignments will be given in Python), as well as some general CS background. Please see the instructors if you are unsure whether your background is suitable for the course.
|J. Zico Kolterfirstname.lastname@example.org||By appointment||GHC 7115|
|Nihar B. Shahemail@example.com||By appointment||GHC 8211|
|Chun Kai Lingfirstname.lastname@example.org||Wednesdays 6-7pm||GHC 6501. See exceptions below.|
|Ivan Stelmakhemail@example.com||Tuesdays 6-7pm||GHC 8115|
|Junjue Wangfirstname.lastname@example.org||Mondays 5-6pm||PH A21A. See exceptions below.|
To schedule an appointment with Prof. Kolter or Prof. Shah, please send an email with your availability, as well as the topics you would like to discuss (e.g., specific lectures or project content).
Exceptions for Chun Kai: (April 24 @ GHC 8115. No office hours on Jan 30th)
Exceptions for Junjue: (No office hours on Jan 28th and Feb 4th)
You may also reach out for discussion/questions on our course Piazza page.
Lecture videos from 2017 are available at this link.
|1/30||Linear Programming I: Basics video 1 video 2||Kolter|
|2/4||Linear Programming II: Duality video||Kolter|
|2/6||Integer Programming I: Theory||Kolter|
|2/11||Integer Programming II: Applications||Shah||notes|
|2/13||Machine Learning I: Regression and Classification||Shah||notes|
|2/18||Machine Learning II: Nonlinear Methods||Kolter||slides|
|2/20||Computational Learning Theory||Shah||notes|
|2/25||Deep Learning I: Neural Networks||Kolter||slides|
|2/27||Deep Learning II: Backpropagation||Kolter||slides|
|3/5||Deep Learning III: Convolutional and Recurrent Models||Kolter||slides|
|3/18||Probabilistic Modeling I: Basics of probability||Kolter||slides|
|3/20||Probabilistic Modeling II: Probabilistic Inference||Kolter||slides|
|3/25||Probabilistic Modeling III: MCMC||Kolter||slides|
|3/27||Adversarial Attacks in Machine Learning||Kolter||slides|
|4/1||Game Theory I: Basics||Shah||Notes on Diderot|
|4/3||Game Theory II: Stackelberg and Security||Shah||Notes on Diderot|
|4/8||Game Theory III: Zero-sum and Extensive Form||Shah||Notes on Diderot|
|4/10||Game Theory IV: Minimax Theorem Via No-Regret Learning||Shah||Notes on Diderot|
|4/15||Social Choice I: Basics||Shah||Notes on Diderot|
|4/17||Social Choice II: Manipulation||Shah||Notes on Diderot|
|4/22||Social Choice III: Statistical Approaches||Shah||Ranking models, Concentration inequalities|
|4/24||Humans and AI I: Fairness||Shah|
|4/29||Humans and AI II: An application that involves fairness, social choice, game theory, ML, optimization||Shah|
There will be four assignments: they will involve both written answers and programming assignments. Written questions will involve working through algorithms presented in the class, deriving and proving mathematical results, and critically analyzing the material presented in class. Programming assignments will involve writing code in Python to implement various algorithms presented in class.
Please submit your assignments on Diderot. Scan handwritten parts of your homework, if any, and include them in your autolab submission.
Solutions will be released after the deadline and late dates.
|Homework||TeX source||Files||Due Dates|
|Homework 1||tikz_template.tex||HW1-release.zip||February 14, 2019|
|Homework 2||HW2-release.zip||February 28, 2019|
|Homework 3||HW3-release.zip||April 4, 2019|
|Homework 4||HW4-release.zip||April 25, 2019|
Homework is due on Diderot by the posted deadline. No credit will be given for assignments submitted more than 2 days (48 hours) after the posted deadline.
Each homework is worth 10% of your final grade.
You have 5 late days to use throughout the semester. Course submission systems will track late days, but you should be sure to track these yourself, as no credit will be given if you run out of late days.
You can discuss both the programming and written portions with other students, but all final submitted work (code and writeups) must be done entirely on your own, without looking at any notes generated during group discussions. Be sure to mention your collaborators' names and Andrew IDs in your writeup.
If you reference any code or sources other than the materials provided on the course website or the textbook, you must mention the source.
The course project involves carrying out and presenting novel research in AI. Projects are done in groups of 2-3 students. Naturally, the number of team members will be taken into account during grading (i.e., a larger team would be expected to have a larger project).