Duration: 12 weeks, 84 hours
Project will be written after course completion
Principles and Techniques
What is this course about?
What do web search, speech recognition, face recognition, machine translation, autonomous driving, and automatic scheduling have in common?
These are all complex real-world problems, and the goal of artificial intelligence (AI) is to tackle these with rigorous mathematical tools. In this course, you will learn the foundational principles that drive these applications and practice implementing some of these systems.
Specific topics include machine learning, search, game playing, Markov decision processes, constraint satisfaction, graphical models, and logic. The main goal of the course is to equip you with the tools to tackle new AI problems you might encounter in life.
This course is fast-paced and covers a lot of ground, so it is important that you have a solid foundation on both the theoretical and empirical fronts.
The final project provides an opportunity for you to use the tools from class to build something interesting of your choice. Projects may be done in groups. The project will be something that you work on throughout the course and we have set up some milestones to help you along the way.
Collaboration policy and honor code:
You are free to form study groups and discuss homeworks and projects.
Section: optimization, probability, Python
Section: dynamic programming (examples)
Section: deep reinforcement learning (advanced)
Section: AlphaGo (advanced)
Section: CSPs (review)
Section: variational autoencoders (advanced)
Section: semantic parsing (advanced)