Class LibLinearClassificationModel
java.lang.Object
org.tribuo.Model<Label>
org.tribuo.common.liblinear.LibLinearModel<Label>
org.tribuo.classification.liblinear.LibLinearClassificationModel
- All Implemented Interfaces:
com.oracle.labs.mlrg.olcut.provenance.Provenancable<ModelProvenance>,Serializable
A
Model which wraps a LibLinear-java classification model.
It disables the LibLinear debug output as it's very chatty.
See:
Fan RE, Chang KW, Hsieh CJ, Wang XR, Lin CJ. "LIBLINEAR: A library for Large Linear Classification" Journal of Machine Learning Research, 2008.and for the original algorithm:
Cortes C, Vapnik V. "Support-Vector Networks" Machine Learning, 1995.
- See Also:
-
Field Summary
Fields inherited from class org.tribuo.common.liblinear.LibLinearModel
modelsFields inherited from class org.tribuo.Model
ALL_OUTPUTS, BIAS_FEATURE, featureIDMap, generatesProbabilities, name, outputIDInfo, provenance, provenanceOutput -
Method Summary
Modifier and TypeMethodDescriptionprotected LibLinearClassificationModelcopy(String newName, ModelProvenance newProvenance) Copies a model, replacing it's provenance and name with the supplied values.protected double[][]Extracts the feature weights from the models.getTopFeatures(int n) Gets the topnfeatures associated with this model.innerGetExcuse(Example<Label> e, double[][] allFeatureWeights) The call to model.getFeatureWeights in the public methods copies the weights array so this inner method exists to save the copy in getExcuses.Uses the model to predict the output for a single example.Methods inherited from class org.tribuo.common.liblinear.LibLinearModel
copyModel, getExcuse, getExcuses, getInnerModelsMethods inherited from class org.tribuo.Model
copy, generatesProbabilities, getFeatureIDMap, getName, getOutputIDInfo, getProvenance, innerPredict, predict, predict, setName, toString, validate
-
Method Details
-
predict
Description copied from class:ModelUses the model to predict the output for a single example.predict does not mutate the example.
Throws
IllegalArgumentExceptionif the example has no features or no feature overlap with the model. -
getTopFeatures
Description copied from class:ModelGets 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().- Specified by:
getTopFeaturesin classModel<Label>- 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
-
copy
Description copied from class:ModelCopies a model, replacing it's provenance and name with the supplied values.Used to provide the provenance removal functionality.
-
getFeatureWeights
Description copied from class:LibLinearModelExtracts the feature weights from the models. The first dimension corresponds to the model index.- Specified by:
getFeatureWeightsin classLibLinearModel<Label>- Returns:
- The feature weights.
-
innerGetExcuse
The call to model.getFeatureWeights in the public methods copies the weights array so this inner method exists to save the copy in getExcuses.If it becomes a problem then we could cache the feature weights in the model.
- Specified by:
innerGetExcusein classLibLinearModel<Label>- Parameters:
e- The example.allFeatureWeights- The feature weights.- Returns:
- An excuse for this example.
-