在 Spark 中计算逻辑回归系数的标准误差

Calculating Standard Error of Coefficients for Logistic Regression in Spark

我知道之前有人问过这个问题 here。但我找不到正确的答案。前面 post 中提供的答案建议使用 Statistics.chiSqTest(data) 提供拟合优度检验(Pearson 的卡方检验),而不是用于系数显着性的 Wald 卡方检验。

我试图在 Spark 中为逻辑回归建立参数估计 table。我能够获得系数和截距,但找不到 spark API 来获得系数的标准误差。我看到系数标准误差在线性模型中作为模型摘要的一部分可用。但是 Logistic 回归模型摘要没有提供这个。部分示例代码如下

import org.apache.spark.ml.classification.{BinaryLogisticRegressionSummary, LogisticRegression}

val lr = new LogisticRegression()
  .setMaxIter(10)
  .setRegParam(0.3)
  .setElasticNetParam(0.8)

// Fit the model
val lrModel = lr.fit(training) // Assuming training is my training dataset

val trainingSummary = lrModel.summary
val binarySummary = trainingSummary.asInstanceOf[BinaryLogisticRegressionSummary] // provides the summary information of the fitted model

有没有办法计算系数的标准误差。 (或获取系数的方差-协方差矩阵,从中我们可以得到标准误差)

您需要将 GLM 方法与 Binomial+Logit 一起使用,而不是 LogisticRegression。

https://spark.apache.org/docs/2.1.1/ml-classification-regression.html#generalized-linear-regression