首页 > 解决方案 > 在多项逻辑回归中解释系数矩阵、截距向量和混淆矩阵

问题描述

任何人都可以解释如何解释coefficientMatrix,,interceptVector Confusion matrix

一个multinomial logistic regression

根据 Spark 文档:

通过多项逻辑 (softmax) 回归支持多类分类。在多项逻辑回归中,该算法生成 K 组系数,或维度为 K×J 的矩阵,其中 K 是结果类的数量,J 是特征的数量。如果算法适合截距项,则长度为 K 的截距向量可用。

我使用 spark ml 2.3.0 翻了一个例子,得到了这个结果。

在此处输入图像描述.

如果我分析我得到的:

coefficientMatrix尺寸为5 * 11

interceptVector尺寸为5

如果是这样,为什么 the Confusion matrix有一个维度4 * 4

另外,任何人都可以解释coefficientMatrix,interceptVector 吗?

为什么我得到负系数?

如果 5 是分类后的类数,为什么我得到 4 行the confusion matrix

编辑

我忘了提到我仍然是机器学习的初学者,我在谷歌上的搜索没有帮助,所以也许我得到了赞成票:)

标签: apache-sparkclassificationlogistic-regressionapache-spark-mlconfusion-matrix

解决方案


关于 4x4 混淆矩阵:我想当您将数据拆分为测试和训练时,您的训练集中有 5 个类,而测试集中只有 4 个类。如果响应变量的分布不平衡,这很容易发生。
在建模之前,您需要尝试在测试和训练之间进行一些分层拆分。如果您正在使用 pyspark,您可能会发现此库很有帮助:https ://github.com/databricks/spark-sklearn

现在关于多类 Logistic 回归的负系数:正如您所提到的,您返回的 coefficientMatrix 形状是 5x11。Spark 通过一对多的方法生成了五个模型。第一个模型对应于正类是第一个标签的模型,负类是由所有其他标签组成的。假设这个模型的第一个系数是-2.23。为了解释这个系数,我们采用 -2.23 的指数,即(大约)0.10。此处的解释:“随着第一个特征增加一个单位,我们预计正面标签的几率会降低 90%”


推荐阅读