当结果变量拆分为 5% - 95% 时,逻辑回归是否存在偏差?

机器算法验证 物流 造型
2022-03-24 16:44:26

我正在为公用事业客户使用逻辑回归构建倾向模型。我担心的是,在总样本中,我的“坏”账户只有 5%,其余的都很好。我预测“不好”。

  • 结果会不会有偏差?
  • 建立一个好的模型的最佳“坏到好比例”是什么?
4个回答

我不同意评论中的其他答案,所以我给出自己的答案是公平的。为响应(好/坏帐户),为协变量。YX

对于逻辑回归,模型如下:

log(p(Y=1|X=x)p(Y=0|X=x))=α+i=1kxiβi

考虑如何收集数据:

  • 您可以从一些假设的“总体”中随机选择观察结果
  • 您可以根据选择数据,并查看的值。XY

对于上述模型,这两者都可以,因为您只是对的分布进行建模。这些将被称为前瞻性研究Y|X

或者:

  • 您可以根据的相对流行度(即您正在对进行分层)。这称为回顾性病例对照研究YXY

(您也可以根据的某些变量来选择数据:这将是一个分层的病例对照研究,并且使用起来要复杂得多,所以我不会在这里讨论)。YX

流行病学有一个很好的结果(参见Prentice 和 Pyke (1979)),对于病例对照研究,可以通过逻辑回归找到β

那么这与您的问题有什么关系呢?

好吧,这意味着如果您能够收集更多数据,您可以只查看坏账并仍然使用逻辑回归来估计的(但您需要调整以解决过度 -表示)。假设每个额外帐户花费 1 美元,那么这可能比简单地查看所有帐户更具成本效益。βiα

但另一方面,如果您已经拥有所有可能的数据,则没有必要进行分层:您只会丢弃数据(给出更差的估计值),然后留下试图估计的问题。α

渐近地,正负模式的比率基本上是不相关的。问题主要出现在少数类别的样本太少而无法充分描述其统计分布时。使数据集更大通常可以解决问题(在可能的情况下)。

如果这是不可能的,最好的办法是重新采样数据以获得平衡的数据集,然后对分类器的输出应用乘法调整,以补偿训练集和操作相对类频率之间的差异。虽然您可以计算(渐近的)最佳调整因子,但实际上最好使用交叉验证来调整调整(因为我们正在处理有限的实际案例而不是渐近案例)。

在这种情况下,我经常使用一个模型委员会,其中每个模型都接受了所有少数模式和与少数模式相同大小的多数模式的不同随机样本的训练。这可以防止在选择多数模式的单个子集时运气不佳。

理论上,如果“好”和“坏”的比例在大小上大致相似,您将能够更好地区分。您可以通过分层抽样、过度抽样不良案例然后重新加权以稍后返回真实比例来实现这一目标。

这会带来一些风险。特别是您的模型可能会将个人标记为“潜在不良” - 大概是那些在到期时可能不支付水电费的人。正确识别执行此操作时错误的影响很重要:特别是有多少“好客户”将被模型标记为“潜在不良”,如果您没有扭曲您的分层抽样模型。

您可以通过多种方式考虑逻辑回归。我最喜欢的方法是认为您的响应变量遵循概率为的伯努利分布。反过来,一个更正式地说:yipipi

yiBernoulli(pi)
pi=logit1(a+b1x1+...+bnxn)
其中logit1=exp(X)1+exp(x)

现在,您的失败比例低(坏账)是否重要?不是真的,只要你的样本数据是平衡的,正如一些人已经指出的那样。但是,如果您的数据不平衡,那么如果您没有考虑某些选择效果,那么获取更多数据可能几乎没有用。在这种情况下,您应该使用匹配,但缺乏平衡可能会使匹配变得毫无用处。另一种策略是尝试找到一个自然实验,因此您可以使用工具变量或回归不连续性设计。

最后但并非最不重要的一点是,如果您有平衡的样本或没有选择偏差,您可能会担心坏账很少见。我不认为 5% 是罕见的,但以防万一,请查看Gary King关于运行罕见事件逻辑的论文。在 Zelig 包中,在 R 中,您可以运行罕见的事件逻辑。