zoukankan      html  css  js  c++  java
  • 计算广告学-多点归因模型(Multi-Touch Attribution Model)

      计算广告学中的一个重要的问题是, 如果用户产生了一次转化(conversion, 比如购买, 注册等), 且该用户在转化之前看过大量不同频道(比如搜索, 展示, 社交等等)的广告, 那么我们如何确定是哪个(或)那些频道的广告导致的这次转化呢?

      这就是归因(Attribution)问题, 如下图所示:

      工业界采取的两种方法是“最后阅读获胜”(Last View Win)和“最后点击获胜”(Last Click Win), 前者会把转化归因于这个用户最后一次阅读的广告属于的频道, 后者会归因于最后一次点击的广告属于的频道(如果一直没有点击, 则归因于最后一次阅读的广告属于的频道). 以上两种方法统称为Last-Touch Attribution. 这种方法很简单, 但是忽略了除最后一个频道以外的所有其他频道的广告的影响, 所以效果不是很好.

      实际上, 每个频道都对用户最终的转化产生了影响, 这种考虑多个频道的影响的模型称之为多点归因模型(Multi-Touch Attribution Model). 比较简单的就是线性归因模型和时间衰退归因模型:

      

      

      Xuhui Shao等人提出了使用机器学习的方法来解决归因问题. 把归因看作是分类问题, 对于每个用户, 如果其有转化, 则是正样本, 否则是否样本. 特征则选择该用户在各个频道上的广告的阅读量. 在解决归因问题时, 我们不仅仅要求模型得到很好地分类性能(正确的预测用户是否有转化), 更重要的是, 得到各个频道对于用户的转化的影响, 以确定各个频道对于用户的转化的作用. 

      可以使用逻辑斯蒂回归(Logistic Regression)作为模型, 其得到的各个特征(频道)的系数作为其对该用户的转化的影响. 另外, 因为用户的行为很复杂, 所以单个逻辑斯蒂模型得到的系数估计的变化性可能很大, 这样不利于解释(因为重复试验时得到的各个频道对转化的影响变化很大). Xuhui等人提出了一种新的衡量标准: V-A metric. V(variability)衡量的是模型得到的特征系数(亦即各频道对转化的影响)的可变性, A表示的是对用户分类的准确性.

      Xuhui等人提出使用装袋(bagging)方法训练多个逻辑斯蒂回归模型, 对于每个特征, 我们求得其系数的估计的标准差, 然后取所有特征的标准差的平均值来作为V. 使用多个逻辑斯蒂模型的准确率的平均值来作为A. 算法的具体步骤为:

    1. 从所有的数据中随机的抽取(p_s)比例的训练样本, 以及(p_c)比例的特征. 训练一个逻辑斯蒂模型. 记录各个特征的系数.
    2. 以上步骤迭代M次, 取各个特征的系数的平均值作为各个特征最终的系数值.

    参考文献:

      [1]. Xuhui Shao, Lexin Li, Data Driven Multi-Touch Attribution Models.

      [2]. The Math Behind Multi-Touch Attribution Model

      [3]. Multi-Channel Attribution Model: The good, Bad and Ugly Models

  • 相关阅读:
    EasyUI——常见用法总结
    递归算法(转)
    1215整理
    jQuery Ajax 实例 全解析(转)
    EL表达式 (详解)
    JSTL 核心标签库 使用(转)
    JSTL标签用法 详解(转)
    JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
    java中的基本jdbc中mvc基本示例
    Hibernate的QBC检索方式
  • 原文地址:https://www.cnblogs.com/kemaswill/p/3420265.html
Copyright © 2011-2022 走看看