turicreate.evaluation.accuracy — Turi Create API 6.4.1 documentation (original) (raw)
turicreate.evaluation. accuracy(targets, predictions, average='micro')¶
Compute the accuracy score; which measures the fraction of predictions made by the classifier that are exactly correct. The score lies in the range [0,1] with 0 being the worst and 1 being the best.
| Parameters: | targets : SArray An SArray of ground truth class labels. Can be of any type except float. predictions : SArray The prediction that corresponds to each target value. This SArray must have the same length as targets and must be of the same type as thetargets SArray. average : string, [None, ‘micro’ (default), ‘macro’] Metric averaging strategies for multiclass classification. Averaging strategies can be one of the following: None: No averaging is performed and a single metric is returned for each class. ‘micro’: Calculate metrics globally by counting the total true positives, false negatives and false positives. ‘macro’: Calculate metrics for each label, and find their unweighted mean. This does not take label imbalance into account. For a more precise definition of micro and macro averaging refer to [1] below. |
|---|---|
| Returns: | out : float (for binary classification) or dict[float] (for multi-class, average=None) Score for the positive class (for binary classification) or an average score for each class for multi-class classification. Ifaverage=None, then a dictionary is returned where the key is the class label and the value is the score for the corresponding class label. |
References
- [1] Sokolova, Marina, and Guy Lapalme. “A systematic analysis of performance measures for classification tasks.” Information Processing & Management 45.4 (2009): 427-437.
Examples
Targets and Predictions
targets = turicreate.SArray([0, 1, 2, 3, 0, 1, 2, 3]) predictions = turicreate.SArray([1, 0, 2, 1, 3, 1, 0, 1])
Micro average of the accuracy score.
turicreate.evaluation.accuracy(targets, predictions, average = 'micro') 0.25
Macro average of the accuracy score.
turicreate.evaluation.accuracy(targets, predictions, average = 'macro') 0.24305555555555558
Accuracy score for each class.
turicreate.evaluation.accuracy(targets, predictions, average = None) {0: 0.0, 1: 0.4166666666666667, 2: 0.5555555555555556, 3: 0.0}
This metric also works when the targets are of type str
Targets and Predictions
targets = turicreate.SArray(["cat", "dog", "foosa", "cat", "dog"]) predictions = turicreate.SArray(["cat", "foosa", "dog", "cat", "foosa"])
Micro average of the accuracy score.
turicreate.evaluation.accuracy(targets, predictions, average = 'micro') 0.4
Macro average of the accuracy score.
turicreate.evaluation.accuracy(targets, predictions, average = 'macro') 0.6
Accuracy score for each class.
turicreate.evaluation.accuracy(targets, predictions, average = None) {'cat': 1.0, 'dog': 0.4, 'foosa': 0.4}
