Skip to content

相关性不等于预测性

Correlation != Predictiveness

相关性(correlation)衡量的是两个特征之间线性(或单调)变化的程度。

ds p343 1

这使得相关性是对称的:corr(A, B) = corr(B, A)。然而,关联往往是不对称的。例如,给定一个日期,很容易判断出对应的月份;但给定一个月份,你永远无法确定具体的日期。

ds p343 2

相关性由于是对称的,完全忽略了这一概念。更何况,它并不用来衡量一个特征对结果变量的预测能力,如下图所示:

ds p343 3

然而,它有时会被误读为一种“预测性”的度量。最后,相关性大多局限于数值型数据。但分类数据对于预测模型同样重要。预测力得分(Predictive Power Score,PPS)正是为了解决上述每一个局限而提出的。顾名思义,它衡量的是一个特征的预测能力。它的计算方式如下:

  • 如果目标变量 (b) 是数值型:
    • 训练一个用 a 来预测 b 的决策树回归器(Decision Tree Regressor)。
    • 将其 MAE 与基线模型(中位数预测)的 MAE 进行比较,得到 PPS。
  • 如果目标变量 (b) 是分类型:
    • 训练一个用 a 来预测 b 的决策树分类器(Decision Tree Classifier)。
    • 将其 F1 与基线模型(随机预测或最频繁类预测)的 F1 进行比较,从而得到 PPS。因此,PPS:
  • 是不对称的,即 PPS(a, b) != PPS(b, a)。
  • 可以用于分类目标 (b)。

ds p344 1

ds p344 2

  • 可以用来衡量分类特征 (a) 的预测能力。
  • 对线性和非线性关系都适用。
  • 对单调和非单调关系都适用。

从下图中可以清楚看出它的有效性。对于下列三个数据集:

ds p345 1

  • 相关性都很低。
  • PPS (x → y) 都很高。
  • PPS (y → x) 都为零。

话虽如此,需要注意相关性也有它的用武之地。在 PPS 与相关性之间做选择时,首先要明确你希望从数据中了解什么:

  • 你想了解两个变量之间整体的单调趋势吗?相关性会帮上忙。
  • 你想了解一个特征的预测性吗?PPS 会帮上忙。

PPS 入门请见:https://github.com/8080labs/ppscore。

本站内容仅供学习交流,版权归原作者所有。