Notes 20110215 CIS 6050 Neural Networks
From SnOwy - Ed's Wiki Notebook
Contents |
Self Organizing Maps (SOMs) continued
- two phases occur during training
- ordering or self-organizing
- weights are topologically ordered
- groups of weights are modified simultaneously
- convergence -- weights are fine tuned to identify smaller groups
- neighbourhood consists of a few or one winning node
- ordering or self-organizing
Feature Map
- a non-linear transformation -- maps continuous input space to discrete outputs
- features to a cluster
- weights attached to a winning node can be viewed as a point in the input space which represents the neuron
- the winning node is called the prototype
- feature vector starts to resemble real input space
- the weights actually start to look like the input vectors
Properties of a Feature Map
hidden layer
- provides good approximation of input space
- reduces input space to a smaller number of prototypes
- topologically ordered
- input vectors with high probability of occurring ...
- mapped to larger areas of hidden layer
- these have better resolution (more nodes) than lower probability patterns
- given non-linear input vectors, system can select set of features modelling the underlying distribution
Learning Vector Quantizer (LVQ)
another way to use a SOM
- a supervised version of a SOM
- uses class information to improve decision regions
- the SOM approximates this but in an unsupervised manner
- SOM does not use classes
- requires input and clusters for input
- LVQ is built on the SOM architecture
- a vector classifier (quantizer) with minimum encoding distortion ...
- called a Voronoi or nearest neighbour quantizer
- Voronoi cells around a set of inut points create a partition in input space
- use nearest neighbours in Euclidean space to define the cell
- LVQ uses class information
- to move Voronoi vectors to improve classifier regions
- LVQ modifies the SOM clusters
- training algorithm
- Given an input vector Xi and a set of Voronoi vectors wj, j = (1 ... l)
- the Voronoi vector Wc
- the weights most similar to the input vector
- adjusted with ...
- wc(n+1) = wc(n) + αn[xi - wc(n)]
- where 0 < αn < 1 is the learning rate -- moves weights closer to xi
- ... only if class associated with wc is the correct class for input xi.
- means that only classes that belong to the correct category get trained
- rewarding a LVQ based on correct classification
- we move the weights closer if they are classified correctly
- a supervised operation
- if class for xi is not the same as the class for wc
- wc(n+1) = wc(n) - αn[xi-wc(n)]
- if input vector xi and classification wc agree,
- make it more likely to classify similarly again
- if they disagree,
- make it less likely to classify that way again
- if a node does not activate, then it undergoes little to no training