0

我有一个 LR 模型,并在 testData 上对其进行测试。现在我应该计算结果的精度。

我可以得到精度:

 val precision = metrics.precision 
 precision: Double = 0.9801503759398497

并且

 // Precision by labels
 Precision(0.0) = 0.9979625101874491
 Precision(1.0) = 0.9299655568312285

从 spark MLLIB 中,第一个精度被定义为整体统计。

但这也令人困惑,精度和标签精度之间有什么区别?(精度定义为 TRUE 预测率)。

4

1 回答 1

0

对于向量数据,您正在处理值向量,因此您可能不仅要计算正确/错误预测整个向量的精度,还要计算向量的每个分量(标签)的精度。

来自Apache Spark 文档

总体精度衡量所有标签的精度 - 任何类别被正确预测的次数(真阳性)由数据点的数量标准化。按标签的精度仅考虑一个类别,并测量特定标签被正确预测的次数,通过该标签出现在输出中的次数进行归一化。

于 2016-03-09T11:39:06.317 回答