16.1 Overview of the So Implementation

The So implementation is designed to be used in a mix-and-match fashion. Thus, there are a number of different learning algorithms, and several different activation functions, each of which can be used with the other. The learning algorithms are implemented as different connection specs derived from a basic SoConSpec type. They all use the same SoCon connection type object.

Unlike the other algorithms in the PDP++ distribution (Bp and Cs), the So implementation uses LayerSpec objects extensively. These layer specifications implement competition among units in the same layer, which is central to the self-organizing algorithms. Thus, there are three different layer specs all derived from a common SoLayerSpec which implement hard competitive learning (Cl), soft competitive learning (SoftCl), and the self-organizing map (Som) activation functions.

There are no new statistics defined for self-organizing learning, and only one process object, which performs a simple feed-forward processing trial (all of the So algorithms are feed-forward).