https://github.com/mattmoony/ann_mnist
Simple self-written ANN powered by NumPy to classify handwritten digits of the famous MNIST Dataset. ✍️
https://github.com/mattmoony/ann_mnist
adam ann deep-learning learning-algorithm machine-learning ml mnist mnist-handwritten-digits momentum neural-net neural-network normalization numpy regularization relu sigmoid tanh
Last synced: about 2 months ago
JSON representation
Simple self-written ANN powered by NumPy to classify handwritten digits of the famous MNIST Dataset. ✍️
- Host: GitHub
- URL: https://github.com/mattmoony/ann_mnist
- Owner: MattMoony
- License: gpl-3.0
- Created: 2019-08-05T22:53:44.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-09-15T16:34:45.000Z (over 3 years ago)
- Last Synced: 2025-01-19T10:31:19.377Z (4 months ago)
- Topics: adam, ann, deep-learning, learning-algorithm, machine-learning, ml, mnist, mnist-handwritten-digits, momentum, neural-net, neural-network, normalization, numpy, regularization, relu, sigmoid, tanh
- Language: Jupyter Notebook
- Homepage:
- Size: 8.97 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
MNIST Handwritten Digits:
A Simple ANN Classifier
![]()
![]()
![]()
---
A (hopefully) well-structured and easy to understand Jupyter notebook outlining some machine-learning basics with the help of a self-written adjustable *neural network* using purely the power of the brilliant [NumPy](https://numpy.org/) module. I originally decided against using any mainstream machine-learning modules such as [TensorFlow](https://github.com/tensorflow/tensorflow), [PyTorch](https://github.com/pytorch/pytorch), [Caffe](https://github.com/BVLC/caffe), etc. in order to acquire a *deeper understanding* about the mathematics and tech behind deep neural networks.
> Check out the notebook **[here](main.ipynb)!**
## 📂 Repository Structure
If you want to clone this repository and run the notebook locally, then don't forget to install the dependencies, but most importantly, don't forget to also download the official [MNIST Handwritten Digits Dataset](http://yann.lecun.com/exdb/mnist/) and place it in the right place.
```txt
ann_mnist/
|- data/ // dataset directory
|- t10k-images-idx3-ubyte.gz // test features
|- t10k-labels-idx1-ubyte.gz // test labels
|- train-images-idx3-ubyte.gz // train features
|- train-labels-idx1-ubyte.gz // train labels
|- media/ // media for README.md
|- ...
|- snaps/ // generated media
|- ...
|- main.ipynb // main jupyter notebook
|- main.py // legacy, 2019 code (fashion dataset)
|- notebook.py // code-only version of notebook
|- ...```
## 🔍 Want More?
Some of my other machine-learning repositories that I might do a makeover on soon as well. For references to other (perhaps more interesting) reads, check out the articles I linked to every now and then in the notebook.
- [ConvNet - MNIST Dataset](https://github.com/MattMoony/convnet_mnist) [2019] ... Using a *convolutional neural network* to classify handwritten digits
- [RNN (LSTM) - Goethe Texts](https://github.com/MattMoony/rnn-lstm_goethe-generation) [2019] ... Using a *recurrent neural network* (*long short term memory*) to generate characters in a "Goethe-like" manner
- [ConvNet - Style Transer](https://github.com/MattMoony/convnet_style-transfer) [2019] ... Using PyTorch and the *VGG16* network to transfer artists' styles onto digital images
- [ConvNet - Deep Dream](https://github.com/MattMoony/convnet_deep-dream) [2019] ... Using PyTorch and *GoogLeNet* to generate mind-blowing images using a neural network's "imagination"---
... Matthias Monschein (September 2021)