Handwriting Recognition in C++
Welcome to the Handwriting Recognition project, an educational initiative to explore neural networks using the MNIST dataset in modern C++. This project demonstrates memory-safe programming practices and leverages state-of-the-art C++ features. For an in-depth look at the underlying memory models and safety mechanisms, check out my blog post on C++ memory models.
The code for this project can be found on Github.
Overview
This project aims to:
- Familiarize with neural networks and handwriting recognition.
- Utilize modern C++ for enhanced performance and memory safety.
- Provide a modular and maintainable codebase that leverages best practices in C++.
The project uses the popular MNIST dataset to train and test a neural network that recognizes handwritten digits.
Features
- Modern C++ Implementation: Built with modern C++ standards for robust and efficient code.
- Memory Safety: Focus on secure memory management and performance.
- Configurable Training: Easily adjustable parameters via a configuration file.
- OpenMP Support: Optional OpenMP support for enhanced parallelism during training.