所以我试图预测哪些客户会离开 X 公司赞助的忠诚度计划,使用 ML 分类模型。
我进一步认为,客户参与该计划的时间会影响他们留下/离开该计划的可能性,因为长期客户获得更多忠诚度折扣等原因可能会提高他们的间接成本/价格离开一个程序。
但是,我目前面临的一个问题是,我正在根据每个客户的 start_date 和 end_date 计算 duration_in_program。
但是,我认为这种对变量进行编码的方法的一个问题是,duration_in_program 的值不会映射到任何“停留”结果。哪种有意义。就像,如果程序中的每个 duration_in_program 为 3 年的人都离开了该程序,那么模型将学会始终将其预测为“离开”。
重要的是要指出:该计划允许客户在该计划中最多停留五年,在此之后,他们会收到其他有线电视客户支付的正常价格。
因此,我正在考虑处理此问题的一种方法是 duration_in_program 由任意截止点确定。例如,如果他们在第一批完成计划的日期(即 2017 年 8 月 31 日)之前仍未离开计划,那么我们认为他们的 duration_in_program 等于该计划。所以有人加入(即 2013 年 1 月 9 日),但到 2017 年 8 月 31 日仍未离开,那么我们设置他们的 duration_in_program=4。
对我上面的方法有什么想法吗?