
4.6 Assignments 71
4.5.6 Using SOM
The SOM has been applied to a variety of real-world problems, including image analy-
sis, speech recognition, music pattern analysis, signal processing, robotics, telecom-
munications, electronic-circuit design, knowledge discovery, and time series analysis.
The main advantage of SOMs comes from the easy visualization and interpretation of
clusters formed by the map.
In addition to visualizing the complete map as illustrated in Figure 4.4(b), the relative
component values in the codebook vectors can be visualized as illustrated in the same
figure. Here a component refers to an input attribute. That is, a component plane
can be constructed for each input parameter (component) to visualize the distribution
of the corresponding weight (using some color scale representation). The map and
component planes can be used for exploratory data analysis. For example, a marked
region on the visualized map can be projected onto the component planes to find the
values of the input parameters for that region.
A trained SOM can also be used as a classifier. However, since no target information is
available during training, the clusters formed by the map should be manually inspected
and labeled. A data vector is then presented to the map, and the winning neuron
determined. The corresponding cluster label is then used as the class.
Used in recall mode, the SOM can be used to interpolate missing values within a
pattern. Given such a pattern, the BMN is determined, ignoring the inputs with
missing values. A value is then found by either replacing the missing value with the
corresponding weight of the BMN, or through interpolation among a neighborhood of
neurons (e.g. take the average of the weight values of all neurons in the neighborhood
of the BMN).
4.6 Assignments
1. Implement and test a LVQ-I network to distinguish between different alphabet-
ical characters of different fonts.
2. Explain why it is necessary to retrain a supervised NN on all the training data,
including any new data that becomes available at a later stage. Why is this not
such an issue with unsupervised NNs?
3. Discuss an approach to optimize the LVQ-I network architecture.
4. How can PSO be used for unsupervised learning?
5. What is the main difference between the LVQ-I and SOM as an approach to
cluster multi-dimensional data?
6. For a SOM, if the training set contains P
T
patterns, what is the upper bound
on the number of neurons necessary to fit the data? Justify your answer.
7. Explain the purpose of the neighborhood function of SOMs.
8. Assuming a Gaussian neighborhood function for SOMs, what can be done to
reduce the number of weight updates in a sensible way?