Package opennlp.tools.ml
Class BeamSearch
java.lang.Object
opennlp.tools.ml.BeamSearch
- All Implemented Interfaces:
SequenceClassificationModel
Performs k-best search over a sequence.
This is based on the description in Ratnaparkhi (1998), PhD diss, Univ. of Pennsylvania.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionBeamSearch(int size, MaxentModel model) Initializes aBeamSearchinstance.BeamSearch(int size, MaxentModel model, int cacheSize) Initializes aBeamSearchinstance. -
Method Summary
Modifier and TypeMethodDescription<T> SequencebestSequence(T[] sequence, Object[] additionalContext, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.<T> Sequence[]bestSequences(int numSequences, T[] sequence, Object[] additionalContext, double minSequenceScore, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.<T> Sequence[]bestSequences(int numSequences, T[] sequence, Object[] additionalContext, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.String[]
-
Field Details
-
BEAM_SIZE_PARAMETER
- See Also:
-
-
Constructor Details
-
BeamSearch
Initializes aBeamSearchinstance.- Parameters:
size- The size of the beam (k).model- TheMaxentModelfor assigning probabilities to the sequence outcomes.
-
BeamSearch
Initializes aBeamSearchinstance.- Parameters:
size- The size of the beam (k).model- TheMaxentModelfor assigning probabilities to the sequence outcomes.cacheSize- The capacity of theCacheto use.
-
-
Method Details
-
bestSequences
public <T> Sequence[] bestSequences(int numSequences, T[] sequence, Object[] additionalContext, double minSequenceScore, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.- Specified by:
bestSequencesin interfaceSequenceClassificationModel- Parameters:
numSequences- The number of sequences.sequence- The inputBeamSearchsequence.additionalContext- AnObjectof additional context. This is passed to the context generator blindly with the assumption that the context are appropriate.minSequenceScore- The minimum sequence score to use.cg- Thecontext generatorto use.validator- TheSequenceValidatorto validate sequences.- Returns:
- The top ranked
Sequenceof outcomes ornullif no sequence could be found.
-
bestSequences
public <T> Sequence[] bestSequences(int numSequences, T[] sequence, Object[] additionalContext, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.- Specified by:
bestSequencesin interfaceSequenceClassificationModel- Parameters:
numSequences- The number of sequences.sequence- The inputBeamSearchsequence.additionalContext- AnObjectof additional context. This is passed to the context generator blindly with the assumption that the context are appropriate.cg- Thecontext generatorto use.validator- TheSequenceValidatorto validate sequences.- Returns:
- The top ranked
Sequenceof outcomes ornullif no sequence could be found.
-
bestSequence
public <T> Sequence bestSequence(T[] sequence, Object[] additionalContext, BeamSearchContextGenerator<T> cg, SequenceValidator<T> validator) Computes the best sequence of outcomes based on theMaxentModel.- Specified by:
bestSequencein interfaceSequenceClassificationModel- Parameters:
sequence- The inputBeamSearchsequence.additionalContext- AnObjectof additional context. This is passed to the context generator blindly with the assumption that the context are appropriate.cg- Thecontext generatorto use.validator- TheSequenceValidatorto validate sequences.- Returns:
- The top ranked
Sequenceof outcomes ornullif no sequence could be found.
-
getOutcomes
- Specified by:
getOutcomesin interfaceSequenceClassificationModel- Returns:
- Retrieves all possible outcomes.
-