Project overview
A convolutional network that reads an expression off a face and calls it happy or sad, trained end to end on a dataset gathered and cleaned by hand.
The interesting part of this one was not the architecture, it was the data. There is no tidy public set for this, so the images were pulled in bulk from search, then filtered by hand for the ones that were actually faces and actually readable.
From there it is a straightforward CNN in TensorFlow: build the pipeline, train, watch the loss and accuracy curves for the point where it starts memorising instead of learning, and evaluate on data it never saw.