背景
position-bias 简单理解就是同个商品/广告展示在不同的位置上有不同的ctr、cvr,如:
1. 小说榜单,越靠前的位置的点击率越高
2. 今日头条中可能有不同广告位,约显眼的广告位点击率约高
这样就回形成“马太效应”,排在前面的物品越来越容易排在前面,排在后面的物品越来越容易排在后面。这样会使得推荐系统的准确性、多样性都会受到影响
解决方案
1. 把position作为特征
最容易想到的方案就是把position作为特征,让模型学到不同position点击率的差异,这个方案的一个问题是物品的点击positon只有在训练时可以拿到,在serving是不知道的。通常的解决方法就是在serving时把position这个特征置0。
这里有个trick:训练时对position这个特征加dropout,防止模型过度依赖这个特征,被这个特征dominant
优点:简单,成本低,不会增加模型复杂度
缺点:上限低,改善效果有限
2. 华为PAL
PAL出自华为的论文《PAL: A Position-bias Aware Learning Framework for CTR Prediction in Live Recommender Systems》,PAL把用户是否会点击广告分为两个因素:
1. 用户在这个position上看到这个广告的概率
2. 看到广告后点击这个广告的概率
并且假设:
1. 用户是否看到广告只跟广告的位置有关系
2. 用户看到广告后,是否点击广告与广告的位置无关
基于这些假设,就可以把ctr模型分为两个tower的乘积,左边tower只用position相关特征建模该position下seen的概率,右边tower只用非position特征建模seen后发生点击的概率,serving时只需要用右边tower serving
优点:采用类似ESMM模型的方式更精细化的建模了不同position对点击率的影响
缺点:做出的假设太强,和ctr、cvr不同,用户是否发生点击不能严格的拆违send->seen、seen->click两个阶段,用户在seen后是否发生点击还是和position有关系,
3. YouTube shallow tower
YouTube在《Recommending What Video to Watch Next: A Multitask Ranking System》这篇论文中采用了一个shallow tower来建模position bias
YouTube和PVL一样,都使用了一个单独的tower来建模position对ctr的影响,不同点在于PVL是以乘积的方式和主tower结合,而YouTube则是以加和的方式和主tower结合
参考资料
https://blog.csdn.net/Kaiyuan_sjtu/article/details/121867965
标签:推荐,点击,bias,广告,seen,position,tower From: https://www.cnblogs.com/xumaomao/p/17372035.html