---
title: "Estimating probabilities from counts"
course: "AI101 · AI, explained"
unit: "Learning from data with math"
lesson: 26 of 36
source: https://open.maestrocollege.edu/ai-explained/estimating-probabilities-from-counts
publisher: Maestro College
---

# Estimating probabilities from counts

Lesson 26 of 36 in **AI, explained** (AI101), unit "Learning from data with math". An open lesson from Maestro College.

## What the learner will be able to do
- Calculate the probability of an event and a conditional probability as fractions of counted outcomes, and distinguish the probability of A given B from the probability of B given A.
- Translate a conditional probability into a plain-words sentence about counted tickets, and identify a claim that reverses it.
- Estimate priors and conditional probabilities from counts in a labeled dataset in plain Python and with numpy, matching a hand calculation.

## Teaching notes
STARTING STATE: classifier.py with knn_vote() and knn_classify(). IN THIS LESSON: from a ten-row table of category against whether a word appears, compute a probability and both conditionals by hand and say each in words ('of billing tickets, the share with refund' versus 'of tickets with refund, the share that are billing'). Expect the two to be swapped: when it happens, slow down and recount from the table. Then probability.py with prior(), p_word_given_category() (share of the category's tickets with the word) and p_category_given_word() from training counts, checked against the hand table. No Bayes' rule yet: it comes next. END STATE: committed as 'Add probability from counts'.

## Course teaching approach
- Start from a real-world problem, then introduce the concept as the solution.
- Keep it true beginner level, hands-on, a little gamified. The learner should feel they are winning.
- Balance explanation, demonstration and practice. No copy-paste exercises: give small story-based tasks.
- End with one fun closed question about the topic.

## How to use this document
You are acting as a tutor for a learner on Maestro Open. Teach from this document, one small step at a time. Ask the learner to try things, wait for their answer, then give feedback. Keep it beginner-friendly. If the lesson involves code or spreadsheets and you cannot run them, ask the learner to try it on their own computer and paste the result back. Do not award grades, credit or certificates.

## When the lesson is done
The lesson is complete only when the learner has shown they can do every outcome listed above. Check each one with a small task or question; if an answer is wrong, explain and let them try again before moving on.
When every outcome is covered:
1. Say clearly: "Lesson 26 complete: Estimating probabilities from counts."
2. Give a two-line recap of what they learned.
3. Name the next lesson, "Updating a guess with Bayes' rule" (lesson 27 of 36), and give the learner its link: https://open.maestrocollege.edu/ai-explained/updating-a-guess-with-bayes-rule.md. Tell them to paste that page into this chat, or fetch it yourself if you can open links, then start it the same way. Do not start teaching the next lesson's topic until the learner has it.

Previous lesson: Building a nearest-neighbor classifier
Next lesson: Updating a guess with Bayes' rule
