CS221 Lecture 1: Introduction to Artificial Intelligence
Welcome and Introductions
- Instructors: Percy and Dorsa
- Percy teaches class with Dorsa, expert in robotics and robotic interactions
- Teaching Team: CAs with interests in NLP, ML, data mining, computer vision, etc.
- Head CA (PhD student): Natural language processing
- Second-year MS students: ML, data mining, NLP
- One MS student: Computer vision
Announcements
- Weekly sections for review and advanced topics
- Overview session for Python and probability this Thursday
- First homework is posted on website, due next Tuesday at 11:00 PM via Gradescope
- Gradescope code will be posted on Piazza
Importance of AI
- No need to motivate importance; AI success stories are widespread
- Superhuman AI in games (Jeopardy, Go, Dota 2, poker)
- AI in practical applications (document reading, speech recognition, face recognition, medical imaging)
- Policy impact and societal transformation debates around AI
Historical Background of AI
- 1956 Dartmouth Workshop: Foundational moment organized by John McCarthy, Marvin Minsky, Claude Shannon, etc.
- Initial successes in game playing and theorem proving
- Initial optimism, followed by the first AI winter due to limited compute and intrinsic problem complexity
- 1970s and 1980s: Focus on expert systems
- Knowledge encoded as deterministic rules
- Impact on industries but eventually led to the second AI winter due to over-promising and under-delivering
- 1943 and Neural Networks: McCulloch and Pitts' work on artificial neural networks
- Deep Learning Resurgence: Rediscovery of backpropagation, key breakthroughs like Yann LeCun's work and AlexNet
- AlphaGo as a notable example of combining logic and neural networks
Two Traditions of AI
- Logical AI (John McCarthy, etc.)
- Neuroscience-Inspired AI (artificial neural networks)
- Examples of synergy between these traditions: e.g., AlphaGo
AI as Agents vs. AI as Tools
- AI as Agents: Recreating human intelligence capabilities (perception, motor skills, language, knowledge, reasoning, learning)
- AI as Tools: Using AI to solve real-world problems
- Examples: Satellite imagery for economic predictions, data center energy management, self-driving cars, fairness and bias issues
Course Overview
Modeling, Inference, and Learning Paradigm
- Modeling: Simplifying the real world into a mathematically precise model
- Inference: Asking questions about the model
- Learning: Deriving model parameters from data
Key Course Topics
- Machine Learning: Data to Model
- Focus on generalization from data to new experiences
- Reflex Models: No feedback loop (e.g., linear classifiers, deep neural networks)
- State-Based Models: Planning and actions in state spaces
- Search Problems: Optimal path finding
- MDPs: Dealing with randomness
- Games: Adversarial environments
- Variable-Based Models: Solutions as variable assignments
- Constraint Satisfaction Problems (CSP)
- Bayesian Networks: Soft dependencies and noisy sensor readings
- Logic Systems: Deep reasoning with heterogeneous information (e.g., simple logic language system demo)
Course Logistics
- Prerequisites: Programming, discrete math, probability
- Coursework: Homeworks, exam, and project
- Homeworks: 8 total, involve written and programming problems
- Exam: Closed book with one page of notes, focuses on problem-solving
- Project: Work in groups of three, various milestones
- Policies: Gradescope submissions, 7 late days, use Piazza for communication
- Honor Code: Collaborate but write independently, do not post assignments on GitHub, debugging permitted
Initial Technical Details
Optimization in AI
- Discrete Optimization: Finding the best path or set of decisions (Dynamic Programming)
- Continuous Optimization: Minimizing objective functions (Gradient Descent)
Example Problems
- Edit Distance
- Use dynamic programming to find the minimum number of edits to transform one string into another
- Optimal strategy via recurrence relations and memoization
- Linear Regression
- Fit a line using least squares and gradient descent for continuous optimization
- General method for solving machine learning problems via gradient descent
Next Steps: Begin with machine learning in the next lecture.