Artificial Intelligence (CS221) - Lecture Notes
Welcome to CS221: Artificial Intelligence. This course is taught by Percy and Dorsa, with a diverse team of teaching assistants (TAs).
Course Overview
- Focus on artificial intelligence, both theoretical and applied aspects
- Topics covered will range from the history of AI to technical paradigms in AI like modeling, inference, and learning
- Students are encouraged to work on projects leveraging the skills and knowledge gained during the course
Introduction to Instructors and TAs
- Percy: One of the instructors, emphasized the importance of AI and its current relevance in society
- Dorsa: Co-teaching, specializes in robotics and robotic interactions
- Teaching Assistants (TAs): Introduced themselves with their interests, spanning natural language processing, machine learning, data mining, computer vision
Key Announcements
- Weekly sections to cover review and advanced topics (starts Thursday)
- Homework 1 is posted and due next Tuesday at 11:00 PM, submit via Gradescope
- Gradescope code to be posted on Piazza
History of AI
- Dartmouth Workshop (1956): Foundational meeting organized by John McCarthy; laid groundwork for AI
- Early optimism in AI with programs playing checkers, proving theorems, etc.
- First AI Winter due to over-promising and limited computational power
- 1970s-80s: Focus on knowledge-based systems with expert systems; second AI Winter due to manual effort and complexity
- Deep Learning (1943-Present): Renewed interest in neural networks and backpropagation leading to modern successes like AlphaGo
AI Paradigms
- AI as Agents: Focus on replicating human intelligence and capabilities
- Areas of interest include visual perception, motor skills, language, and learning from experience
- AI as Tools: Technology as a means to benefit society rather than replicating human intelligence
- Applications include computer vision for poverty prediction, energy-saving algorithms, and addressing biases and fairness in systems
Modeling, Inference, and Learning Paradigm
- Modeling: Simplifying real-world problems into mathematical models
- Example: Representing a city as a graph for navigation
- Inference: Asking questions about the model and solving problems mathematically
- Example: Finding the shortest path in a graph
- Learning: Fitting model parameters from data
- Example: Assigning costs to edges in a graph based on travel data
Course Topics
- Machine Learning: Building blocks of AI; focuses on transforming data into models
- Central tenet: Moving complexity from code to data
- Reflex Models: Simple models like linear classifiers and neural networks
- Instantaneous processing without foresight
- State-based Models: Handling planning and foresight in tasks
- Includes search problems, Markov Decision Processes (MDPs), and adversarial games
- Variable-based Models: Capturing dependencies among variables
- Includes constraint satisfaction problems and Bayesian networks
- Logic-based Models: High-level reasoning with diverse information
- Examples include systems understanding and answering questions based on logic
Course Logistics
- Prerequisites: Programming, discrete math, and probability
- Coursework: Eight homeworks, written and programming, covering specific applications
- One exam testing problem-solving and application of course material
- Final Project: Group project with milestones; open-ended problems applying course concepts
- Encouraged to work in groups of three with CA mentorship
- Policies: Submission on Gradescope, use of Piazza for communication, adherence to Honor Code
Optimization in AI
- Discrete Optimization: Using dynamic programming for complex problems
- Example: Computing edit distance between strings
- Continuous Optimization: Using gradient descent for problems like regression
- Example: Fitting a line to data points by minimizing error
Summary
- AI Paradigms: Focus on agents and tools, addressing challenges like security and bias
- Technical Paradigms: Modeling, inference, and learning as a structured approach
- Optimization: Key methods for solving AI problems in practice
Next Steps
- Machine Learning: Deep dive starting next lecture