An unsupervised neural network that creates a low-dimensional (2D) representation of high-dimensional data, preserving the topological structure of the input space.
The SOM is a 2D grid of neurons, each with a weight vector in the input space.
Training (online learning):
- For each input vector x, find the Best Matching Unit (BMU) — the neuron whose weights are closest to x.
- Update the BMU and its neighbors toward x:
w += α · h(d) · (x - w)- α = learning rate (decays over time)
- h(d) = Gaussian neighborhood function based on grid distance from BMU
- Both α and the neighborhood radius σ decay exponentially.
Result: Neighboring neurons in the grid learn similar input patterns. The map self-organizes to represent the input topology.
- Topology preservation: Nearby inputs map to nearby neurons.
- Dimensionality reduction: Projects high-D data onto 2D.
- Clustering: Similar inputs activate the same or nearby neurons.
| Operation | Time | Notes |
|---|---|---|
| BMU search | O(W·H·D) | Grid size × input dimension |
| Train (per epoch) | O(N·W·H·D) | N = data size |
Data Visualization: SOMs project high-dimensional data onto 2D for visualization. Color-coded maps show cluster structure.
Clustering: Natural clustering emerges from the topology-preserving mapping. Each neuron represents a cluster prototype.
Robotics: Motor control, sensor fusion, and navigation — SOMs learn continuous mappings from sensor space to action space.
Speech Recognition: Phoneme maps — SOMs trained on speech features create topological maps of phoneme space.
Materials Science: Materials property maps — SOMs cluster materials by composition and predict properties from the map position.