预测流失的生存模型 - 时变预测变量?

机器算法验证 生存 预测模型 搅拌
2022-01-29 00:05:35

我正在寻求建立一个预测模型来预测客户流失,并希望使用适合个人周期训练数据集的离散时间生存模型(每个客户一行和他们面临风险的离散时期,事件指标 - 等于 1如果流失发生在那个时期,否则为 0)。

  • 我使用Singer 和 Willet 的技术使用普通逻辑回归拟合模型。
  • 客户流失可能在一个月内的任何地方发生,但只有在月底我们才知道(即在他们离开的那个月的某个时间)。24 个月用于培训。
  • 使用的时间变量是样本的原始时间——截至 2008 年 12 月 31 日所有活跃的客户——截至 2009 年 1 月,他们都收到 t=0(不是经典的做法,但我相信构建时的方式预测模型与传统统计模型)。使用的协变量是客户在该时间点的任期。
  • 构建了一系列协变量——一些不会在数据集的行中发生变化(对于给定的客户),而另一些会发生变化。

  • 这些时变协变量是问题所在,是什么导致我质疑流失预测的生存模型(与基于当前快照数据预测未来 x 个月内流失的常规分类器相比)。时不变的描述前一个月的活动,预计是重要的触发因素。

这个预测模型的实现,至少基于我目前的想法,是在每个月底对客户群进行评分,计算下个月某个时候流失的概率/风险。然后在接下来的 1,2 或 3 个月内再次。然后在接下来的 1、2、3、4、5、6 个月。对于 3 个月和 6 个月的流失概率,我将使用估计的生存曲线。

问题:

在考虑评分时,我如何结合时变预测变量?似乎我只能用时不变的预测器得分,或者包括那些时不变的,你必须让它们时不变——设置为“现在”的值。

有人对这种生存模型的使用有经验或想法吗?

基于@JVM评论

的更新:问题不在于估计模型、解释系数、使用训练数据绘制有趣协变量值的危险/生存图等。问题在于使用模型来预测给定客户的风险。比如说在这个月底,我想给所有仍然是这个模型的活跃客户的人打分。我想预测 x 个时期的风险估计(下个月底关闭账户的风险。从现在起两个月底关闭账户的风险,等等)。如果存在随时间变化的协变量,它们的值在任何未来时期都是未知的,那么如何利用该模型?

最终更新:

人员周期数据集将为每个人以及他们面临风险的每个时间段提供一个条目。假设有 J 个时间段(可能 J =1...24 24 个月)假设我构建了一个离散时间生存模型,为简单起见,我们只是将时间 T 视为线性并有两个协变量 X 和 Z,其中 X 是时间-不变量,这意味着它在第 i 个人的每个时期都是恒定的,而 Z 是随时间变化的,这意味着第 i 个人的每条记录都可以采用不同的值。例如,X 可能是客户性别,Z 可能是他们上个月对公司的价值。第 i 个人在第 j 个时间段内的风险的 logit 模型为:

logit(h(tij))=α0+α1Tj+β1Xi+β2Zij

所以问题是,当使用随时间变化的协变量,并使用新数据进行预测(到未知的未来)时,Zj是未知的。

我能想到的唯一解决方案是:

  • 不要使用像 Z 这样的随时间变化的协变量。这会极大地削弱模型来预测流失事件,尽管例如,看到 Z 的下降会告诉我们客户正在脱离并可能准备离开。
  • 使用时变协变量但滞后它们(就像上面的 Z 一样),这使我们能够预测出我们滞后变量的多少时期(再次考虑模型对新当前数据的评分)。
  • 使用随时间变化的协变量,但在预测中将它们保持为常数(因此该模型适用于变化的数据,但对于预测,我们将它们保持不变并模拟这些值的变化(如果后来实际观察到)将如何影响流失风险。
  • 使用随时间变化的协变量,但根据已知数据的预测估算它们的未来值。例如预测Zj对于每个客户。
2个回答

在我看来,有两种生存分析范式可以使用。Cox 回归框架允许随时间变化的协变量,并将根据相对于平均取消水平的任何特定协变量集对取消风险进行估计。具有泊松误差的 glm 框架也是比例风险模型,特别适用于离散区间。JVM 指出,在当月使用不完整数据时可能会出现错误,但我得到的感觉是,您需要一个以协变量或一组协变量的最新值为条件的估计。更好地描述数据情况可以产生更好的工作示例......

谢谢你的澄清,B_Miner。我自己并没有做太多的预测,所以对接下来的事情持怀疑态度。这至少是我对数据的第一次切割。

  • 首先,制定和估计一个模型来解释你的 TVC。做所有的交叉验证、错误检查等,以确保你有一个合适的数据模型。
  • 其次,制定和估计生存模型(无论何种风格)。做所有的交叉验证、错误检查,以确保这个模型也是合理的。
  • 第三,确定一种使用 TVCs 模型的预测作为预测客户流失风险的基础的方法以及您想要的任何其他风险。再次使用您的样本验证预测是否合理。

一旦你有了一个你认为合理的模型,我会建议引导数据作为将第一个 TVC 模型中的错误合并到第二个模型中的一种方式。基本上,应用步骤 1-3 N 次,每次都从数据中获取引导样本并生成一组预测。当您有合理数量的预测时,以您认为适合您任务的任何方式对其进行总结;例如,提供每个个体或感兴趣的协变量概况的平均流失风险以及 95% 的置信区间。