public class MultinomialNaiveBayesModel extends Model<Label>
Model
for multinomial Naive Bayes with Laplace smoothing.
All feature values must be non-negative, otherwise it will throw IllegalArgumentException.
See:
Wang S, Manning CD. "Baselines and Bigrams: Simple, Good Sentiment and Topic Classification" Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics, 2012.
ALL_OUTPUTS, BIAS_FEATURE, featureIDMap, generatesProbabilities, name, outputIDInfo, provenance, provenanceOutput
Modifier and Type | Method and Description |
---|---|
protected MultinomialNaiveBayesModel |
copy(String newName,
ModelProvenance newProvenance)
Copies a model, replacing it's provenance and name with the supplied values.
|
Optional<Excuse<Label>> |
getExcuse(Example<Label> example)
Generates an excuse for an example.
|
Map<String,List<com.oracle.labs.mlrg.olcut.util.Pair<String,Double>>> |
getTopFeatures(int n)
Gets the top
n features associated with this model. |
Prediction<Label> |
predict(Example<Label> example)
Uses the model to predict the output for a single example.
|
copy, generatesProbabilities, getExcuses, getFeatureIDMap, getName, getOutputIDInfo, getProvenance, innerPredict, predict, predict, setName, toString, validate
public Prediction<Label> predict(Example<Label> example)
Model
predict does not mutate the example.
Throws IllegalArgumentException
if the example has no features
or no feature overlap with the model.
public Map<String,List<com.oracle.labs.mlrg.olcut.util.Pair<String,Double>>> getTopFeatures(int n)
Model
n
features 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()
.
getTopFeatures
in class Model<Label>
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.public Optional<Excuse<Label>> getExcuse(Example<Label> example)
Model
This attempts to explain a classification result. Generating an excuse may be quite an expensive operation.
This excuse either contains per class information or an entry with key Model.ALL_OUTPUTS.
The optional is empty if the model does not provide excuses.
protected MultinomialNaiveBayesModel copy(String newName, ModelProvenance newProvenance)
Model
Used to provide the provenance removal functionality.
Copyright © 2015–2021 Oracle and/or its affiliates. All rights reserved.