
Teaching a Neural Network to Read: A Study in Learning
This project wasn’t just about building a neural network—it was about understanding learning itself. The task seemed straightforward at first: create an interactive AI that recognizes handwritten letters and digits, learns from mistakes, and adapts in real time. But the more I worked on it, the more I saw parallels between how machines learn and how we do.
At its core, the system is a self-learning neural network. It starts with the MNIST dataset (digits 0-9), but instead of just following a fixed training set, it remains open to change. When the model misclassifies a character, the user can correct it, triggering real-time retraining. This means the AI doesn’t just store information—it actively reshapes itself based on new experiences. And crucially, it makes that process visible, showing weight adjustments as it learns.
This way of learning—through interaction, error, and correction—isn’t so different from how we learn. Mistakes aren’t failures; they are the moments that shape understanding. The course encouraged us to explore this idea not just in code, but through reading on human cognition and AI. What does it mean to “train” a machine? How does that compare to how we train ourselves? Where do we draw the line between recognizing patterns and truly understanding something?
Ultimately, this project became both about building a functional AI and exploring the mechanics of adaptation—both artificial and human.
Authors
model training, backend : Katja Khmurchyk
UX/UI : Emma Reeb
frontend : Valentina Brocanelli, Pedro
deploying: Raffaella Carolina Lanza, Katja Khmurchyk
A project from the course “Applied AI” at the University of Applied Science, Cologne.
P.S. use your computer for playing the program