MATH 170 · Images become vectors · Teachable Machine session, self-hosted
Trainable machine native · no accounts, no camera
Show it labeled drawings, hold some back for testing, and read the
accuracy matrix. Unlike the famous website, this one lets you see exactly why it
decided — it measures pixel disagreement, exactly like the digit grids.
How to work this page.Training pad — draw a shape, then press add to sun / house / tree. That drawing
joins the shelf for that class and becomes one of the examples the machine may look at.
Test pad — draw something the machine has never seen; once you have pressed
Train, the prediction updates live as you draw, and the stored drawings it is
comparing you against light up in the shelves. Click a square to turn it black, click it
again to turn it back to white; drag to paint or erase a run of squares.
Click any thumbnail in a shelf to delete that drawing. With hold-back ON, every 4th
drawing in a class is set aside: the machine never studies it, and it is the only thing the
accuracy matrix is allowed to grade.
Training pad — draw an example (click a square to toggle it; drag to paint or erase)
Demo set loaded. Press Train — training here just means memorizing the examples (that's all k-NN is).
Notice what this rule does not do: it never averages a class. There is no
"typical sun" stored anywhere. Every stored drawing keeps its own identity and the
three closest ones vote, so one unusual example can decide an answer all by itself —
and deleting one drawing can change the prediction. A method that did average
each class into one centre drawing (a centroid) would be smoother and blinder: it
could never be swayed by a single neighbour, and it could never tell you
which stored drawing your sketch looks like.
Try: train, test-draw a sun with a doorway — then click the matrix cell where it went wrong.