MulticlassMetrics#
- class pyspark.mllib.evaluation.MulticlassMetrics(predictionAndLabels)[source]#
Evaluator for multiclass classification.
Added in version 1.4.0.
- Parameters:
- predictionAndLabels
pyspark.RDD an RDD of prediction, label, optional weight and optional probability.
- predictionAndLabels
Examples
>>> predictionAndLabels = sc.parallelize([(0.0, 0.0), (0.0, 1.0), (0.0, 0.0), ... (1.0, 0.0), (1.0, 1.0), (1.0, 1.0), (1.0, 1.0), (2.0, 2.0), (2.0, 0.0)]) >>> metrics = MulticlassMetrics(predictionAndLabels) >>> metrics.confusionMatrix().toArray() array([[ 2., 1., 1.], [ 1., 3., 0.], [ 0., 0., 1.]]) >>> metrics.falsePositiveRate(0.0) 0.2... >>> metrics.precision(1.0) 0.75... >>> metrics.recall(2.0) 1.0... >>> metrics.fMeasure(0.0, 2.0) 0.52... >>> metrics.accuracy 0.66... >>> metrics.weightedFalsePositiveRate 0.19... >>> metrics.weightedPrecision 0.68... >>> metrics.weightedRecall 0.66... >>> metrics.weightedFMeasure() 0.66... >>> metrics.weightedFMeasure(2.0) 0.65... >>> predAndLabelsWithOptWeight = sc.parallelize([(0.0, 0.0, 1.0), (0.0, 1.0, 1.0), ... (0.0, 0.0, 1.0), (1.0, 0.0, 1.0), (1.0, 1.0, 1.0), (1.0, 1.0, 1.0), (1.0, 1.0, 1.0), ... (2.0, 2.0, 1.0), (2.0, 0.0, 1.0)]) >>> metrics = MulticlassMetrics(predAndLabelsWithOptWeight) >>> metrics.confusionMatrix().toArray() array([[ 2., 1., 1.], [ 1., 3., 0.], [ 0., 0., 1.]]) >>> metrics.falsePositiveRate(0.0) 0.2... >>> metrics.precision(1.0) 0.75... >>> metrics.recall(2.0) 1.0... >>> metrics.fMeasure(0.0, 2.0) 0.52... >>> metrics.accuracy 0.66... >>> metrics.weightedFalsePositiveRate 0.19... >>> metrics.weightedPrecision 0.68... >>> metrics.weightedRecall 0.66... >>> metrics.weightedFMeasure() 0.66... >>> metrics.weightedFMeasure(2.0) 0.65... >>> predictionAndLabelsWithProbabilities = sc.parallelize([ ... (1.0, 1.0, 1.0, [0.1, 0.8, 0.1]), (0.0, 2.0, 1.0, [0.9, 0.05, 0.05]), ... (0.0, 0.0, 1.0, [0.8, 0.2, 0.0]), (1.0, 1.0, 1.0, [0.3, 0.65, 0.05])]) >>> metrics = MulticlassMetrics(predictionAndLabelsWithProbabilities) >>> metrics.logLoss() 0.9682...
Methods
call(name, *a)Call method of java_model
Returns confusion matrix: predicted classes are in columns, they are ordered by class label ascending, as in "labels".
fMeasure(label[, beta])Returns f-measure.
falsePositiveRate(label)Returns false positive rate for a given label (category).
logLoss([eps])Returns weighted logLoss.
precision(label)Returns precision.
recall(label)Returns recall.
truePositiveRate(label)Returns true positive rate for a given label (category).
weightedFMeasure([beta])Returns weighted averaged f-measure.
Attributes
Returns accuracy (equals to the total number of correctly classified instances out of the total number of instances).
Returns weighted false positive rate.
Returns weighted averaged precision.
Returns weighted averaged recall.
Returns weighted true positive rate.
Methods Documentation
- call(name, *a)#
Call method of java_model
- confusionMatrix()[source]#
Returns confusion matrix: predicted classes are in columns, they are ordered by class label ascending, as in “labels”.
Added in version 1.4.0.
- falsePositiveRate(label)[source]#
Returns false positive rate for a given label (category).
Added in version 1.4.0.
- truePositiveRate(label)[source]#
Returns true positive rate for a given label (category).
Added in version 1.4.0.
Attributes Documentation
- accuracy#
Returns accuracy (equals to the total number of correctly classified instances out of the total number of instances).
Added in version 2.0.0.
- weightedFalsePositiveRate#
Returns weighted false positive rate.
Added in version 1.4.0.
- weightedPrecision#
Returns weighted averaged precision.
Added in version 1.4.0.
- weightedRecall#
Returns weighted averaged recall. (equals to precision, recall and f-measure)
Added in version 1.4.0.
- weightedTruePositiveRate#
Returns weighted true positive rate. (equals to precision, recall and f-measure)
Added in version 1.4.0.