public interface DistributionTrainer
An object that can be used to train a distribution up.
This lets the distribution implementation handle counts or distributions in the best way possible.
Modifier and Type | Method and 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.
|
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.
dtc
- the DistributionTrainerContext within which the count was addedsym
- the Symbol seentimes
- the number of times to addIllegalSymbolException
- if sym is not recogniseddouble 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.
dtc
- the DistributionTrainerContext within which the count was addedsym
- the Symbol seenIllegalSymbolException
- if sym is not recognisedvoid 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.
dtc
- the context to useweight
- how many lots of the null model to addChangeVetoException
- if the distribution could not have its weights
modifiedvoid clearCounts(DistributionTrainerContext dtc)
Copyright © 2014 BioJava. All rights reserved.