The library

How models work

Derive what sliding a small window of weights across an image computes, why sharing those weights is the right constraint for pictures rather than a saving, how depth and stride and dilation each change what a unit can see, and why the whole operation is a matrix multiply with most of the entries missing

How a Filter Reads a Picture

A picture has far too many numbers in it to connect everything to everything. This course derives the one constraint that makes it tractable and follows what every later choice is buying.

8 lessons, written and corrected before you arrived. Reading them here needs no account. The first reads the whole way through; the others open and then stop, because a page nobody owns cannot tell who is reading it. Starting the course gives you your own copy, where every idea has problems standing under it and you can ask about any sentence.

Start reading

  1. 01The Same Few Numbers, EverywhereOne output value is a weighted sum of a small patch of input. Slide that same patch of weights across every position and the result is a map of where the pattern was found.
  2. 02The Constraint That Pays for Itselfopening onlySharing one small window across every position cuts the parameters by orders of magnitude, but the saving is the lesser half of what the constraint actually buys.
  3. 03Where the Window Fits, and How Often It Stopsopening onlyTwo small choices decide the size of what comes out: what to do where the window hangs off the edge, and whether to use every position or every second one.
  4. 04One Filter Is Never Enoughopening onlyA filter reads the whole depth of its input and returns one number, so a layer with a hundred filters produces a hundred channels for the next layer to read.
  5. 05The Slow Widening of the Viewopening onlyA unit can only be influenced by the input positions that feed it. That region grows by two pixels a layer, which is far too slow until stride enters the arithmetic.
  6. 06Throwing Away Where, to Keep Whatopening onlyReducing the resolution is the cheapest way to widen a view and the only way to make a network tolerate small shifts, and it is paid for in location.
  7. 07Two Discounts, Each With a Conditionopening onlySpacing the taps of a window apart buys reach for nothing. Splitting a filter into two cheaper ones buys width for a ninth. Both come with something given up.
  8. 08It Was a Matrix Multiply All Alongopening onlyWrite a convolution as an ordinary matrix and the constraint becomes visible: nearly every entry is zero, and the ones that are not are the same few numbers repeated.