• Eigenvectors: vectors for which a matrix doesn't cause a change in direction

    Picking up the linear-algebra thread from the basics notes, where I left eigenvectors sitting on the “next” list. These follow Zachary Huang’s Give me 25 min, I will make Eigenvalue click forever, worked out with the small numerical examples and a NumPy snippet per section. Same format as last time,...

  • Basic linear algebra notes

    I wanted to go back and pin down the basics of linear algebra properly, since so much of what I want to learn next leans on them, so these are my notes from working back through the foundations, cleaned up enough to share. They follow Zachary Huang’s Give Me 30...

  • Backprop through time, from scratch

    The first LSTM post was mostly a tour of the PyTorch API, the row-by-row reshape and the tuple-shaped hidden state and which line to keep for a many-to-one head, and it left the actual training algorithm sitting unexplained underneath the whole thing, so these are the notes that go after...

  • A first LSTM in PyTorch, classifying MNIST as a sequence Code

    After two convolutional projects, MNIST and FER2013, the first video of a recurrent-network tutorial drops you straight back onto MNIST and asks you to classify the digits with an LSTM, which sounds like a step backwards until you see the trick in the framing. You take the 28×28 image and...

  • Five PyTorch notebooks I typed out by hand Code

    Before the MNIST classifier and the FER2013 classifier there were five Jupyter notebooks, which are homework rather than a project, though the project posts that came after do not make much sense without them sitting underneath. The notebooks are on GitHub, and they are my pass through Daniel Bourke’s Learn...