If you're poking around, start with
lib/network.js, which define the fundamental building blocks of the learning component.
lib/runner.js drives the training & visualization schedule (timers), and most of the other code has to do with visualizing or modifying the neural network architecture. It was a good excuse to learn to plot things using and elements instead of importing some charting lib such as flot or vis.
On the bucket list:
- Validation data, plotted on output graph
- Model validation, at least as far as a training & test set
- Activation function selection and visualization
- Prepared demos of problematic scenarios: learning slowdown, RELU death, etc.