Fork me on GitHub

Debias 技术在金融推荐场景下的应用

以下文章来源于 https://zhuanlan.zhihu.com/p/617446460

导读: 推荐系统中存在闭环反馈循环,受到各种 bias 的影响非常显著。针对金融场景的特殊性,我们提出了样本层面上自采样纠偏框架 SSTE 和特征层面上偏置代理表征解耦纠偏框架,较好地平衡了模型的预测精度和无偏性,在多个业务场景的核心指标上取得了明显收益。

今天的分享围绕下面四点展开:

  1. Debias 背景介绍

  2. 自采样纠偏

  3. 偏置代理表征解耦纠偏

  4. 总结与思考


分享嘉宾|乔阳 腾讯 高级应用研究员

编辑整理|邓君 赛默飞世尔

出品社区|DataFun


01/背景介绍


首先我们从因果推断出发,对推荐系统中 Bias 产生的机制和 Bias 的类型进行简介,并给出几个典型的 Debias 解决方案。

1. 因果推断与机器学习



因果推断是一门研究如何识别变量之间因果关系的学科,Judea Pearl 根据因果问题的可答性,将因果推断分为三个层次:

① 第一个层次为关联,探索的是变量间的相关关系,典型应用是机器学习;

② 第二个层次是干预,研究的是实施某种干预的结果,典型应用是 uplift 建模;

③ 第三个层次是反事实,需要将现实世界与未发生的反事实世界比较来分析原因,典型应用有因果图建模等。

机器学习是一门根据观测数据进行相关性预测的学科,但由于因果关联和混淆效应等因素均可以产生相关关系,因此相关性并不等于因果性。由于这些混淆因素往往是不可回溯且不稳定的,因此机器学习容易出现泛化不佳等问题。比如观测样本中的猫都出现在雪地上,狗都在出现草地上,那么机器学习模型就容易建立猫与雪地、狗与草地的虚假关联,那么对于狗在雪地或者猫在草地上的图片,模型识别准确性会变得很差。因此,如何借助因果推断等技术,合理消除数据中的偏差,提升模型的鲁棒性,是大规模机器学习在实际应用中面临的一个关键问题。

2. 推荐系统中的 Bias



推荐系统作为机器学习最重要的应用场景之一,近年来得到了越来越广泛的应用。推荐建模数据主要来自于观测而并非随机化实验,天然存在一个用户-系统-模型的闭环反馈循环。在没有推荐策略干预时,用户的自然响应可视为因果性的体现,但当有推荐策略时,不同策略对用户产生的潜在激励可视为偏置效应,由于观测数据是因果效应和偏置效应的混合,而模型又拟合了这种相关性,因此推荐系统中就引入了偏差,这些 Bias 会导致模型难以反映真实性能,鲁棒性、泛化性不佳。以位置偏置为例,排序靠前的物品被点击的概率更高,但可能并不是最符合用户偏好的。

学术界和工业界对 Debias 的研究日趋丰富,按照技术路线可以将这些方法分为启发式方法、IPS 类方法、无偏数据增强方法和理论工具四类,接下来我们对这四类方法进行具体介绍。

3. Debias 综述

(1)启发式方法

基于启发式的 Debias 方法其核心思想 是假设某种 Bias 与特定因子有关,通过对生成过程的建模来消除特定的偏置。典型工作有 PAL 和 EXMF 等。



华为 PAL 假设用户是否看到某个物品只和物品展示位置有关,看到后是否点击与物品的位置无关,在建模时将物品点击概率拆解为物品被看到的概率和看到后被点击的概率乘积,线上推理时只使用 pCTR 预估结果,从而消除位置偏置的影响。

另一个典型方法 EXMF则假定物品曝光概率与物品特征有关,它将是否曝光建模为服从参数 μ 的伯努利分布,并且假设 u 和 i 的 embedding 各维度之间均满足均值为 0,方差为 λ 的正态分布,两部分参数通过 EM 算法进行优化,线上推理时将曝光概率和 pCTR 的乘积作为排序依据,从而消除曝光偏差的影响。

(2)IPS 类方法

第二大类方法是基于逆倾向分加权的方法,倾向性得分表示的是在给定背景变量的情况下,选择某种策略的概率,因此根据倾向分进行逆加权可以消除数据中存在的偏置。



