在《利用历史数据做商业预测的全过程》(以下简称前文) 一文中我们介绍了如何使用历史数据进行商业预测的过程。不同的商业需求,还会有些各自的特殊性。例如,在很多业务场景中,存在一种数据不平衡的现象,比如银行贷款违约,违约的人只是很小一部分人;保险欺诈,欺诈者也是个别现象;还有产品质量中不良品的比例、工业生产中非计划停车现象……。这些罕见现象的发生比率很低,但一旦发生就会产生较大的损失,所以要尽量能预测出来并避免。本文将介绍如何来预测这些罕见发生的现象。
1. 准备历史数据
数据准备的过程如前文所述,但是对于这种需要预测罕见现象的场景,就要考虑数据不平衡的问题。我们把历史数据中发生过罕见现象的记录称为阳性样本,数据不平衡就是指阳性样本在总数据中过于稀少。这时,即使总数据量很多也很难建出有效模型。因此,在准备数据时就要尽量多提取阳性样本,具体多少并没有固定要求。一般来讲,问题越复杂,需要的数量就越多,不过即使很简单的问题通常至少也需要几百条阳性样本才可能建出可用模型。反之,也不能只取阳性样本。例如,要建模预测贷款用户的违约情况,要保证违约客户的数据达到一定数量,但也不能全部都是违约客户的数据,正常客户的数据也要采集。
2. 建立模型
按前文所述即可。对于不平衡的的数据集,YModel 会自动进行抽样来使阳性样本和阴性样本(即正常的样本)的比例达到平衡,使用者不用自己操作。但是我们可以自己修改和设置需要的配平比例,如下图,对于初学者通常建议采取默认的比例就好。