at.tuwien.ifs.somtoolbox.models
Class GHSOM

java.lang.Object
  extended by at.tuwien.ifs.somtoolbox.models.AbstractNetworkModel
      extended by at.tuwien.ifs.somtoolbox.models.GHSOM
All Implemented Interfaces:
SOMToolboxApp, NetworkModel

public class GHSOM
extends AbstractNetworkModel
implements SOMToolboxApp

This class implements the Growing Hierarchical Self-Organizing Map. It is basically a wrapper for the GrowingSOM and mainly handles command line execution and parameters. It implements the NetworkModel interface which is currently not used, but may be used in the future. It is also not clear, if this class will be removed and replaced by the GrowingSOM, because it already contains the hierarchical functionality, only the training procedure would have to be updated.

Version:
$Id: GHSOM.java 3995 2011-01-19 14:50:20Z mayer $
Author:
Michael Dittenbach

Nested Class Summary
private  class GHSOM.ExpandedUnits
           
 
Nested classes/interfaces inherited from interface at.tuwien.ifs.somtoolbox.apps.SOMToolboxApp
SOMToolboxApp.Type
 
Field Summary
static SOMToolboxApp.Type APPLICATION_TYPE
           
static String DESCRIPTION
           
private  GrowingLayer layer0
           
static String LONG_DESCRIPTION
           
static com.martiansoftware.jsap.Parameter[] OPTIONS
           
private  GrowingSOM topLayerMap
           
 
Fields inherited from class at.tuwien.ifs.somtoolbox.models.AbstractNetworkModel
contentType, DEFAULT_LABEL_COUNT, labelled, sharedInputObjects, trainingStart
 
Fields inherited from interface at.tuwien.ifs.somtoolbox.apps.SOMToolboxApp
DEV_BY_STRING, HOMEPAGE, INFO, INFO_TEXT, LICENSE_TEXT, REQUIRED_MEMBERS, TYPE_GROUPED_COMPARATOR
 
Constructor Summary
GHSOM(int dim, boolean norm, GHSOMProperties props, InputData data)
          Constructs a new GHSOM with dim-dimensional weight vectors.
GHSOM(SOMInputReader ir)
          Constructs an already trained GHSOM with a SOMInputReader provided by argument ir.
 
Method Summary
 GHSOM.ExpandedUnits getExpandedUnits(GrowingLayer layer, QualityMeasure qm, String qmName, double fraction, double totalQuality)
           
static void main(String[] args)
          Method for stand-alone execution of map training.
Options are: -h toggles HTML output -l name of class implementing the labeling algorithm -n number of labels to generate -w name of weight vector file in case of training an already trained map -m name of map description file in case of training an already trained map --noDWM switch to not write the data winner mapping file properties name of properties file, mandatory
 void setSharedInputObjects(SharedSOMVisualisationData sharedInputObjects)
           
 GrowingSOM topLayerMap()
          Returns the top-layer map
 void train(InputData data, GHSOMProperties props)
          Trains the GHSOM with the input data and training parameters specified in the properties provided by argument props.
 
Methods inherited from class at.tuwien.ifs.somtoolbox.models.AbstractNetworkModel
getDataContentType, getInputData, getSharedInputObjects, isLabelled, printTrainingTime, setLabelled
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DESCRIPTION

public static String DESCRIPTION

APPLICATION_TYPE

public static final SOMToolboxApp.Type APPLICATION_TYPE

LONG_DESCRIPTION

public static String LONG_DESCRIPTION

OPTIONS

public static final com.martiansoftware.jsap.Parameter[] OPTIONS

layer0

private GrowingLayer layer0

topLayerMap

private GrowingSOM topLayerMap
Constructor Detail

GHSOM

public GHSOM(int dim,
             boolean norm,
             GHSOMProperties props,
             InputData data)
Constructs a new GHSOM with dim-dimensional weight vectors. Argument norm determines whether the randomly initialised weight vectors should be normalised to unit length or not.

Parameters:
dim - the dimensionality of the weight vectors.
norm - specifies if the weight vectors are to be normalised to unit length.
props - the network properties.

GHSOM

public GHSOM(SOMInputReader ir)
Constructs an already trained GHSOM with a SOMInputReader provided by argument ir.

Parameters:
ir - an object implementing the SOMinputReader interface to load an already trained model.
Method Detail

main

public static void main(String[] args)
Method for stand-alone execution of map training.
Options are:

Parameters:
args - the execution arguments as stated above.

setSharedInputObjects

public void setSharedInputObjects(SharedSOMVisualisationData sharedInputObjects)
Overrides:
setSharedInputObjects in class AbstractNetworkModel

getExpandedUnits

public GHSOM.ExpandedUnits getExpandedUnits(GrowingLayer layer,
                                            QualityMeasure qm,
                                            String qmName,
                                            double fraction,
                                            double totalQuality)

topLayerMap

public GrowingSOM topLayerMap()
Returns the top-layer map

Returns:
the top-layer map.

train

public void train(InputData data,
                  GHSOMProperties props)
Trains the GHSOM with the input data and training parameters specified in the properties provided by argument props.

Parameters:
data - input data to train the map with.
props - the training properties.