This course introduces students to artificial intelligence, providing the fundamental principles and essential techniques for analyzing and solving complex real-world problems. The material spans machine learning, neural networks, language modeling, intelligent search, reinforcement learning, and reasoning. By the end of the semester, students will have gained a broad set of tools and models that form the basis for AI applications and practices.
The course emphasizes both basic concepts relevant to AI and also the practical know-hows. Students will practice through mathematical and programming assignments to study AI, project proposal and final project presentations. The tentative list of topics includes:
Prerequisites: We will use various aspects of linear algebra and probability when needed during the course. When we talk about a specific concept, we will cover the ground up. We will use python as the main programming language when it comes to coding exercises. We will provide detailed instructions when a relevant tool is required as part of a homework problem.
There will be 6 homeworks, plus a take-home exam as part of the course work. In addition, we will do a course project that can be done in teams of students. We will provide you with detailed materials and case studies as part of the course project handouts.
Week 1, Sep 4: Course introduction
Course plan, foundation and history of Artificial Intelligence.
Week 2, Sep 8: Supervised learning I, Sep 11: Supervised learning II
Regression and classification, including examples of supervised learning tasks.
Linear classifiers.
Loss function, optimization, and robustness.
Week 3, Sep 15: Neural networks I, Sep 18: Neural networks II
Neural network architecture and learning algorithms.
Convolutional neural network.
Week 4, Sep 22: Neural networks III, Sep 25: Backpropagation and regularization
PyTorch implementations.
Backpropagation and regularization.
Week 5, Sep 29: Language modeling I, Oct 2: Language modeling II
Basic concepts of language modeling, including adaptation and prompting.
Next-word prediction
Week 6, Oct 6: Language modeling with PyTorch implementations, Oct 9: The naive Bayes classifier with an example in sentiment analysis
Training and adaptation with PyTorch implementations.
Naive Bayes classifier.
Logistic regression.
Week 7, Oct 16: Intelligent search I
Breadth-first search.
Depth-first search.
Uniform cost search.
Week 8, Oct 20: Intelligent search II
Informed search algorithms: greedy best-first search
A-star search.
You are responsible for keeping up with all announcements made in class and for all changes in the schedule that are posted on the Canvas website.
The grade will be based on the following:
Homeworks: 40%
Exam (take-home): 40%
In-class project presentations and participation: 20%
Textbooks for reference:
Artificial Intelligence: A Modern Approach, 4th US ed. Stuart Russell and Peter Norvig.