🤖

Overview of CS 221: Artificial Intelligence Course

Oct 10, 2024

Lecture Notes: CS 221 - Artificial Intelligence

Course Introduction

  • Instructor: Percy Liang
  • Co-Instructor: Dorsa
  • Course focuses on AI, taught through theory and practical applications.

Teaching Team

  • Diverse interests among teaching assistants (TAs):
    • Natural Language Processing
    • Machine Learning
    • Computer Vision
    • Reinforcement Learning
    • AI Education
  • Students encouraged to utilize TA expertise for projects.

Announcements

  • Weekly sections
    • Cover review and advanced topics.
    • Python and probability overview this Thursday.
  • Homework 1 is posted and due next Tuesday by 11 PM.
  • Submissions via Gradescope, code posted on Piazza.

AI's Importance and History

  • AI is now widely recognized as crucial.
  • Success stories include AI in games, face recognition, and medical imaging.

Early AI Developments

  • Dartmouth Conference (1956): Sparked AI development.
  • Programs developed for games and theorem proving.
  • First AI Winter: Due to over-promising and lack of computing power.

AI in the 70s and 80s

  • Focus shifted to expert systems
  • Real industrial impact but led to second AI winter due to limitations and over-promising.

Neural Networks

  • 1943: McCullough and Pitts developed theory of artificial neural networks.
  • 1980s: Backpropagation rediscovered, leading to interest in multi-layer networks.
  • 2012: Deep learning took off with AlexNet.

AI's Dual Perspectives

  • AI as Agents: Recreating human-like intelligence.
  • AI as Tools: Using AI to enhance human capabilities.
  • Challenges include biases in data and societal implications of AI applications.

Course Content Overview

  • Modeling, Inference, Learning Paradigm: Structured approach to solving AI problems.
  • Topics to be covered:
    • Machine Learning
    • Reflex Models
    • State-Based Models
    • Variable-Based Models
    • Logic-Based Models

Course Logistics

  • Prerequisites: Programming, discrete math, probability.
  • Goals: Provide AI tools and improve proficiency in math and programming.
  • Coursework: 8 homeworks, exams, a project.

Project Details

  • Group work (up to 3 people).
  • Involves brainstorming, progress reports, and a poster session.
  • Mentorship from CAs available.

Policies

  • Submissions via Gradescope.
  • 7 total late days allowed for assignments.
  • Communication through Piazza.
  • Honor code emphasized: No copying or sharing of code and solutions.

Technical Details: Optimization

  • Discrete Optimization: Finding best discrete object (dynamic programming).
  • Continuous Optimization: Finding best vector of real numbers (gradient descent).

Dynamic Programming Example

  • Problem: Calculate edit distance between two strings.
  • Solution: Use recurrence relations and memoization to optimize.

Gradient Descent Example

  • Problem: Perform linear regression to fit a line.
  • Solution: Use gradient descent to minimize error function.

Conclusion

  • Next class will start on machine learning.
  • Focus on moving complexity from code to data through machine learning paradigms.