【定向广告】淘宝定向广告演化(未完)

电商的定向广告和搜索广告的不同在于俩点:

1.用户没有明显的意图(主动Query查询)

2.用户来到淘宝之前,自己也没有特别明确的目标 (此时利用以往的历史行为进行item推荐)

因此定向广告需要考虑的样本特征更多的和历史有关。

如何划分样本:

一个正样本如下所示:

p(y=1|ad,context,user)

其中,ad代表广告候选集,user代表用户特征,年龄,性别,context表示上下文场景,设备,时间。

淘宝定向广告的演化:

第一阶段:

LR(线性模型)-》 MLR(非线性模型) -》DNN模型(深度学习)

LR时代,由于LR的局限性,不能处理非线性特征(如时间),所以需要特征工程加入非线性特征,因此有了MKR(Mixed Logistic Regression),采用分而治之的策略,利用分段线性+级联,拟合高维空间的非线性分类面,相比于人工来说提升了效率和精度。

在DNN阶段,可以处理复杂模型和大数据量,但是使用定长的embedding并不能表达用户多种多样的兴趣。

传统的DNN模型的 Base Model流程如下:

embedding+MLP

特征表示:user profile、user behavior、ad 以及 context

  • Step1,将不同的特征转换为对应的embedding表示
  • Step2,将所有特征的embedding做拼接
  • Step3,输入到多层感知机MLP(DNN),计算结果
  • 每个特征类别包括多个feature field
  • feature field是单值特征 => one-hot编码
  • feature field是多值特征 => multi-hot编码
  • Embedding Layer,将高维稀疏向量转换为低维稠密向量
  • Pooling Layer + Concat Layer,使用Pooling解决每个用户行为    的维度不同的问题,并与其他三个类别中的embedding结果进行拼接,作为MLP Layer的输入
  • MLP Layer,学习给到的拼接embedding,自动学习高阶特征之间的组合
  • Loss,损失函数采用negative log-likelihood loss
  • S代表训练样本的个数,x是网络的输入,y是{0, 1}样本标签,
  • p(x)代表输入x的预估点击概率

要使用用户历史的行为,需要考虑多个个因素:

1.多样性,一个用户在一段时间可以对多种类别的东西感兴趣,比如衣服类,食品类,家具类等。这意味着我的推荐不能把所有东西一起embeding。

2.局部激活,如果用户此时点击的是衣服,那么我的食品类和家具类的embeding对本次预测并没有帮助。

3.从时间顺序来看,商品感兴趣序列并没有规律,有可能这一段时间用户关注衣服多一些,接下来一段时间用户想买食品,搜食品又可能多一些,如果综合考虑,那么存在巨大噪音,但是具体到某一个兴趣,比如衣服,却可以看出随时间演化的趋势,比如衣服购买风格的变换。

4.但是这些感兴趣的类之间并非完全没有联系,比如我这段时间挑了衣服,可能还需要穿搭,还会挑选戒指,配饰等,如果将用户行为看成多个对话,会话之间也存在一定的联系。

DNN存在1,2问题,为了解决这些问题,阿里使用了深度兴趣网络DIN:

Deep Interest Network for Click-Through Rate Prediction,2018
https://arxiv.org/abs/1706.06978

  • DIN是在DNN的基础上添加了Attention机制:
  • 在对用户行为的embedding计算上引入了attention network (也称为Activation Unit)
  • 把用户历史行为特征进行embedding操作,视为对用户兴趣的表示,之后通过Attention Unit,对每个兴趣表示赋予不同的权值
  • Attention Weight是由用户历史行为和候选广告进行匹配计算得到的,对应着洞察(用户兴趣的Diversity,以及Local Activation)

猜你喜欢

转载自www.cnblogs.com/guangluwutu/p/12528927.html