2016 年 ICML 提出的IPS-MF 就是通过逆倾向性加权得到无偏估计,并给出了基于观测和模型预估两种 propensity score 计算的方法。IPS 类方法的难点是如何准确的估计倾向性得分,由于推荐系统回收的数据难以获得数据生成机制,且物品分布呈现明显的长尾性,因此 IPS 的计算常常出现高方差、预估不准的问题,这会极大的影响 IPS 类方法的有效性,因此后面又出现了一系列改进 IPS 的方法。

另一个经典的 IPS 类方法是 Doubly Robust,推荐系统回收的数据是不全面且非随机缺失的,我们往往只观察到小部分物品的反馈,使用观测数据建模难以准确的表示用户的偏好,因此有学者使用插补的方法给出缺失评分的预估,但这种方法同样会面临插补不准确导致模型效果恶化的问题。Doubly Robust 将二者结合起来,使用观测数据修正插补误差的偏差并基于倾向性得分进行逆加权,在理论上保证了只要插补和倾向性得分有一个是无偏的,结果就是无偏的。

(3)无偏数据增强

第三大类是基于无偏数据增强的方法,在有无偏数据的情况下,可以充分利用无偏数据辅助有偏数据进行学习。



典型方法之一 Auto Debias 通过在 Doubly Robust 方法中引入 meta-learning 来学习更好的权重,在一个循环中依次迭代主模型参数 θ 和 Debias 网络参数 φ 来进行训练,先虚拟更新 θ,通过在无偏数据上计算的损失评估模型的表现,进而真实优化 φ 和 θ。



另一个无偏数据增强的典型方法是 KDCRec,他借助无偏数据通过知识蒸馏的方法指导观测数据的训练,其中无偏数据训练的模型作为教师模型,有偏数据训练的模型作为学生模型。按照方法的差异性,KDCRec 提出了基于标签、基于样本、基于特征和基于模型结构的四类蒸馏方法:

① 基于标签的方法指的是通过无偏数据产生输入标签帮助有偏数据训练;

② 基于特征的方法指的是通过无偏数据产生因果稳定的特征帮助有偏模型训练;

③ 基于样本的方法指的是无偏数据直接帮助训练;

④ 基于模型结构的方法则对神经网络不同层次进行蒸馏辅助有偏数据的训练。

(4)理论工具类

最后一类是理论工具方法,通过应用诸如信息瓶颈、因果推断等理论工具来保证模型的无偏性。



典型工作如华为的 DIB,其基本思想是将表征拆分为有偏和无偏两部分,由于无法直接从 embedding 中区分出有偏和无偏表征,因此借助了信息瓶颈理论进行求解。信息瓶颈是信息论中的一种方法,他将包含噪声的信息进行压缩,尽可能只保留和最终目标最相关的信息。DIB 构造了一个包含四项的损失函数,其中:

① 由于 x 是有偏的,因此无偏表征 z 不应该过拟合 x;

② z 应该能够尽量准确的预测 y;

③ 由于 r 是有偏表征,因此 z 和 r 应该尽可能独立,从而使得 z 尽可能无偏;

④ 由于 y 也受到了偏置的影响,因此有偏表征 r 也应该可以一定程度的预测 y。

这些变量间的相关性基于互信息进行刻画,互信息越小表示两个变量越不相关。由于高维连续值的互信息求解困难,因此 DIB 对原始损失函数基于条件熵改写为易于求解的交叉熵形式进行优化。



理论工具类方法的第二个典型的工作是 MACR ,它借助因果推断工具提出了一种模型无关的反事实推理框架用于消除推荐系统中的流行度偏差。从左下角的因果图可以看出,MACR 假设用户的反馈行为受到兴趣匹配(即 K 到 Y 的边),物品流行度(即 I 到 Y 的边),和从众心理(即 U 到 Y 的边)三种不同的影响,但只有兴趣匹配是符合预期的,物品流行度和从众心理作为 Bias 应该被消除。

假设理想状态下的用户和物品表示为 u* 和 i*,我们可以得到推荐系统对用户 U 的总效应 TE,并拆解为 Bias 带来的直接效应 NDE,和间接效应 TIE,因此间接效应可以通过总效应和直接效应的差得到,而它是无偏的。

