Uplift 经典模型介绍

  • 1. 元学习相关模型

    • 1.1 双模型(Two Model, T-Learner)
    • 1.2 单模型(Single Model, S-Learner)
    • 1.3 X-Learner模型
  • 2. Uplift树模型
    • 2.1 CTS算法
    • 2.2 因果森林
    • 2.3 广义随机森林(GRF)
    • 2.4 正交随机森林(ORF)
  • 3. 剪枝方法
    • 3.1 重采样(resampling)
    • 3.2 单调约束
    • 3.3 最小增益
    • 3.4 最小样本数
  • 4. Uplift特征选择
  • 5. 因果推断常用开源库

1. 元学习相关模型

1.1 双模型(Two Model, T-Learner)

  • 针对单Treatment而言,双模型的做法具体而言,将实验组和对照组分别建模,最后两个模型预测结果做差即为lift
  • 针对多Treatment而言,对各个实验组和对照组分别建模,然后每个实验组依次和对照组的预测结果做差,得到每个实验组对应的lift
  • 优缺点:

    • 双模型优点是简单直观,可以复用常见的机器学习模型(LR、Tree Model、NN)。
    • 缺点是数据利用不充分,没有很好地拟合两个群体之间的差异(也即lift信号)且对模型误差容易被放大。假设单个模型准确率都是90%,那么最后预测lift的精度只有81%.

1.2 单模型(Single Model, S-Learner)

  • 单模型的方式将处理变量T当做输入特征进行训练,预测时将同一样本特征进行多次输入,每次只是改变不同的T值。一般而言,

    表示对照组,
    代表各个实验组。
  • 单模型相比双模型的方式有以下几个优势:
    • 模型训练时数据利用更充分.
    • 建模更加简单,只需要一个简单的逻辑回归或树模型(随机森林、Xgboost、Lightgbm).
    • 能对处理变量或者其他变量进行强制的单调约束,双模型无法做到这一点.

1.3 X-Learner模型

  • X-Learner是对T-Learner和S-Learner进行了融合,这里以单Treatment为例,具体步骤如下:

    • 分别对实验组和对照组进行建模得到模型

      (同T-Learner)
  • 计算实际产出和预估产出之间的差,得到推算治疗效应。
  • 使用

    作为特征,
    作为标签建立对照组模型
    ;使用
    作为特征,
    作为标签建立实验组模型
    .

    此处可以是分类或者回归模型

  • 每个样本得到两个预测值

    ,然后进行加权(权重计算可以采用倾向评分模型g(x)),随机试验中可以直接用用户数占比,相同的流量时权重等于0.5.

2. Uplift树模型

  • 随机森林的Uplift模型与普通的随机森林的主要的区别就是分裂指标的不同。以下是几种常见的分裂指标:

    • 一些特殊的方法

    • 求左右节点的差异
  • 基于信息论的分裂指标
这里
是差异度量,
分别是treatment组合control组的概率分布。因此,这个分裂的表示是分裂后的发散增益程度。对于
,有以下三种方式Kullback, Euclidean、Chi-Squared:
  • 在因果树模型中, Athey and Imbens提出以下分裂标准:
可以发现,当二分类结果时,该分裂指标等价于上述的欧式分裂标准方式。值得注意的 事,Athey and Imbens提出一种"诚实"的方法,没有使用相同的数据进行生成树并估计叶子之间的uplift。而是把数据分为两部分,一部分用于生成树结果,另外一部分用于估算叶子节点的uplift值。

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.1 重采样(resampling)

  • 一般随机采样8倍的原始数据集,其中1份用于决策树划分,其他7份用于评估。此处,可以设置一个阈值

    , 其中
    ,假如7份验证数据的预测结果的标准差大于该阈值,则进行剪枝。

3.2 单调约束

  • 如对处理变量T施加单调约束,则在某个叶子节点如果各个组之间不满足单调约束,则进行剪枝。如在网约车场景中,我们假设折扣和弹性是呈现单调关系的。lift(100折) >= lift(90折) >= lift(80折) >= lift(70折) >= lift(60折) ···

3.3 最小增益

  • 假设某次分裂产生的增益值小于某一个阈值,则进行剪枝。

3.4 最小样本数

  • 假设某次分裂时该节点中的样本数小于某个阈值或者该节点内任意一个组的节点数小于某个阈值时,进行剪枝。

4. Uplift特征选择

  • Deep IV
  • CausalML特征选择工具

5. 因果推断常用开源库

  • EconML
  • CausalML
  • Dowhy

