如何测量 ML 任务中协变量的信息?

数据挖掘 机器学习 信息论
2022-03-14 15:15:29

背景

最近,我做了 2 个不同的 ML 项目。

一个是借贷俱乐部贷款预测,另一个是在线实验领域的个人数据集,用于预测客户是否会接受治疗。

这两个任务都是具有 100+M 观察和一百个协变量的二元分类。但是,我的借贷俱乐部模型的PR-ROC(0.86)非常高,这说明模型的性能很好。我的在线实验模型受到影响,只有 0.03 PR-AUC。该模型是无用的。

我试图向我的领导解释数据集信息量太少,这就是我的项目失败的真正原因。我使用低度量分数(PR-AUC = 0.03)和高损失函数值作为证明来证明我构建的模型是无用的。

问题

后来,我遇到了一个问题,无论我们构建的模型如何,我们如何衡量协变量中包含的信息?

如果我们使用线性模型执行回归任务,我们可以使用RMSE, AIC,BIC来选择一个模型,选择最能挖掘协变量的最佳模型。如果我们像以前一样执行二进制分类 ML 任务,我们可以使用F1,ROCPR-ROC指标等。我认为这些指标有助于我们比较模型性能而不是潜在的数据质量

我想要的解决方案类似于entropy例如,我们可以计算 2 个概率分布之间或协变量和目标标签之间的熵。熵向我们展示了协变量和标签之间的关系强度。有没有更好的解决方案来衡量协变量中包含的信息?

我是统计学的毕业生,如果你们能提供任何学习资源,非常感谢!

1个回答

信息论中存在熵的概念它实际上与协方差密切相关,尤其是协方差矩阵行列式(我不记得实际的数学联系,但我认为这应该是谷歌可以找到的东西)。

从那时起,您可以使用一些基于数据集相关矩阵的指标您可以使用它的行列式(低行列式意味着高度相关的数据),但分析起来并不总是那么容易(2 个完全相关的特征会将行列式值降至 0)。相关矩阵特征值的分布肯定会提供更详细的见解(多个低特征值将意味着大量相关特征)。

另一个强大且数学较少的解决方案是在数据集上计算 PCA给自己一个解释方差的阈值(例如 95%),并计算达到这个解释方差需要多少主成分。这样的数量少将意味着低“质量”数据。