Package samer.models

Class SmoothGeneralisedExponential

  • All Implemented Interfaces:
    java.util.Observer, Model, Task


    public class SmoothGeneralisedExponential
    extends NamedTask
    implements Model, java.util.Observer
    Non-adaptive generalised exponential factorial prior: the pointy bit of the usual GeneralisedExponential has been smoothed out by blending with a quadratic.
    See Also:
    Serialized Form
    • Constructor Detail

      • SmoothGeneralisedExponential

        public SmoothGeneralisedExponential(int n)
      • SmoothGeneralisedExponential

        public SmoothGeneralisedExponential(Vec x)
    • Method Detail

      • update

        public void update(java.util.Observable obs,
                           java.lang.Object arg)
        Specified by:
        update in interface java.util.Observer
      • setEps

        public void setEps(double e)
      • setInput

        public void setInput(Vec in)
        Description copied from interface: Model
        model should begin observing this vector
        Specified by:
        setInput in interface Model
      • getSize

        public int getSize()
        Description copied from interface: Model
        return size of vector this model expects
        Specified by:
        getSize in interface Model
      • getEnergyVector

        public VVector getEnergyVector()
      • getEnergySignal

        public VDouble getEnergySignal()
      • getEnergy

        public double getEnergy()
        Description copied from interface: Model
        return E = -log p(x)
        Specified by:
        getEnergy in interface Model
      • getGradient

        public double[] getGradient()
        Description copied from interface: Model
        return dE/dx
        Specified by:
        getGradient in interface Model
      • getAlpha

        public VVector getAlpha()
      • run

        public void run()
        Specified by:
        run in interface Task
      • infer

        public void infer()
        Description copied from interface: Model
        should infer values latent variables
        Specified by:
        infer in interface Model
      • compute

        public void compute()
        Description copied from interface: Model
        contract is that getEnergy and getGradient must return correct values for current x after infer and compute has been called, but not necessarily before. This is to give model an opportunity to cache values of energy and gradient to avoid repeated computations.
        Specified by:
        compute in interface Model
      • functionx

        public Functionx functionx()
        Description copied from interface: Model
        This presents a more functional interface to the model so that it can be driven by an optimiser. See classes Functionx and MinimiserBase in package samer.maths.opt.
        Specified by:
        functionx in interface Model