Class SequenceModel<T extends Output<T>>
java.lang.Object
org.tribuo.sequence.SequenceModel<T>
- Type Parameters:
T- the type of the outputs used to train the model.
- All Implemented Interfaces:
com.oracle.labs.mlrg.olcut.provenance.Provenancable<ModelProvenance>,Serializable
- Direct Known Subclasses:
ConfidencePredictingSequenceModel,IndependentSequenceModel,TensorFlowSequenceModel,ViterbiModel
public abstract class SequenceModel<T extends Output<T>>
extends Object
implements com.oracle.labs.mlrg.olcut.provenance.Provenancable<ModelProvenance>, Serializable
A prediction model, which is used to predict outputs for unseen instances.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ImmutableFeatureMapprotected Stringprotected final ImmutableOutputInfo<T> protected final String -
Constructor Summary
ConstructorsConstructorDescriptionSequenceModel(String name, ModelProvenance provenance, ImmutableFeatureMap featureIDMap, ImmutableOutputInfo<T> outputIDMap) Builds a SequenceModel. -
Method Summary
Modifier and TypeMethodDescriptionGets the feature domain.getName()Gets the model name.Gets the output domain.getTopFeatures(int n) Gets the topnfeatures associated with this model.List<List<Prediction<T>>> predict(Iterable<SequenceExample<T>> examples) Uses the model to predict the output for multiple examples.List<List<Prediction<T>>> predict(SequenceDataset<T> examples) Uses the model to predict the labels for multiple examples contained in a data set.abstract List<Prediction<T>> predict(SequenceExample<T> example) Uses the model to predict the output for a single example.voidSets the model name.toMaxLabels(List<Prediction<T>> predictions) Extracts a list of the predicted outputs from the list of prediction objects.toString()booleanValidates that this Model does in fact support the supplied output type.
-
Field Details
-
name
-
provenanceOutput
-
featureIDMap
-
outputIDMap
-
-
Constructor Details
-
SequenceModel
public SequenceModel(String name, ModelProvenance provenance, ImmutableFeatureMap featureIDMap, ImmutableOutputInfo<T> outputIDMap) Builds a SequenceModel.- Parameters:
name- The model name.provenance- The model provenance.featureIDMap- The feature domain.outputIDMap- The output domain.
-
-
Method Details
-
validate
Validates that this Model does in fact support the supplied output type.As the output type is erased at runtime, deserialising a Model is an unchecked operation. This method allows the user to check that the deserialised model is of the appropriate type, rather than seeing if
predict(org.tribuo.sequence.SequenceExample<T>)throws aClassCastExceptionwhen called.- Parameters:
clazz- The class object to verify the output type against.- Returns:
- True if the output type is assignable to the class object type, false otherwise.
-
getName
-
setName
-
getProvenance
-
toString
-
getFeatureIDMap
-
getOutputIDInfo
-
predict
Uses the model to predict the output for a single example.- Parameters:
example- the example to predict.- Returns:
- the result of the prediction.
-
predict
Uses the model to predict the output for multiple examples.- Parameters:
examples- the examples to predict.- Returns:
- the results of the prediction, in the same order as the examples.
-
predict
Uses the model to predict the labels for multiple examples contained in a data set.- Parameters:
examples- the data set containing the examples to predict.- Returns:
- the results of the predictions, in the same order as the data set generates the example.
-
getTopFeatures
public abstract Map<String, List<com.oracle.labs.mlrg.olcut.util.Pair<String,Double>>> getTopFeatures(int n) Gets the topnfeatures associated with this model.If the model does not produce per output feature lists, it returns a map with a single element with key Model.ALL_OUTPUTS.
If the model cannot describe it's top features then it returns
Collections.emptyMap().- Parameters:
n- the number of features to return. If this value is less than 0, all features should be returned for each class, unless the model cannot score it's features.- Returns:
- a map from string outputs to an ordered list of pairs of feature names and weights associated with that feature in the model
-
toMaxLabels
Extracts a list of the predicted outputs from the list of prediction objects.- Type Parameters:
T- The prediction type.- Parameters:
predictions- The predictions.- Returns:
- A list of predicted outputs.
-