MACR 设计了一种多任务架构求解上述问题,将模型分为仅基于用户特征作为输入、仅基于物品特征作为输入和基于全部特征作为输入三部分,来分别学习总效应和直接效应,在线上推理时将总效应减去直接效应从而得到无偏估计。

4. 主要挑战

Debias 的相关工作还有很多,限于时间关系不再一一介绍。但 Debias 技术在实际应用中还面临着诸多问题,比如现有很多方法旨在解决一种或几种特定的 Bias,而真实工业场景各种 Bias 往往是混杂难以区分的。很多方法依赖特定数据,如无偏流量,特定模型结构或训练方法,这需要对推荐系统已经成熟的模型结构进行改造,客观上增加了应用的难度。因此现有方法往往面向公开数据和实验研究,缺少大规模工业界应用的案例和讨论。

对于金融类产品,其产品形态往往较为复杂,候选物品少,受到各种 Bias 的影响尤为严重。但由于金融产品对用户的专业度要求较高,因此热门产品、明星产品、平台推荐产品对大多数经验不足的用户具有较好的普适性,过度的纠偏尤其是对流行度的过度纠偏往往会导致更多的长尾物品曝光从而使缺乏金融知识的用户蒙受损失。

针对上述背景和挑战,我们提出了两种模型无关的纠偏框架,分别是针对样本层面的自采样纠偏框架特征层面的偏置代理纠偏框架,接下来将对这两种方法做详细介绍。

--

02/SSTE 自采样纠偏框架


首先介绍的是样本层面的 SSTE 自采样纠偏框架。

1. 问题分析

推荐系统中的 Bias 并非是完全有害的,用户的流行导向、物品的高转化导向往往具有正向意义。

为了验证这样的假设,我们在腾讯理财通产品的首页基金推荐场景,基于无偏推荐策略和常规推荐策略进行了为期三周的线上实验,结果分别对应下图中右侧的橙色线和蓝色线。



我们发现无偏推荐策略在刚开始上线时相对原策略在直接业务指标上有正向收益,但随着时间的延长,两种策略的效果差距逐渐缩小直到趋于一致。分析发现由于无偏策略刚上线时引起了推荐物品分布的变化,用户看到了更多中长尾的新物品,这种新奇效应激发了部分用户的正向反馈,但随着时间的延长,用户重新适应了这种新的推荐物品分布,二者效果开始趋于一致。

上述案例一定程度上说明真实业务场景中,盲目的去除所有偏置往往是不合适的,尤其是对于金融产品推荐场景,对金融领域知识不是那么丰富的用户推荐热门的明星产品往往比用户自主选择的产品有着更稳健的整体回报。

2. 解决方案

我们将推荐系统中的偏置划分为有害偏置和有益偏置两部分,分别对应因果图中的 A 和 C,并通过模型无关的自采样纠偏框架 SSTE 消除有害偏置,保留有益偏置,实现预测准确度和无偏性的平衡。SSTE 包含三部分:

① 用于生成不同偏置程度数据子集的自采样模块

② 基于不同偏置数据联合训练的自训练模块

③ 用于提升模型稳定性的自评估模块

接下来对每个模块进行详细介绍。

(1)自采样模块

首先是自采样模块,我们使用 Dtr 代表原始训练数据集合,用于模型训练,Dval 代表原始验证数据集合,用于模型调优。



自采样模块的采样概率是基于截断 IPS 得到的,通过设置不同的截断阈值,将大于等于这个阈值的样本的采样概率修改为 1,小于这个阈值的样本使用原始 IPS 权重进行采样,得到不同偏置程度的辅助子集。可以参考右侧的示意图进一步理解采样的实现逻辑:



(2)自训练模块

接下来介绍是自训练模块。

基于使用数据的不同,我们将模型中的参数分为三部分,分别使用 θ、θ 和 θ 进行表示,其中 θ 是共享参数,会被原始训练数据 和采样后的多个子集 共同更新,而 θ 只会被原始训练数据 进行更新,θ 只会被采样子集 更新。



