jhplot
Class HBsom

java.lang.Object
  extended by jhplot.HBsom

public class HBsom
extends java.lang.Object

The Bayesian self-organizing map (BSOM). This is a method for estimating a probability distribution generating data points on the basis of a Bayesian stochastic model. It is also regarded as a learning method for a kind of neural network. The black dots in the below figure denote artificially generated data points. Based on work of: Akio Utsugi.

This class is based on: A. Utsugi (1996) ``Topology selection for self-organizing maps", Network: Computation in Neural Systems, vol. 7, no. 4, 727-740.

A. Utsugi (1997) ``Hyperparameter selection for self-organizing maps", Neural Computation, vol. 9, no. 3, pp. 623-635.


Field Summary
 Bsom bsom
           
 
Constructor Summary
HBsom()
          Initialize BSOM.
 
Method Summary
 void doc()
          Show documentation
 double getAlpha()
          Get alpha
 double getBeta()
          Get beta
 int getNiterations()
          Get number of iterations used for fitting
 P1D getResult()
          Get results of training.
 void run()
          Run the algorithm
 void setAlphaBeta(double alpha, double beta)
          Set initial alpha and betai parameters.
 void setData(P1D p1d)
          Load data to BSOM
 void setDelta(double delta)
          Set calculation precision.
 void setNPoints(int units)
          Set number of points for fit
 void visible()
          Set visible frame
 void visible(boolean vis)
          Set frame visible or not
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

bsom

public Bsom bsom
Constructor Detail

HBsom

public HBsom()
Initialize BSOM.

Method Detail

setNPoints

public void setNPoints(int units)
Set number of points for fit

Parameters:
units - set number of points for fit.

setData

public void setData(P1D p1d)
Load data to BSOM

Parameters:
p1d - input data

doc

public void doc()
Show documentation


setAlphaBeta

public void setAlphaBeta(double alpha,
                         double beta)
Set initial alpha and betai parameters.

Parameters:
alpha - alpha value
beta - beta value

getResult

public P1D getResult()
Get results of training.

Returns:
P1D with results.

run

public void run()
Run the algorithm


visible

public void visible(boolean vis)
Set frame visible or not

Parameters:
vis - true if visible

setDelta

public void setDelta(double delta)
Set calculation precision. Iterations stop if (current(alpha)-previous(alpha) .lt. delta) The value should be very small for best results

Parameters:
delta - precision

getNiterations

public int getNiterations()
Get number of iterations used for fitting


getAlpha

public double getAlpha()
Get alpha


getBeta

public double getBeta()
Get beta


visible

public void visible()
Set visible frame



jHepWork 2.1 (C) S.Chekanov