Home Original page

SimpleDistribution.Trainer (biojava-legacy 1.9.5 API)

  • java.lang.Object
    • org.biojava.bio.dist.SimpleDistribution.Trainer
  • All Implemented Interfaces:
    DistributionTrainer
    Enclosing class:
    SimpleDistribution

    protected class SimpleDistribution.Trainer
    extends Object
    implements DistributionTrainer

    A simple implementation of a trainer for this class.

    Since:
    1.0
    Author:
    Matthew Pocock
    • Constructor Summary

      Constructors 
      Constructor Description
      Trainer()

      Create a new trainer.

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCount​(DistributionTrainerContext dtc, AtomicSymbol sym, double times)

      Registers that sym was counted in this state.

      void clearCounts​(DistributionTrainerContext dtc)

      Clears all of the counts to zero.

      double getCount​(DistributionTrainerContext dtc, AtomicSymbol sym)

      Get the current count for this state.

      void train​(DistributionTrainerContext dtc, double weight)

      Trains the Distribution, given a null model.

      protected void trainImpl​(DistributionTrainerContext dtc, double weight)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Trainer

        public Trainer()

        Create a new trainer.

    • Method Detail

      • addCount

        public void addCount​(DistributionTrainerContext dtc,
                             AtomicSymbol sym,
                             double times)
                      throws IllegalSymbolException

        Registers that sym was counted in this state.

        This method may be called multiple times with the same symbol. In this case, the times should be summed.

        Specified by:
        addCount in interface DistributionTrainer
        Parameters:
        dtc - the DistributionTrainerContext within which the count was added
        sym - the Symbol seen
        times - the number of times to add
        Throws:
        IllegalSymbolException - if sym is not recognised
      • getCount

        public double getCount​(DistributionTrainerContext dtc,
                               AtomicSymbol sym)
                        throws IllegalSymbolException

        Get the current count for this state.

        This method may be called multiple times with the same symbol. Each time it should return the agregate of the counts added with addCount since the last invocation of clearCounts.

        Specified by:
        getCount in interface DistributionTrainer
        Parameters:
        dtc - the DistributionTrainerContext within which the count was added
        sym - the Symbol seen
        Returns:
        the agregate of the counts
        Throws:
        IllegalSymbolException - if sym is not recognised
      • clearCounts

        public void clearCounts​(DistributionTrainerContext dtc)

        Clears all of the counts to zero.

        Specified by:
        clearCounts in interface DistributionTrainer
      • train

        public void train​(DistributionTrainerContext dtc,
                          double weight)
                   throws ChangeVetoException

        Trains the Distribution, given a null model.

        This will use the information collected with multiple addCount calls, and the null model to generate the new weights.

        This method should not modify the underlying counts.

        Specified by:
        train in interface DistributionTrainer
        Parameters:
        dtc - the context to use
        weight - how many lots of the null model to add
        Throws:
        ChangeVetoException - if the distribution could not have its weights modified
      • trainImpl

        protected void trainImpl​(DistributionTrainerContext dtc,
                                 double weight)