All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Initial release of the
gate_learnerneural network engine in Python. - Custom Multilayer Perceptron (MLP) implementation with support for arbitrary hidden layer architectures.
- Sigmoid and ReLU activation functions with Xavier/Glorot and He Uniform weight initialisation.
- Adam Optimizer with L2 regularisation, momentum, and bias correction.
- Pre-allocated internal buffers for activations, deltas, and gradients to avoid repetitive memory allocations during training.
- Dynamic dataset generator for
$N$ -input OR and XOR logic gates. - Early stopping mechanisms based on convergence (Loss < 0.01) and stalling (Loss change < 1e-6 over 50 epochs).
- JSON serialisation and deserialisation for models and training histories.
- Dual-axis plotting of training loss and accuracy curves (gated under the
visualiseextra feature usingmatplotlib). - Comprehensive unit tests, integration tests, and performance benchmarks using
pytestandpytest-benchmark.