文章名称
【www-2021】Disentangling User Interest and Conformity for Recommendation with Causal Embedding
核心要点
上一节描述了作者如何对兴趣和流行度倾向进行拆分,并通过SCM进行建模。这一节讲解,如何利用特定的因果数据学习模型参数,并且利用多任务学习和课程学习稳定学习过程。
方法细节
问题引入
模型建模完成后,就需要对模型进行学习(机器学习三要素,模型、优化目标、优化方法 :P)。作者提出了如下图子图b所示的优化目标,其中包括4个loss,需要利用多任务学习进行优化,但是除了点击反馈,我们没有其他数据,如何优化discrepency loss,interest loss以及conformity loss呢?
![learning process]具体做法
从如下图子图a所示的因果图上可以看出,用户的点击反馈符合因果图中的collider结构。在不控制(没有观测)点击反馈随机变量的时候,兴趣随机变量(embedding )和流行度倾向随机变量(embedding )是相互独立的。一旦观测到时,两者将不再独立。例如,物品的流行程度和用户对这个物品你的偏好程度(更合理的应该是说,物品的特质,比如颜色什么的,和它的流行程度没有固定的相关性)应该是独立的。观测到用户点击了某个物品,那么这个物品要么被用户喜欢,要么相对比较流行(因为我们只关心这两个因素,当然也可能是其他因素影响的,可以拿同样的框架来建模),物品即不被用户喜欢也不太流行的可能性比较低(从概率上说比较严谨一点)。这体现了对撞结构(collider)的特性,作者利用这个特性,来构造数据集。
利用上节所说的用户和物品的兴趣(特质)embedding和用户与物品的流行度倾向embedding,分别构建两个评分矩阵,则可以依据如下讨论获得几组不等式关系。
-
物品比物品的流行度高,并且用户点击了物品,没有点击物品。
这种情况我们不知道用户是否更偏好,但是我们可以知道1)物品的流行度倾向得分应该高于物品,即;2)物品的整体的反馈预测得分应该高于物品,即
-
物品比物品的流行度低,并且用户点击了物品,没有点击物品。
这种情况我们可以知道1)用户一定更喜欢,因为即便它不流行,用户仍然点击了它,即;2)物品的流行度倾向得分应该低于物品,即;3)物品的整体的反馈预测得分应该高于物品,即
遵循以上两种情况,可以构建两个数据集分别表示1)负反馈的产品比正反馈的产品流行度低;2)负反馈的产品比正反馈的产品流行度高(这两个数据集都从原始观测数据集中构造而来)。
通过构造2个数据集和2组(5个)不等式,我们可以用来训练3个(预测)得分矩阵,,即3个损失(点击率预估损失,物品偏好预估损失和用户对物品的流行度倾向估计损失)。
除此之外,作者构造了discrepancy loss,用来确保两种embedding(兴趣embedding和流行度倾向embedding)互相解耦(不相似)。作者尝试了三种方式实现discrepancy,,属于比较常规的提升discrepancy的方法,详情参见[1,2]。
由于是不等式,因此和估计评分与点击概率不同,需要利用pairwise的损失函数学习排序(保序性),作者利用BPR方法进行优化求解。训练样本为三元组,其中分别对应正反馈和负反馈的物品id。并且,中的流行度高低遵循相应的限制(例如,中的流行度高于物品的流行度,同理)。
各部分的BPR损失如下图所示,依次是流行度倾向性模型,兴趣模型,点击率预估。其中,点击率预估的损失中,拼接了两种embedding(符号 )。
整体的损失函数如下图所示,其中为超参,由于点击率预估是主要任务,所以作者没有对这个损失进行参数调节(始终保持参数是1)。
最后,在整个模型参数的学习过程中,作者遵循了课程学习的思路,由简单到困难收集样本,并且动态调整附加任务的权重。
- 选取与正样本具有相似流行度的负样本,并逐渐拉大流行度差距(假设正样本流行度为,选取流行度范围在以内的负样本,随着epoch的增加逐渐加大)。作者称之为基于流行度的负采样。
- 随着epoch的增加逐渐加大,提升附加任务的影响。
心得体会
对撞结构
审视全文,其实建模上,作者主要利用的是传统的推荐模型的建模思想,embedding结合多任务学习,只不过考虑了两个embedding分开,并没有太多的因果的东西在里边(没有像IPS那种weighting什么的,虽然分开的embedding给出了对撞因果结构)。个人认为作者思路中的亮点是优化部分,体现了因果推理的思维。作者利用对撞结构的相关性,推导了多个不等式,解决了没有监督信息来分开学习embedding的难题,同时具有坚实的理论保证。
关于对撞结构,文中举的例子可能更贴切一点。一个人长得好看和脾气好没有什么关系(相互独立,不要跟我聊什么相由心生:p)。但是两者共同决定一个人是否受欢迎,如果这个人被确认是受欢迎的,那么他要么长得好,要么脾气好(不考虑其他的)。这个例子,比流行程度和物品特质这个例子更好理解。
等式到不等式
作者利用对撞结构构造了2类数据,并且利用2类数据构造了4个损失。由此,从pointwise的估计转变为pairwise的估计。个人感觉是本文设计的巧妙之处,并且合理的利用了BPR。此外,pairwise的负采样也非常讲究,负采样的好坏直接影响了模型的性能。作者基于流行度提出的负采样方法,符合优化需求,思路值得借鉴。
文章引用
[1] Gábor J Székely and Maria L Rizzo. 2009. Brownian distance covariance. The annals of applied statistics (2009), 1236–1265.
[2] Gábor J Székely, Maria L Rizzo, Nail K Bakirov, et al. 2007. Measuring and testing dependence by correlation of distances. The annals of statistics 35, 6 (2007), 2769–2794.