Class LogMulticlass
java.lang.Object
org.tribuo.classification.sgd.objectives.LogMulticlass
- All Implemented Interfaces:
com.oracle.labs.mlrg.olcut.config.Configurable
,com.oracle.labs.mlrg.olcut.provenance.Provenancable<com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance>
,LabelObjective
,SGDObjective<Integer>
A multiclass version of the log loss.
Generates a probabilistic model, and uses an ExpNormalizer
.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionGenerates a newVectorNormalizer
which normalizes the predictions into [0,1].com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance
boolean
Returns true.lossAndGradient
(Integer truth, SGDVector prediction) toString()
valueAndGradient
(int truth, SGDVector prediction) Deprecated.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.oracle.labs.mlrg.olcut.config.Configurable
postConfig
-
Constructor Details
-
LogMulticlass
public LogMulticlass()Constructs a multiclass log loss.
-
-
Method Details
-
valueAndGradient
@Deprecated public com.oracle.labs.mlrg.olcut.util.Pair<Double,SGDVector> valueAndGradient(int truth, SGDVector prediction) Deprecated.Description copied from interface:LabelObjective
Scores a prediction, returning the loss and a vector of per label gradients.- Specified by:
valueAndGradient
in interfaceLabelObjective
- Parameters:
truth
- The true label id.prediction
- The prediction for each label id.- Returns:
- The score and per label gradient.
-
lossAndGradient
public com.oracle.labs.mlrg.olcut.util.Pair<Double,SGDVector> lossAndGradient(Integer truth, SGDVector prediction) Returns aPair
ofDouble
andSGDVector
representing the loss and per label gradients respectively.The prediction vector is transformed to produce the per label gradient and returned.
- Specified by:
lossAndGradient
in interfaceLabelObjective
- Specified by:
lossAndGradient
in interfaceSGDObjective<Integer>
- Parameters:
truth
- The true label idprediction
- The prediction for each label id- Returns:
- A Pair of the score and per label gradient.
-
getNormalizer
Description copied from interface:LabelObjective
Generates a newVectorNormalizer
which normalizes the predictions into [0,1].- Specified by:
getNormalizer
in interfaceLabelObjective
- Returns:
- The vector normalizer for this objective.
-
isProbabilistic
public boolean isProbabilistic()Returns true.- Specified by:
isProbabilistic
in interfaceLabelObjective
- Returns:
- True.
-
toString
-
getProvenance
public com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance getProvenance()- Specified by:
getProvenance
in interfacecom.oracle.labs.mlrg.olcut.provenance.Provenancable<com.oracle.labs.mlrg.olcut.provenance.ConfiguredObjectProvenance>
-