文章名称
Modeling User Exposure in Recommendation
核心要点
曝光偏差不仅带来虚假负反馈,同时可能诱导协同过滤模型,推荐本不应该被曝光的商品。作者提出将曝光建模为一个隐变量。这种显式建模的方法,由曝光模型和评分模型两个部分组成。通过EM算法,交替训练两个模型,最终得到尽可能不受曝光偏差影响的评分模型。
方法细节
问题引入
在物品量比较大的推荐系统中,因为曝光偏差的存在,不能简单地把没有点击的隐式反馈作为负反馈。因为,用户没有点击并不一定是不喜欢,有可能是没有看到该物品。因此,需要对没有点击的数据做区别处理。
具体做法
模型整体框架
作者在MF的基础上,把数据生成的过程描述为如下图所示的结构。其中,代表,用户没有被曝光某个物品的时候,可能存在点击的概率。此时,应该非常接近于1。而当用户被曝光了某个物品,则可能出现各种可能(实际就两种,点击或不点击)。
依据上述生成过程,可以推导出一个对数概率,表示用户被曝光物品和该物品被点击的联合概率。是示性函数,即中括号内的为真时,返回为1。
曝光模型
通常情况下,我们可以对所有用户和物品都使用同样的先验来当做物品被曝光给某个用户的先验概率,反映的是用户潜在兴趣,物品潜在属性,点击数据对用户-物品元组的曝光概率的影响。但是,当我们拥有更多的物品或用户属性时(如用户所处的地域和餐馆所处的地域等),我们可以对进行扩展建模,扩展过程如下图所示。左侧概率图中是外生全局随机变量(即对全局用户都是一样的)。而右侧概率图中,是有外生随机变量和模型参数共同决定的,被称为exposure covariates,我们可以在不同场景下利用不同的模型来建模。
例如,当我们认为物品的流行度对用户-物品元组的曝光概率有影响时,可以(可以理解为是,是)。
又如,我们拥有物品的文字信息或地域信息,可以利用NLP或者是地理信息处理的方法,或者物品的特征向量,那么。这里是对每个用户学习得到的参数,可以被理解为是物品特征对特定用户曝光影响的权重。
心得体会
因果推断
从因果推断的角度讲,用户的某些特征,年龄,所处地域,兴趣爱好等,可能既影响物品对该用户的曝光,也会影响用户对被曝光物品的反馈。这个问题,在因果图上是一个典型的fork结构。作者也提到,曝光从因果分析的角度被理解为一个隐变量,可见建模物品曝光过程,就是在建模因果过程。曝光随机变量类似treatment,但它受到其他特征的影响。但文章中作者并没有构建成一个因果图,而是一个生成模型的形式,背后都是概率图的逻辑。
Exposure Bias
作者提到exposure bias的影响可能不仅仅是虚假的负反馈(曝光偏差的论文通常会讲到的)。同时,在协同过滤的场景下,也可能出现没有模型认为没有被曝光的相似物品具有更高的可能性被该用户喜欢(基于物品的协同,喜欢相似物品的用户,会喜欢当前物品)。此时,某物品没有被曝光给用户,其实由于如地域等原因(作者举例是餐馆推荐,New York City的用户没有被曝光Las Vegas的餐馆是合理的)。因此,曝光偏差也可能误导模型推荐一些未被曝光的物品。作者通过显示建模物品的曝光过程,既可以解决虚假负反馈,也可以解决上述未曝光陷阱。