Uplift 经典模型介绍相关推荐

  1. 深度神经网络经典模型介绍

    经典模型的特点介绍 VGG,GoogleNet,ResNet,Inception-ResNet-v2 1. VGG模型 VGG又分为VGG16和VGG19, 分别在AlexNet的基础上将层数增加到1 ...

  2. 智能营销增益(Uplift Modeling)模型——模型介绍(一)

    文章目录 1 Uplift Modeling与reponse model模型的差异 1.1 增益模型与响应模型的差异 1.2 增益模型与响应模型的混淆 1.3 业务疑问与需求 1.3.1 多维度建模 ...

  3. 经典Wide Deep模型介绍及tensorflow 2代码实现

    Wide & Deep模型介绍 目标: 内容: 一. 模型介绍 二. 推荐系统架构 三. Wide部分 四. Deep部分 五. Wide和Deep一起训练 六. 系统实现 (1)数据生成阶段 ...

  4. 【自然语言处理】ELMo, GPT等经典模型的介绍与对比

    接上一篇:BERT,Transformer的模型架构与详解 文章目录 2. ELMo, GPT等经典模型的介绍与对比 2.1 认识ELMo 学习目标 什么是ELMo ELMo的架构 ELMo的预训练任 ...

  5. DL:神经网络算法简介之耗算力的简介、原因、经典模型耗算力计算、GPU使用之详细攻略

    DL:神经网络算法简介之耗算力的简介.原因.经典模型耗算力计算.GPU使用之详细攻略 目录 神经网络算法耗算力的简介 神经网络算法耗算力的原因 神经网络算法耗算力的经典模型耗算力计算 1.AlexNe ...

  6. 【知识星球】分组卷积最新进展,全自动学习的分组有哪些经典模型?

    欢迎大家来到<知识星球>专栏,这里是网络结构1000变小专题,今天介绍最新的分组卷积模型的进展. 作者&编辑 | 言有三 1 CondenseNet 有三AI知识星球-网络结构10 ...

  7. 手把手带你撸深度学习经典模型(一)----- UNet

    一.前言 经过慎重考虑,决定新开一个系列,该系列文章主要的目的就是利用PyTorch.Python实现深度学习中的一些经典模型,接下来一段时间的安排如下: UNet ResNet VggNet Ale ...

  8. 计算机视觉:基于眼疾分类数据集iChallenge-PM图像分类经典模型剖析(LeNet,AlexNet,VGG,GoogLeNet,ResNet)

    计算机视觉:图像分类经典模型 LeNet AlexNet VGG GoogLeNet ResNet 图像分类是根据图像的语义信息对不同类别图像进行区分,是计算机视觉的核心,是物体检测.图像分割.物体跟 ...

  9. 广告点击率(CTR)预测经典模型 GBDT + LR 理解与实践(附数据 + 代码)

    CTR 系列文章: 广告点击率(CTR)预测经典模型 GBDT + LR 理解与实践(附数据 + 代码) CTR经典模型串讲:FM / FFM / 双线性 FFM 相关推导与理解 CTR深度学习模型之 ...

  10. CNN的几种经典模型

    本文主要介绍一下CNN的几种经典模型比较.之前自己也用过AlexNet和GoogleNet,网络上关于各种模型的介绍更是形形色色,自己就想着整理一下,以备自己以后查阅方便 LeNet5 先放一张图,我 ...

最新文章

  1. 急速上线 Serverless 钉钉机器人“防疫精灵”
  2. linux var目录满了,Linux入门教程:/var/spool/clientmqueue 占满根目录
  3. JavaScrip有哪些优点
  4. error while loading shared libraries: libstdc++.so.6: cannot open shared object file
  5. 68-Flutter中极光推送的使用
  6. LoadRunner常见错误代码解决方案
  7. 【报告分享】传统品牌vs新消费品牌社交营销差异化分析报告.pdf
  8. 使用Adobe Acrobat为PDF文件添加签名(图片+签名)
  9. pytorch RuntimeError: expected scalar type Double but found Float
  10. javascript回调函数有什么用
  11. 使用requests爬取携程网飞机票价格实例
  12. Elasticsearch 7 Failed to parse value [analyzed] as only [true] or [false] are allowed.
  13. Mac中安装Windows虚拟机给小米手机刷Root
  14. C语言使用 gzip 算法压缩数据
  15. 【小白】如何写好自己的一篇CSDN博客(美化1)
  16. 快来开建春晚红包信息群吧!
  17. 喝杯水都能泄露指纹?屏下指纹识别设备被攻破
  18. LearnOpenGL学习笔记—PBR:IBL
  19. 【UEFI】---关于BIOS,EIST和PStateCState和CPU主频变化得关系
  20. Ubuntu 16.04下装ROS Kinetic问题若干、安装后首次运行

热门文章

  1. python解析sql字段血缘_SQL血缘关系分析
  2. win7命令行打开计算机,Win7怎么打开cmd命令提示符_Win7打开命令提示符教程-192路由网...
  3. TokenGazer《一问到底》| 第55期:研究员 VS Dimension
  4. win10远程桌面连接详细步骤
  5. 应届生如何快速提高职业竞争力
  6. XGBoost资料( 多届竞赛冠军获得者 周耀 整理)
  7. linux登录认证过程,Linux的SSH免密登录认证过程研究
  8. 《51单片机C语言程序设计教程》涉及的细节问题笔记
  9. 织梦DedeCMS标签全攻略,织梦DedeCMS标签大全
  10. 第一讲 OC简介及基本语法