【发布时间】:2018-09-13 14:22:33
【问题描述】:
我正在使用来自pyspark.ml.classification 的RandomForestClassifier
我在二进制类数据集上运行模型并显示概率。
我在 col 概率中有以下内容:
+-----+----------+---------------------------------------+
|label|prediction|probability |
+-----+----------+---------------------------------------+
|0.0 |0.0 |[0.9005918461098429,0.0994081538901571]|
|1.0 |1.0 |[0.6051335859900139,0.3948664140099861]|
+-----+----------+---------------------------------------+
我有一个包含 2 个元素的列表,这些元素显然对应于预测类别的概率。
我的问题:probability[0 始终对应于预测值,而在 spark 文档中不清楚!
【问题讨论】:
-
我同意,文档不清楚+1。
-
我会观察到每个概率元组中两个数字的总和为 1。我的猜测是,例如对于
0.0,模型在 90% 的情况下都是正确的,并且10% 的时候它弄错了。 -
概率对应于连续的标签,所以如果你在实践中看到第二行,那就是一个错误。在这种情况下,欢迎 minimal reproducible example 和/或 JIRA 票证。
-
@user6910411 您的意思是 Probability[0] 始终用于一个类,而 Probabiity[1] 用于另一类。如何判断哪个概率是哪个类和第二个问题为什么 row2 是一个错误。谢谢!
-
它是
[P(label=i) for i in 0..#labels],不依赖于预测。仅当您使用非标准阈值(首选标签 = 1)时,您的情况才有可能。或者这是一个错误。如果没有 MCVE,一种方法或另一种问题是没有用的。
标签: apache-spark machine-learning pyspark random-forest data-science