一种典型的实现架构如右图所示,我们将 embedding 层设置为共享的,也就是 θs,使用全部数据进行训练。将上层网络拆分为两部分,分别只使用原始样本和采样后的不同偏置程度的样本进行训练,两部分的 loss 联合优化。由于模型同时被原始观测数据和不同偏置程度的数据联合训练,两部分数据产生的 loss 会互相钳制避免模型过度纠偏。与此同时,不同偏置程度的采样数据会推动模型对不同偏置进行识别,寻找偏置中的共性的、对有偏预测和无偏预测都有帮助的部分,这部分偏置可视为有益偏置,而消除偏置中差异性大、缺乏共性的部分,这部分偏置可以被视为有害偏置。

(3)自评估模块

自评估模块对模型精度和无偏性进行更加全面的评估,根据评估结果对模型参数和结构进行调整从而获得更优的性能。

对于验证数据 Dval,我们通过自采样模块得到了 T 个采样子集 Aval,共 T+1 个数据集,我们使用这 T+1 个数据集对模型进行评估,得到 T+1 个评估结果,其中评估可以使用 AUC 等任意指标。接下来我们计算这 T+1 个评估结果的最大差值 α,并使用评估结果减去 α 作为衡量模型综合性能的最终指标。这种评估方式要求模型不仅要在验证数据上效果好,还要在各种偏置数据上表现稳定,从而提升模型的综合性能。

3. 应用效果

我们在公开数据和工业场景数据集上验证了 SSTE 的有效性。其中公开数据使用了 Yahoo!R3 数据,他是 Yahoo 在音乐推荐场景下收集的用户给歌曲评分的数据集。工业场景数据集使用的是腾讯理财通首页基金推荐场景回收的用户反馈数据。

评估指标使用 AUC、nDCG、Precision、Recall,其中 AUC 是主要指标,对比的方法包括 IPS/SNIPS/CVIB/AT/Rel/DIB 等 Debias 方法。



离线看 SSTE 在 MF 和 NCF 两个典型的网络结构下,在公开和产品数据集的全部评估指标上均取得了最优性能。此外,由于 SSTE 是模型无关的,我们在基线模型上增加了上述模块后,均收到了正向收益,进一步验证了该方法的有效性。

我们还在腾讯理财通基金推荐场景验证了 SSTE 的有效性。在用户进入理财通时,系统会根据用户兴趣给用户推荐若干只基金,推荐效果的主要衡量指标是基金的千次曝光点击、千次曝光转化和千次曝光转化金额。我们在线上进行了为期一个月的 AB 实验,结果显示 SSTE 可以带来较为显著的业务指标的提升。



此外,我们还观察了典型的推荐物品流行度的变化,结果显示头部物品流行度有所降低,中尾部物品流行度有所提升,整体多样性和用户体验更好,进一步分析发现,中部越高质的物品,其曝光量提升越显著,这显示 SSTE 可以有效地保留偏置中有益的部分,避免过度纠偏。

上述工作已经被DASFAA 2023 industry track接收,全文可见:++https://arxiv.org/abs/2302.03419++

--

03/代理表征解耦纠偏框架


接下来介绍的是我们的第二个工作,特征层面的代理表征解耦纠偏框架

1. 问题分析

现有的一种技术路线,类似 DIB 的方法是通过将表征拆分为有偏和无偏两部分来消除推荐系统中的 Bias ,但这种方法依赖模型对表征中的有偏和无偏部分的自动化区分。由于真实工业推荐系统的特征非常丰富,这种仅依靠模型学习的方式往往较为困难。



考虑到推荐系统原始特征往往是人为构造且具有较好解释性的,我们引入专家经验辅助模型决策,从而降低模型对有偏表征和无偏表征区分的难度。为此我们提出了一种模型无关的偏置代理表征解耦纠偏框架 。该方法的核心思想是借助专家经验,预先选取可以作为偏置代理的特征集合 P ,比如曝光位置、包装样式、尺寸大小等偏置因素甚至是点击率、转化率等含偏特征,通过将偏置代理的表征 C 和其他特征的表征 Z 解耦,消除偏置对推荐系统的影响。

