In reading Andrew Trask’s “Grokking Deep Learning”, I’ve tried to hold myself accountable to learning the material by implementing it from scratch in creative ways. To do so, I’ve started this project that attempts to use different forms of neural network architecture to predict baseball statistics. Starting basic with predicting a pitcher’s ERA using very basic inputs to get my bearings, I aim to eventually progress to much more sophisticated metrics.
How it works
/FIP/FIPGradientDescent.py: Modelling ERA using basic inputs with simple linear regression by gradient descent
/FIP/FIPNN.py: Modelling ERA using basic inputs with a neural network containing a hidden layer
/FIP/FIP-DNN.py: Modelling ERA using an arbitrarily wide deep neural network
What I Learned
I learned about different architectures of neural networks, the theories behind learning, and started to grasp the intuition behind backpropagation as credit assignment.
- Keep learning new models!
- Use more sophisticated inputs and outputs, nested models
Current (Known) Problems
/FIP/FIP-DNN.py: NeuralNetwork.fit() doesn’t work
- Python - Pandas, numpy