CS 210, Intro to AI Programming
Topics | |
---|---|
1. What is AI, Python | 6. ANN: Image recognition |
2. Symbolic AI | 7. Generative AI |
3. Classical Machine Learning: Training | 8. Custom chatbot |
3. Classical Machine Learning: Inference | 9. LLM fine-tuning |
5. Midterm | 10. Ethics |
11. Final |
What is AI?John McCarthy and the Dartmouth WorkshopMcCarthy's Definition of AIClassical Symbolic AI (GOFAI)A Modern DefinitionAnalysis of the modern definitionCategories of AIWhat We'll Cover in this Course
John McCarthy was a mathematics professor at Dartmouth College who coined the term Artificial Intelligence.
He and his colleagues convened the Dartmouth Summer Research Project on Artificial Intelligence in 1956. 1
The workshop was based on the idea that: "Every aspect of learning or any other feature of intelligence can in principle be so precisely described that a machine can be made to simulate it."
This workshop is considered the founding event for AI research as a distinct field of study.
McCarthy defined AI as "the science and engineering of making intelligent machines, especially intelligent computer programs"2
One of the major approaches to AI in the mid-twentieth century was to use rules and logic to make decisions. This approach was later labeled "Good Old Fashioned AI"3 by John Haugeland4 , a professor at the University of Chicago.
In the GOFAI age, an algorithm was considered "AI" if it successfully used explicit rules (selection statements, logical predicates, etc.) to manipulate high-level, human-readable symbols like IF (animal has feathers) AND (animal can fly) THEN (animal is a bird)
.
From the United States National Artificial Intelligence Initiative Act of 2020:
The term "artificial intelligence" means a machine-based system that can, for a given set of human-defined objectives, make predictions, recommendations or decisions influencing real or virtual environments. Artificial intelligence systems use machine and human-based inputs to—
(A) perceive real and virtual environments;
(B) abstract such perceptions into models through analysis in an automated manner; and
(C) use model inference to formulate options for information or action.
This definition raises the bar by implying that machine learning an essential part of AI.
It describes things that AI systems do:
Predict
Reccomend
Decide
It describes the way AI systems do it:
Perception, i.e. getting input. This input could be in the form of a file containing: text, an image, sound or other data. It could also be input from sensors or input devices: camera, microphone, temperature sensor, etc.
Abstract perception into models. This is what is usually called training a model.
Inference. This means running a program that uses the model to do something.
For the purposes of this class, we will categorize the different approaches to AI as:
Symbolic (GOFAI)
Machine Learning
Statistical
ANN (Artificial Neural Networks)
Our main focus in this course will be on machine learning. But first we will review Python and write some simplified symbolic AI code.
Here is an outline of what we'll cover:
Intro/review of Python
Simplified symbolic AI as a way to practice Python
Statistical machine learning with the Python Scikit Learn library
ANNs with TensorFlow, image recognition
Generative AI
Creating a custom chatbot (Gemini Gem)
Using the chat completion API (Google Gemini)
Fine-tuning an LLM
Note: Parts of this document were drafted with assistance from Gemini 2.5 Flash
Intro to AI Course Materials by Brian Bird, written in , are licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.