解决分类问题并找到最佳阈值

时间:2019-11-26 11:20:01

标签: python r optimization classification confusion-matrix

我的工作中确实有一些麻烦。我试图在周末解决以下问题,但没有成功。

好的,我们运行一个学校教育平台,我们希望实现以下目标。我们有一个模型来识别学生失去兴趣的可能性(损失率)。

现在,如果在某个时间点(t)的丢失率与之前的时间点(t-6)相比增加到某个阈值以上,我们希望向学生提供折扣优惠,甚至提供免费课程。问题是如何正确设置阈值?我的意思是使用关于学生在t + 12时点离开我们平台的事实数据来最大程度地减少假阳性和假阴性。

我们当前的方法和数据如下所示。根据历史数据,我们进行以下设置: [学生ID],[LifteTimeValue],[Lossrate_now(t)],[Lossrate_then(t-6)],[绝对差([t1]-[t-6])],[相对差(([t1]- [t-6])/ [t-6])],[可观察到的损失(t + 12)]

  • LTV的金额通常在0到500之间。
  • 损失率通常为0.01%至0.25%
  • 观察到的损失[0或1]。 1表示该学生已取消订阅。这是未来12个月(t + 12)的事实/观察。

我想做的是有一些LTV存储桶和阈值。根据阈值,我们可以邮寄/不邮寄客户,LTV存储桶可以帮助我们提供报价。

所需的行动规则集如下所示(实用):

  • LTV Y1或相对差> Z1
  • X2和X2之间的LTV |绝对差> Y2或相对差> Z2 X3和X3之间的LTV |绝对差> Y3或相对差> Z3
  • LTV> X4 |绝对差> Y4或相对差> Z4

*注意:在LTV组中拆分可能不相关,这意味着它对优化没有帮助。

我们希望具有成本效益,因此我们可以在付费/免费服务之间保持平衡。 首选解决方案是在Python中,但R也是一个选择。并且一些可视化有助于将结果解释给其他人!

感谢您抽出宝贵的时间阅读本文。 恒钟

0 个答案:

没有答案