Kohonen Map for Medical Image Compression Applications
Concept of Unsupervised Learning
The main features of neural systems are their massive parallel processing architectures and the capabilities of learning from the presented inputs. They can be utilized to perform a specific task only by means of adequately adjusting the connection weights, i.e., by training them with the presented data. For each type of artificial neural network, there exists a corresponding learning algorithm by which we can train the network in an iterative updating manner. Those learning algorithms fit into two main categories: supervised learning and unsupervised learning [TK98].
For supervised learning, not only the input data but also the corresponding target answers are presented to the network. Learning is done by the direct comparison of the actual output of the network with known correct answers. This is also referred to as learning with a teacher. In contrast, if only input data without the corresponding target answers are presented to the network for learning, we have unsupervised learning.
Self-Organizing Feature or Kohonen Map
A self-organizing feature map or Kohonen map is implemented by a 1D or 2D lattice of neurons. The neurons become specialized to various input patterns or classes of input patterns while the network performs an unsupervised competitive learning process. The weights of the neurons that have close locations on the lattice are trained to represent similar input vectors. We obtain a network that preserves neighborhood relations in the input space, and thus preserves the topology of the input space. This map is known as a self-organizing feature map [K88].
Mathematically, the self-organizing map (SOM) determines a transformation from a high-dimensional input space onto a one- or two-dimensional discrete map. The transformation takes place as an adaptive learning process such that when it converges the lattice represents a topographic map of the input patterns. The training of the SOM is based on a random presentation of several input vectors, one at a time. Typically, each input vector produces the firing of one selected neighboring group of neurons whose weights are close to this input vector.
The most important components of such a network are [K88,H99]:
1. A 1D or 2D lattice of neurons that encodes an input pattern <math>\mathbf{x}</math> of an arbitrary dimension into a specific location on it, as shown in Figure 1(a).
2. A method that selects a ``winning neuron'' based on the similarity between the weight vector <math>\mathbf{w}</math> and the input vector <math>\mathbf{x}</math>:
3. An interactive network that activates the winner and its neighbors simultaneously. A neighborhood <math>\Lambda_{i(\mathbf{x})}(n)</math> which is centered on the winning neuron is a function of the discrete time <math>n</math>.
Figure 1(b) illustrates such a neighborhood, which first includes the whole array and then shrinks gradually to only one ``winning neuron, represented by the black circle.
4. An adaptive learning process that reinforces all neurons in the close neighborhood of the winning neuron, and inhibits all those that are farther away from the winner. The synaptic weight vectors of all neurons (winners or not) are adjusted, using the update equation
\mathbf{w}_j(n)+\eta (n)[\mathbf{x}(n)-\mathbf{w}_j(n)]& \text{ if } j\in \Lambda_{i(\mathbf{x})}(n) \\ \mathbf{w}_j(n)& \text{ else }\end{cases}</math>