Apache spark 如何获得Spark朴素贝叶斯分类器中类的概率?

Apache spark 如何获得Spark朴素贝叶斯分类器中类的概率?,apache-spark,apache-spark-mllib,naivebayes,Apache Spark,Apache Spark Mllib,Naivebayes,我正在Spark中训练一个朴素的BayesModel,但是当我使用它预测一个新实例时,我需要得到每个类的概率。我在NaiveBayesModel中查看了predict函数的代码,并得出以下代码: val thetaMatrix = new DenseMatrix (model.labels.length,model.theta(0).length,model.theta.flatten,true) val piVector = new DenseVector(model.pi) //val pr

我正在Spark中训练一个朴素的BayesModel,但是当我使用它预测一个新实例时,我需要得到每个类的概率。我在NaiveBayesModel中查看了predict函数的代码,并得出以下代码:

val thetaMatrix = new DenseMatrix (model.labels.length,model.theta(0).length,model.theta.flatten,true)
val piVector = new DenseVector(model.pi)
//val prob = thetaMatrix.multiply(test.features)

val x = test.map {p =>       
  val prob = thetaMatrix.multiply(p.features)          
  BLAS.axpy(1.0, piVector, prob)
  prob
}
这工作正常吗?行
BLAS.axpy(1.0,piVector,prob)
不断给我一个错误,即找不到值“axpy”。

在最近的一次测试中,该值被添加到Spark主干中,并将在Spark 1.5(关闭)中释放。因此,你可以打电话

def预测概率(testData:RDD[Vector]):RDD[Vector]


def predictprobability(testData:Vector):Vector

或者是否有任何方法可以使用pi和thetaHi计算概率。我也面临同样的问题。但是,我无法升级到Spark 1.5。我必须坚持Spark 1.1.0。您能否提供一些有关如何在Spark 1.1.0中实现此功能的提示?