Documentation of 'jhplot.HBsom' Java class.
HBsom
jhplot

Class 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

      Fields 
      Modifier and Type Field and Description
      Bsom bsom 
    • Constructor Summary

      Constructors 
      Constructor and Description
      HBsom()
      Initialize BSOM.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      void doc()
      Show documentation
      double getAlpha()
      Get alpha.
      double getBeta()
      Get beta.
      double getDelta()
      Get calculation precision.
      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 beta parameters.
      void setData(H1D h)
      Load histogram data to BSOM
      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
      • setData

        public void setData(H1D h)
        Load histogram data to BSOM
        Parameters:
        p1d - input histogram data
      • doc

        public void doc()
        Show documentation
      • setAlphaBeta

        public void setAlphaBeta(double alpha,
                                 double beta)
        Set initial alpha and beta parameters. The BSOM model has a pair of hyperparameters: alpha and beta, which represent `the strength of topological constraint' and `the estimate of noise level in data' respectively. You can vary them using the sliders. Observe the variation of the centroid configuration according to the values of the hyperparameters and grasp their meaning. Then try to find the optimal values of the hyperparameters giving the best centroid configuration. Remark that the configuration depends on not only the present values of hyperparameters but also their history. Poor moving of the hyperparameters will lead to a poor local optimal configuration.
        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
      • getDelta

        public double getDelta()
        Get calculation precision.
      • getNiterations

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

        public double getAlpha()
        Get alpha. The strength of topological constraint
      • getBeta

        public double getBeta()
        Get beta. This is the estimate of noise level in data.
      • visible

        public void visible()
        Set visible frame

DMelt 3.0 © DataMelt by jWork.ORG