我在 stats.stackexchange 上发帖,但也许我应该在这里发帖。
语境。订阅业务,每月向用户收取访问服务的费用。管理层希望预测“流失”——可能取消的订阅。管理层希望创建一个电子邮件序列,以防止高风险帐户流失,可能带有某种折扣代码。所以我需要确定那些有可能离开我们的账户。
我有一个包含 50k 条记录的数据集。每个行项目都是一个帐号以及一些变量。其中一个变量是“Churned”,其值为“yes”(它们已取消)或“No”(它们处于活动状态)。
我拥有的数据集是自业务开始以来的所有数据。大约 20k 记录是活跃的付费客户,大约 30k 是那些曾经是付费客户但后来取消的记录。
我的任务是建立一个模型来预测 20k 活跃客户中当前可能流失的客户。
这是我把我的大脑打成一个结的地方。我需要在 20k 条活跃客户记录上运行模型(预测)。
如何在训练、测试和预测之间拆分数据?
预测数据是否必须排除训练和测试数据?
我可以将 50k 的整个数据集拆分为 0.8 个训练和 0.2 个测试,建立一个模型,然后对 20k 个活跃帐户进行预测吗?这意味着我正在对我也将要预测的数据进行训练和测试。似乎“错误”。是吗?