为了方便大家理解,我们以 MF 矩阵分解经典推荐模型为例,由于观测样本中物品的转化受到了曝光位置的影响,物品 id 的表征就被位置这个 Bias 污染导致推荐结果有偏,此时如果我们引入曝光位置作为偏置代理,并对曝光位置的表征和物品 id 的表征进行解耦,就可以消除物品 id 表征中含有的位置偏置。通过选择不同的偏置代理集合,并在主模型前增加代理表征纠偏模块,我们可以在不更改模型核心结构的情况下对推荐系统中的位置偏置、流行度偏置等常见偏置进行消除,具有较好的通用性和适配性。

接下来的核心问题就是如何解耦偏置代理 P 的表征 C 和其他特征的表征 Z,为此我们使用了三种不同的解决思路。

2. 优化思路

(1)正则约束

第一种思路是增加正则项约束,如 cosine 约束。将偏置代理 P 的表征 C 和其他特征的表征 Z 映射到同一空间,并计算二者的 cosine 相似度,当二者 cosine 相似度趋近于 0时,Z 和 C 在向量空间上将会垂直分布,从而使得偏置表征和其他表征向着不同方向发展,尽可能减少正常特征表征受到的 Bias 影响。



该方法需要增加一项 cosine 约束 loss 到原模型 loss 中联合优化,优点是实现简单,缺点是二者垂直的约束较弱,只能保证两部分表征的相对关系是尽可能不同向的,而对两个表征本身的方向性无法做限制。

在预测时,如果期望得到更加无偏的预测,就只使用无偏表征 Z 用于下游的任务。如果期望得到精度-无偏性更加平衡的预测结果,则可以以门控、注意力机制等方式以合理的方式引入 C 辅助预测。因此图中对 C 的使用是虚线。以门控网络融合方式为例,如果我们以 user 特征作为门控信号的输入,那对应的假设就是不同用户对 Bias 的接受度不同,从而实现用户级别的个性化 Bias 控制

(2)特征投影

第二种思路是特征投影,在将 Z 和 C 映射到同一向量空间后,我们可以将 Z 投影到 C 上,得到表征 Z 在表征 C 上的分量,通过向量运算法则,使用 Z 减去 Zc 得到的就是 Z 垂直于表征 C 的纯化分量,记为 Zpure,从而消除混淆代理表征对原始特征表征的影响



类似的,我们可以使用 Zpure 用于下游任务获得更好地无偏性预测,或者以不同的方式将 C 以合适的方式用于辅助预测。

这种特征投影方式的好处是不约束原始表征 Z 和 C 的方向关系,且不需要增加额外 loss,降低了调参复杂度。

(3)互信息求解

第三种方式是借助互信息理论工具,互信息(Mutual Information)是信息论里的一种信息度量,它可以看成是一个随机变量中包含的关于另一个随机变量的信息量,或者说是一个随机变量由于已知另一个随机变量而减少的不确定性,如果我们约束偏置代理表征 C 和特征表征 Z 的互信息趋近于 0,那么特征表征理论上将消除偏置的影响从而得到更加无偏的推荐结果。



这种方式的难度在于如何估计两个高维连续变量之间的互信息。借助神经网络强大的拟合能力,我们可以借助基于神经网络的互信息估计器得到两个高维连续变量的互信息上下界。

一方面为了保证互信息约束的严格性,我们选取互信息上界估计方法 CLUB 作为 Z 和 C 互信息约束的求解方法,如果我们约束 Z 和 C 的互信息上界趋近于 0,那么 Z 和 C 实际的互信息一定是趋近于 0 的。

另一方面为了方便端到端高效训练,我们使用它采样简化的弱理论版本 CLUB-SAMPLE,该方式通过变分法近似条件概率分布,并在 Batch 内通过随机采样得到边缘分布,易于使用且计算高效。

最后,我们将计算得到的互信息上界估计与原模型的 loss 融合后进行联合训练消除 Z 中的偏置信息,得到的 Z 和 C 的使用方式与前面两种思路相同。

3. 应用效果

和第一个工作类似,我们也在公开数据集和业务真实数据集上分别验证了我们方法的有效性,其中公开数据仍然使用了 Yahoo!R3 数据,业务真实数据使用的是腾讯理财通首页基金推荐场景回收的用户反馈数据,评估指标使用了 AUC 和 NLL,其中 AUC 是主要指标。由于我们需要使用特征,因此更换模型结构为 MLP 和 DCN 两种经典推荐模型。



