若策略不仅需要考虑响应率,还需考虑其他指标如职业,则可以增加一条坐标轴代表职业,也一定与随机轴正交,构成高维线性空间,命中部分变为空间中的小区块,对区块的汇总依然能代表整体策略的利润率。值得注意的是,职业不一定需要需要响应率正交。
一个uplift模型将整个特征空间分割为多个子空间,每个空间代表一种策略。在随机试验中,是能够获取一个样本随机落入某个子空间(即命中)的概率和其对应的响应的。因此通过计算整体命中子空间的响应,就能获取整体特征空间的真实响应。
在随机实验中,令K为所有可能的treatment数量,令\(p_t\)代表一个treatment等于t的概率,在任何有意义的场合,都能保证\(p_t>0 \ for \ t=0,...K\)
下面的论文截图给出了一个引理:
对一组随机实验数据\(s_N = {(x^{(i)}, t^{(i)}, y^{(i)}, i = 1,2,..., N )}\), 计算\(z{(i)}\)是很容易的。如果\(ith\)个样本正好匹配了真实的treatment,则\(z{(i)}= y^{(i)}/p_{t}\), 即真实响应会被该treatment的概率所缩放,否则\(z{(i)}\)总为0。 由于对样本的平均就是对期望值的无偏估计,因此我们有如下的概念:
进一步地,可以计算z均值的置信区间,来帮助我们估计\(E[Y|T=h(X)]\)的置信度。 此处可以参考显著性检验的相关文章(如这篇)
如何对长期收益进行计算和建模?虽然思路简单,易于实现,多treatment评估也只能解决短期决策评估,但用户和环境是时变的,当用户接受多个treatment(如降价奖励,红包或提价)之后,心智会发生改变,短期最大化收益不代表长期收益。
假设某一种策略被实施多次,我们已经能够观察到单个用户/群体的长程treatment和response,如何使用强化学习对时序信息进行建模?如何准确有效地对长程收益进行评估?这些都是非常有趣的问题。
有任何问题,欢迎讨论。