Algorithms
Step 3 of the machine learning workflow
Algorithms are the procedures that turn prepared data into a model — the engines of machine learning. Where earlier steps got your data ready, this step is where a model is actually chosen and its shape decided. This chapter surveys the main families of algorithms used in this course.
There is no single best algorithm. Each family makes different assumptions about what patterns in data look like, and each trades off differently between accuracy, interpretability, speed, and how much data it needs. Much of the craft of machine learning is matching an algorithm’s assumptions to the problem in front of you.
This chapter is organized as a reference: a short guide to choosing among the families, followed by a self-contained section for each algorithm. You can read it straight through, or jump to whichever algorithm you need from the list above.
Overview: choosing an algorithm
Before reaching for any specific model, it helps to narrow the field by asking a few questions about your problem and your data.
- What kind of task is it? Classification, regression, or clustering? This alone rules out whole families.
- How much do you value interpretability? A tree you can read end-to-end is very different from a neural network whose reasoning is opaque.
- How much data do you have? Some families (neural nets) are data-hungry; others work well on small datasets.
- How much compute and time? Simpler models train in seconds; others take much longer.
The most powerful model is not always the right one. A simple, interpretable model that is “good enough” often beats a complex one that no one can explain or maintain.
How this chapter is organized
Each algorithm below is a self-contained section with the same structure, so you always know where to look:
- Readings — do before class to build intuition.
- Slides — what we work through in class.
- Homework — apply the algorithm yourself.
- Lab — hands-on practice.
- Standards — what you should be able to do (assessed on the quiz).
Classification (CLS)
(Overview of classification goes here — what it is, when to use it, the core idea.)
Readings
(Add readings for CLS.)
Slides
(Add slide deck links for CLS.)
Homework
(Add homework for CLS.)
Lab
(Add lab for CLS.)
Standards
(Add the CLS standards — “you should be able to…”.)
Trees (TREE)
(Overview of tree-based models goes here.)
Readings
(Add readings for TREE.)
Slides
(Add slide deck links for TREE.)
Homework
(Add homework for TREE.)
Lab
(Add lab for TREE.)
Standards
(Add the TREE standards.)
Linear models (LIN)
(Overview of linear models goes here.)
Readings
(Add readings for LIN.)
Slides
(Add slide deck links for LIN.)
Homework
(Add homework for LIN.)
Lab
(Add lab for LIN.)
Standards
(Add the LIN standards.)
Other models (MOD)
(Overview of the additional model types — kNN, SVM, naive Bayes, etc.)
Readings
(Add readings for MOD.)
Slides
(Add slide deck links for MOD.)
Homework
(Add homework for MOD.)
Lab
(Add lab for MOD.)
Standards
(Add the MOD standards.)
Neural networks (NN)
(Overview of neural networks goes here.)
Readings
(Add readings for NN.)
Slides
(Add slide deck links for NN.)
Homework
(Add homework for NN.)
Lab
(Add lab for NN.)
Standards
(Add the NN standards.)