public class KMeansModel extends Model<ClusterID>
The predict method of this model assigns centres to the provided input, but it does not update the model's centroids.
The predict method is single threaded.
See:
J. Friedman, T. Hastie, & R. Tibshirani. "The Elements of Statistical Learning" Springer 2001. PDF
ALL_OUTPUTS, BIAS_FEATURE, featureIDMap, generatesProbabilities, name, outputIDInfo, provenance, provenanceOutput
Modifier and Type | Method and Description |
---|---|
protected KMeansModel |
copy(String newName,
ModelProvenance newProvenance)
Copies a model, replacing it's provenance and name with the supplied values.
|
List<List<Feature>> |
getCentroids()
Returns a list of features, one per centroid.
|
DenseVector[] |
getCentroidVectors()
Returns a copy of the centroids.
|
Optional<Excuse<ClusterID>> |
getExcuse(Example<ClusterID> 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<ClusterID> |
predict(Example<ClusterID> 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 DenseVector[] getCentroidVectors()
In most cases you should prefer getCentroids()
as
it performs the mapping from Tribuo's internal feature ids
to the externally visible feature names for you.
This method provides direct access to the centroid vectors
for use in downstream processing if the ids are not relevant
(or are known to match).
public List<List<Feature>> getCentroids()
This should be used in preference to getCentroidVectors()
as it performs the mapping from Tribuo's internal feature ids to
the externally visible feature names.
public Prediction<ClusterID> predict(Example<ClusterID> 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<ClusterID>
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<ClusterID>> getExcuse(Example<ClusterID> 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 KMeansModel copy(String newName, ModelProvenance newProvenance)
Model
Used to provide the provenance removal functionality.
Copyright © 2015–2021 Oracle and/or its affiliates. All rights reserved.