Welcome to an interactive learning tool designed to demystify neural networks! A neural network is a computing system inspired by the biological brain, which learns to recognize patterns. Here, you can build, visualize, and experiment with a simple network, starting with a pre-built configuration called Martin's Image Recognition Machine (MIM).
Use these controls to modify the network's structure and behavior. Adding hidden layers increases its complexity, allowing it to learn more intricate patterns. Changing the activation function alters how neurons process information.
This is the data you feed into the network. Our simple network takes a 2x2 pixel image as input. Click the squares to toggle them between black (1) and white (0), or use the preset buttons to create common patterns.
This diagram shows the network in action. Circles are neurons, and lines are connections. The brightness of a neuron indicates its activation level (how strongly it's firing). The color and thickness of a connection represent its weight (blue for positive, red for negative).
The output layer shows the network's final decision. For the default MIM configuration, the two outputs are trained to detect the two diagonal patterns. A value close to 1.0 indicates a strong detection of that pattern.
In the original MIM: Output 0 = Diagonal \, Output 1 = Diagonal /
Values closer to 1.0 indicate stronger detection
Weights are the most critical part of a neural network; they are the values the network "learns." A weight determines the strength and sign of a connection between two neurons. Here, you can manually adjust them to see how they affect the output.