FunPapers[2]:www‘24 「快手」连续特征单调性建模
Enhancing Interpretability and Effectiveness in Recommendation with Numerical Features via Learning to Contrast the Counterfactual samples
- https://dl.acm.org/doi/pdf/10.1145/3589335.3648345,www 2024.
FunPapers系列第二篇,来看一下手子在www 2024上发表的CCSS,《Enhancing Interpretability and Effectiveness in Recommendation with Numerical Features via Learning to Contrast the Counterfactual samples 》。
核心思想
通过对比学习与反事实样本合成,专门建模连续特征的“单调性”,提升推荐系统中数值特征的可解释性和有效性。
论文内容概述
深度模型在当前工业推荐系统中引用广泛,数值特征则是深度模型输入的重中之重,但现有研究较少关注数值特征与模型输出之间的单调性关系,而这对于模型的可解释性和准确性具有重要意义,特别是在搜广推领域。
数值特征在深度模型中通常以两种方式输入,标量或离散化后向量化,如下图所示:
针对该问题,论文提出了一种模型无关的对比学习框架CCSS(Contrastive learning framework with Counterfactual Samples Synthesizing),通过合成反事实样本和事实样本,并学习对比这些样本,以建模数值特征与模型输出之间的单调性关系,进而提升推荐系统的可解释性和有效性。
方法介绍
论文提出的CCSS框架主要包含两个部分:反事实样本合成和对比学习目标函数,具体方法如下:
-
反事实样本合成:首先计算每个数值特征的重要性,以此作为被扰动的概率。对于每个原始样本,选择一个数值特征进行扰动,生成一个反事实样本和一个事实样本,同时保持其他特征不变。
合成过程如下:
- 对于正样本,反事实样本通过将数值特征扰动到左邻域桶的中心生成,事实样本通过扰动到右邻域桶的中心生成;
- 对于负样本则相反。此外,还考虑了边界条件,当数值特征位于最左侧或最右侧桶时,只生成一个反事实样本。
- 边界条件。边界是指样本的特征值位于离散化后的边界,这种情况只合成一个样本。
-
对比学习目标函数:通过对比生成的样本与原始样本的模型输出,学习数值特征与模型输出之间的单调性关系。
合成上来看,就是基于合成样本和原始样本之间的关系构建对比损失:
- 对于正样本,期望事实样本的得分高于原始样本,原始样本的得分高于反事实样本;
- 对于负样本则相反。为此,引入了成对损失函数,采用hinge损失,并通过超参数控制成对损失与点损失之间的权衡。
实验介绍
作者在常用的模型上尝试了CCSS,离线指标和线上实验都取得了非常显著的效果:
离线的指标咱就不看了,看看论文中提出的衡量数值特征单调性的指标:
M o n o _ r a t e = # M o n o t o n e _ p a i r s ( D ) # C o m p a r a b l e _ p a i r s ( D ) Mono\_rate = \frac{\#Monotone\_pairs(D)} {\#Comparable\_pairs(D)} Mono_rate=#Comparable_pairs(D)#Monotone_pairs(D)
其中:
- #Monotone_pairs(D):模型预测结果满足特征单调性样本对数量。
- #Comparable_pairs(D):从标签和合成样本间关系来看,预期的单调样本数量。
从实验数据来看,增加CCSS后,头部特征的单调性有明显的提高,这点来看还是比较符合预期的。
总体来看,论文的思路比较简单、直接,有机会可以一试!