Class LibSVMRegressionModel
- All Implemented Interfaces:
com.oracle.labs.mlrg.olcut.provenance.Provenancable<ModelProvenance>,Serializable,ONNXExportable,ProtoSerializable<org.tribuo.protos.core.ModelProto>
A regression model that uses an underlying libSVM model to make the
predictions. Contains an independent model for each output dimension.
See:
Chang CC, Lin CJ. "LIBSVM: a library for Support Vector Machines" ACM transactions on intelligent systems and technology (TIST), 2011.for the nu-svr algorithm:
Schölkopf B, Smola A, Williamson R, Bartlett P L. "New support vector algorithms" Neural Computation, 2000, 1207-1245.and for the original algorithm:
Cortes C, Vapnik V. "Support-Vector Networks" Machine Learning, 1995.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intProtobuf serialization version.Fields inherited from class org.tribuo.common.libsvm.LibSVMModel
modelsFields inherited from class org.tribuo.Model
ALL_OUTPUTS, BIAS_FEATURE, featureIDMap, generatesProbabilities, name, outputIDInfo, provenance, provenanceOutputFields inherited from interface org.tribuo.ONNXExportable
PROVENANCE_METADATA_FIELD, SERIALIZERFields inherited from interface org.tribuo.protos.ProtoSerializable
DESERIALIZATION_METHOD_NAME, PROVENANCE_SERIALIZER -
Method Summary
Modifier and TypeMethodDescriptionprotected LibSVMRegressionModelcopy(String newName, ModelProvenance newProvenance) Copies a model, replacing its provenance and name with the supplied values.static LibSVMRegressionModeldeserializeFromProto(int version, String className, com.google.protobuf.Any message) Deserialization factory.ai.onnx.proto.OnnxMl.ModelProtoexportONNXModel(String domain, long modelVersion) Exports thisModelas an ONNX protobuf.protected double[]getMeans()Accessor used in the tests.Returns the support vectors used for each dimension.protected double[]Accessor used in the tests.Uses the model to predict the output for a single example.org.tribuo.protos.core.ModelProtoSerializes this object to a protobuf.writeONNXGraph(ONNXRef<?> input) Methods inherited from class org.tribuo.common.libsvm.LibSVMModel
copyModel, deserializeModel, deserializeParameters, getExcuse, getInnerModels, getModel, getTopFeatures, modelEquals, serializeModel, serializeParametersMethods inherited from class org.tribuo.Model
castModel, copy, createDataCarrier, deserialize, deserializeFromFile, deserializeFromStream, generatesProbabilities, getExcuses, getFeatureIDMap, getName, getOutputIDInfo, getProvenance, innerPredict, predict, predict, serializeToFile, serializeToStream, setName, toString, validateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.tribuo.ONNXExportable
saveONNXModel, serializeProvenance
-
Field Details
-
CURRENT_VERSION
public static final int CURRENT_VERSIONProtobuf serialization version.- See Also:
-
-
Method Details
-
deserializeFromProto
public static LibSVMRegressionModel deserializeFromProto(int version, String className, com.google.protobuf.Any message) throws com.google.protobuf.InvalidProtocolBufferException Deserialization factory.- Parameters:
version- The serialized object version.className- The class name.message- The serialized data.- Returns:
- The deserialized object.
- Throws:
com.google.protobuf.InvalidProtocolBufferException- If the protobuf could not be parsed from themessage.
-
getNumberOfSupportVectors
-
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. -
getMeans
protected double[] getMeans()Accessor used in the tests. May be considered to be made public.- Returns:
- The means used for standardization.
-
getVariances
protected double[] getVariances()Accessor used in the tests. May be considered to be made public.- Returns:
- The variances used for standardization.
-
copy
Description copied from class:ModelCopies a model, replacing its provenance and name with the supplied values.Used to provide the provenance removal functionality.
-
exportONNXModel
Description copied from interface:ONNXExportableExports thisModelas an ONNX protobuf.- Specified by:
exportONNXModelin interfaceONNXExportable- Parameters:
domain- A reverse-DNS name to namespace the model (e.g., org.tribuo.classification.sgd.linear).modelVersion- A version number for this model.- Returns:
- The ONNX ModelProto representing this Tribuo Model.
-
writeONNXGraph
Description copied from interface:ONNXExportable- Specified by:
writeONNXGraphin interfaceONNXExportable- Parameters:
input- The input to the model graph.- Returns:
- the output node of the model graph.
-
serialize
public org.tribuo.protos.core.ModelProto serialize()Description copied from interface:ProtoSerializableSerializes this object to a protobuf.- Specified by:
serializein interfaceProtoSerializable<org.tribuo.protos.core.ModelProto>- Overrides:
serializein classModel<Regressor>- Returns:
- The protobuf.
-