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


17

我正在寻找一个用于预测客户流失的预测模型,并希望使用一个适合于个人期间训练数据集的离散时间生存模型(每个客户一行,他们处于危险状态的离散时期,带有事件指标–等于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是时间-不变,这意味着第一个人在每个周期中都是恒定的,并且Z是随时间变化的,这意味着第一个人的每个记录都可以采用不同的值。例如,X可能是客户性别,Z可能是上个月他们对公司的价值。第j个时间段中第i个人的危害的logit模型为:

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

因此,问题在于,当使用时变协变量并使用新数据进行预测(到尚未看到的未来)时,是未知的。Zj

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

  • 不要使用像Z这样的时变协变量。这会大大削弱模型来预测搅动事件,尽管例如,因为看到Z的减少会告诉我们客户正在脱离并可能准备离开。
  • 使用随时间变化的协变量但滞后(如Z在上方),这使我们能够预测出我们滞后了变量的多个周期(再次考虑对新的当前数据进行评分的模型)。
  • 使用随时间变化的协变量,但在预测中将其保留为常数(因此,该模型适合于变化的数据,但对于预测,我们将其保留为常数,并模拟这些值的变化(如果稍后实际观察到的话)将如何影响搅动风险。
  • 使用时变协变量,但根据已知数据的预测来估算其未来值。例如,预测每个客户的Zj

有两个问题:首先,您是否愿意使用离散时间模型?在参数生存模型中,您想做的事情可能更简单。其次,您能否举例说明您的客户流失?也许只是您的数据看起来如何的一个例子?
詹森·摩根

@JWM。流失意味着客户取消了他们的帐户。因为我只知道客户取消的月份,所以我认为离散时间是合适的。我认为,如果模型是离散时间或连续时间(Cox或AFT),则时变预测变量也会存在相同的问题。
B_Miner

很抱歉仍未完全了解您的关注。您应该能够很好地估计模型。但是,由于您的TVC和因变量中可能会存在测量误差,因此您应该在模型中使用TVC的滞后。否则,您可能会冒险使用协变量值,该协变量值是在事件发生后测量的,作为该事件的预测变量。您可以看到时间一致性问题。虽然我知道您的目标是预测,但是如果您需要合理的置信区间,则将需要估计可靠的标准误差(至少)。
詹森·摩根

@JVM显然我无法很好地解释自己。我在问题中添加了答复。
B_Miner 2011年

t=0s>0P(Ti>s+x|Fs)

Answers:


1

谢谢您的澄清,B_Miner。我对自己的预测并不多,因此请放一点盐。这是我要做的,至少是对数据的第一次切割。

  • 首先,制定并估算一个解释TVC的模型。进行所有交叉验证,错误检查等,以确保您拥有一个不错的数据模型。
  • 其次,制定并估算生存模型(无论哪种口味)。进行所有交叉验证和错误检查,以确保该模型也是合理的。
  • 第三,确定一种使用TVC模型的预测方法作为预测流失风险和其他所需风险的基础的方法。再次使用您的样本验证预测是否合理。

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


@JVM。我是否正确地读到您的建议是上面我的最后一个解决方案(在最终更新中)。您是否开发了模型来预测实际生存模型中要使用的每个Z(TVC)?
B_Miner 2011年

2

如我所见,可以使用两种生存分析范式。Cox回归框架允许随时间变化的协变量,并会以相对于平均抵消水平的任何一组特定的协变量为条件,得出抵消风险的估计值。具有Poisson误差的glm框架也是比例风险模型,特别适合离散间隔。JVM指出,在当月使用不完整的数据可能会出现错误,但是我的理解是,您想要一个估计值,该估计值取决于协变量或一组协变量的最新值。更好地描述数据情况可以产生更好的示例。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.