Pyspark中的预测概率列排序如何工作?

时间:2018-09-27 12:39:04

标签: apache-spark pyspark logistic-regression multinomial multiclass-classification

相对较新的用户。在Pyspark中,建模后如何对预测的列进行排序。例如,在三类情况下,假设您的目标标签是0, 1, 2"low", "moderate", "large"。您可以通过比较“概率”和“预测”列来肯定地推断出这一点-似乎Spark按升序排列它们-但是手动检查效率很低。

对于一般的编码方式,我有些困惑。我已经读到,这可能会发生,具体取决于类的大小或类的数字/文本顺序。任何人都可以在上面遮荫吗?

我在下面提供代码-数据来自Spark本身。

from pyspark.ml.classification import LogisticRegression

# Load training data
dat = spark \
    .read \
    .format("libsvm") \
  .load("data/mllib/sample_multiclass_classification_data.txt")

lr = LogisticRegression(maxIter=10, regParam=0.3, elasticNetParam=0.8)

# generate the train/test split.
(train, test) = dat.randomSplit([0.8, 0.2])

# Fit the model
lrModel = lr.fit(train)

# score the model on test data.
prediction = lrModel.transform(test)

prediction.select("probability", "prediction").show(5, False)

0 个答案:

没有答案