离线结果表明,我们的方法在不同 backbone 的公开和产品数据集评估指标上均取得了最优性能。

我们也在腾讯理财通首页基金推荐场景验证了代理表征纠偏的有效性,评估指标仍然采用前面提到的千次曝光点击、千次曝光转化和千次曝光转化金额。



我们在线上进行了为期三周的 AB 实验,结果显示三种不同的解耦方式均取得了较为显著的正向收益,其中基于互信息求解的方式表现最佳。

我们还对模型学习的偏置代理表征 C 和特征表征 Z 进行了基于 TSNE 的可视化分析,观察到二者在空间上是完全可分且不重叠的,这进一步佐证了我们方法的有效性。

上述工作已提交到相关国际会议,正处于审稿流程中。

--

04

总结展望

最后我们对今天分享的两个方法进行一个简单总结,并对未来的研究方向进行简单介绍。

针对工业界在应用 Debias 方法时面临的无偏性和预测精度平衡的问题, 我们提出了 一种模型无关的自采样、自训练、自评估 Debias 框架 SSTE,可以简单高效的应用于任意推荐模型中,该方法通过自采样生成多个不同偏置程度的数据子集,由于借鉴了类似交叉验证的思想,对于 IPS 预估的准确性要求更低,因此 SSTE 还为 IPS 类方法在实际应用中面临的 IPS 计算不准确、高方差问题提供了一种新的解决思路。

此外对于解耦表征类方法,由于工业应用往往有着丰富的特征,客观的增加了模型自主拆分表征中有偏和无偏部分的难度,我们提出了借助专家知识通过选取偏置代理辅助进行解耦表征的纠偏框架 ,该方法提出了三种表征解耦实现方案和多种不同的表征应用方式,供实际场景根据效果进行选择,具有较好的应用性。

上述工作是我们与深圳大学计算机与软件学院、光明实验室明仲教授团队的刘杜钢博士、潘微科教授合作完成,也得到了腾讯金融科技的陈亮、何秀强、杜西库等老师的大力支持。

后续我们将在 Debias 方向上进行更深入的探索,致力于寻找在样本、特征、表征、模型结构、损失函数等不同层面上更加完善的解决方案,并尝试给出更加合理全面的评估方法,此外还会探索 Debias 与实际工业应用中多场景、多任务学习等复杂应用结合的可行性。

--

05/问答环节


Q1:Debias 在腾讯的金融推荐场景下落地的难点有哪些?如何解决的呢?

A1:Debias 方法在金融推荐场景和在其他推荐场景下的落地有很多相似的难点,比如如何客观全面的评估 Debias 的效果,如何在不更改已有模型结构的情况下进行纠偏等。但金融推荐场景也有一些特殊性,由于金融推荐场景候选物品少,产品形态复杂,受到 Bias 影响更严重,且由于金融场景对专业性有要求,热门物品对大部分人往往具有较好的普适性,因此需要避免过度纠偏。我们一开始也使用了诸如 IPS 等的一些业界经典纠偏方法,这些方法在上线前期有一定的提升,但难以保持稳定的效果,甚至在有些场景下会产生负向影响。我们后续提出的SSTE 自采样纠偏框架和代理表征解耦的纠偏框架 ,就是在解决预测精度跟无偏性平衡等关键问题

Q2:为什么约束偏置代理表征 C 向量和特征表征 Z 向量不相关,就能保证 C 学到了偏置信息?

A2:因为这里的 C 本身输入的就是我们认为可能含偏的一些特征,比如产品曝光位置等,这就保证了 C 所含信息的指向性。在互信息等约束方式下,如果消除 Z 当中所含有的由 C 表征的信息,就可以消除偏置对原始特征表征的污染。

今天的分享就到这里,谢谢大家。




▌DataFun2023线下大会 火热报名中


第四届DataFunCon数据智能创新与实践大会将于⏰ 7月21-22日在北京召开,会议主题为新基建·新征程,聚焦数据智能四大体系:数据架构数据效能算法创新智能应用 。你将领略到数据智能技术实践最前沿的景观

点击图片可查看大会详情,欢迎大家点击链接报名参会
DataFunCon2023(北京站):数据智能创新与实践大会




本文地址:https://www.6aiq.com/article/1679911822094
本文版权归作者和AIQ共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出