Uplift 经典模型介绍
1. 元学习相关模型
1.1 双模型(Two Model, T-Learner)
- 针对
单Treatment
而言,双模型的做法具体而言,将实验组和对照组分别建模,最后两个模型预测结果做差即为lift
- 优缺点:
- 双模型优点是简单直观,可以复用常见的机器学习模型(LR、Tree Model、NN)。
- 缺点是数据利用不充分,没有很好地拟合两个群体之间的差异(也即lift信号)且对模型误差容易被放大。假设单个模型准确率都是90%,那么最后预测lift的精度只有81%.
1.2 单模型(Single Model, S-Learner)
- 单模型的方式将处理变量
T
当做输入特征进行训练,预测时将同一样本特征进行多次输入,每次只是改变不同的T值。一般而言,
2.1 CTS算法
2.2 因果森林
- 诚实树
- 构建诚实树的时候将训练样本划分为两个部分I、J,其中I用来评估,J用来进行分割。
- 引入双样本的目的是消除偏差,实践中发现双样本树在均方误差方面也可以改善标准的随机森林。
2.3 广义随机森林(GRF)
GRF的想法是利用一部分数据来构建随机森林,然后利用随机森林从另一部分数据中寻找和给定个体x相似的个体,然后利用这些相似的个体经过一个加权打分函数(log-likelihood等)的优化,求解对应于个体x的感兴趣的参数。在进行随机森林的每一颗树的每一次的划分时,在节点处都是感兴趣的参数(target parameters)和不感兴趣的参数(nuisance parameters)同时估计的,所以GRF在高维confounder的时候效果并不是很好。
2.4 正交随机森林(ORF)
ORF的可以算是借鉴了GRF和DML两者的想法,我们可以用不同于文章描述的方式来理解,咱们将数据分成三份:
- 其中一份类似于GRF一样去构造一个随机森林,这个随机森林也是用来量化个体之间的相关性的,只不过ORF在做树的划分的时候,每一个节点处感兴趣的参数和不感兴趣的参数也是利用DML的想法来估计的(一部分数据用来估计不感兴趣的参数,然后再用另一部分数据来估计感兴趣的参数)
- 利用第二份数据估计给定个体x的局部(利用第一步的随机森林来定义相似性)拟合对应的不感兴趣的参数
- 利用最后一份数据在给定个体x局部(利用第一步的随机森林来定义相似性)拟合感兴趣的参数
3. 剪枝方法
3.2 单调约束
- 如对处理变量T施加单调约束,则在某个叶子节点如果各个组之间不满足单调约束,则进行剪枝。如在网约车场景中,我们假设折扣和弹性是呈现单调关系的。lift(100折) >= lift(90折) >= lift(80折) >= lift(70折) >= lift(60折) ···
3.3 最小增益
- 假设某次分裂产生的增益值小于某一个阈值,则进行剪枝。
3.4 最小样本数
- 假设某次分裂时该节点中的样本数小于某个阈值或者该节点内任意一个组的节点数小于某个阈值时,进行剪枝。