Denoising in Rec(1):Sampler Design for Implicit Feedback Data by Noisy-label Robust Learning

  • SIGIR2020


摘要

由于易收集且普遍适用,推荐研究中广泛使用隐性反馈数据。然而,预测用户对隐反馈数据(implicit feedback)的偏好是一项具有挑战性的任务,因为我们只能观察到交互过的样本和未交互的样本(unvoted samples)。很难从未交互的样本中区分负反馈样本以及未知正反馈样本。

现有的工作,如贝叶斯个性化排名(BPR),从未交互的样本中同一采样构成负样本,因此存在一个关键的标签噪声问题(noisy-label issue)。为了解决这一问题,本文设计了一种基于噪声标签鲁棒学习的自适应采样算法(an adaptive sampler based on noisy-label robust learning)。

为了解决这个问题,首先引入贝叶斯逐点优化(Bayesian Point-wise Optimization, BPO),通过最大似然估计学习一个模型,例如矩阵分解(MF)。我们使用该模型预测用户的偏好,并通过最大化观察到的数据标签的可能性来学习,即用户更喜欢她的正样本,而对她的未交互的样本没有兴趣。然而,在现实中,用户可能对一些未交互样本感兴趣,但这些未交互的样本有可能是用户尚未交互的正样本,被错误标记为阴性样本。在此基础上,考虑这些噪声标签的风险,本文提出Noisy-label Robust BPO(NBPO).

基于贝叶斯定理,NBPO还通过标签翻转(label flipping)的可能性来建立用户偏好和观察到的样本间的关联,同时最大化观测似然函数(observation likelihood)。在NBPO中,用户更喜欢她的真正样本,而对她的真负样本不感兴趣,因此优化质量显著提高。

Main Story

BPR是一种广泛应用于隐式反馈数据的优化准则,因为其卓越的性能。然而,有一个关键问题,在BPR中,所有未交互的样本都被同等地视为负。
事实上,用户没有交互的项目可能不是因为他/她不喜欢它,而是因为他/她还没有看到它。在现有的抽样策略中,这些正样本被错误地标记为负样本,这导致了严重的噪声标签问题。为了提高采样质量,本文提出研究推荐任务中的噪声标签鲁棒学习对于每个未观察到的用户-物品交互,将其标记为负样本,但估计被错误标记的可能性

观察的可能性被分解为真实标签的可能性和标签噪声的可能性。我们通过最大化观测的可能性来联合学习真实标签的可能性和标签噪声的可能性。通过这种方法,我们可以从被污染的观测标签中学习出真实的标签,并利用得到的真实标签进行预测。

Noisy-label Robust Learning

噪声标签问题是有监督机器学习任务中的一个关键问题。标签噪音会误导模型并降低性能。越来越多的研究文献旨在解决与从有噪类别列表的样本中学习有关的问题

Bootkrajang和Kaban提出了一种带噪标签鲁棒回归算法,该算法试图结合估计标签翻转概率来学习分类器。真实标签和观察标签的可能性通过翻转概率连接。最终最大化了观测的可能性来估计所有参数。阳性和未标记(Positive and unlabeled, PU)数据可以被认为是一种噪声标签数据,其中我们主要考虑正样本被错误标记为阴性的概率。

Ghasemi等人提出了一种针对PU数据的主动学习算法,该算法通过分别估计正点和未标记点的概率密度,然后计算信息量的期望值,从而去除超参数并获得更好的信息量度量。Plessis等人[33]提出了一种对成本敏感的分类,它利用非凸损失来防止目标函数中出现多余的惩罚项。Sheieh等人[23]提出了一种PU数据的矩阵补全方法,可用于推荐任务。

相关链接:

  • 几种噪声标签识别算法简介 - 杨旭东的文章 - 知乎
    https://zhuanlan.zhihu.com/p/104961266
  • 基于深度神经网络的噪声标签学习 - 华为云开发者社区的文章 - 知乎
    https://zhuanlan.zhihu.com/p/364708086

训练数据包含N个样本,,其中是包含噪声的二元的观测标签。

考虑最经典的逻辑回归模型,最终 损失函数定义为:

考虑到噪声标签的存在,需要设计方法来减缓噪声的影响,引入新的变量来表示第n个样本的真实标签,最终的观测指标概率分布如下所示:

其中 即为标签翻转概率,表示真实标签到观测标签之间的概率。
基于以上公式,进行模型训练,通过最大化以上loss来学习分类参数和标签噪声概率:

在本文中,我们认为隐式反馈的未标记正样本可以被错误标记为阴性样本,从而探索推荐任务中的噪声标签鲁棒回归,以提高采样质量。在现有的带噪标签鲁棒学习方法中,对于某些j和k,所有样本共享相同的标签翻转概率,而在本文中我们讨论标签噪声的概率因用户而异, 可以表示为不同样本的概率形式:

Method

1. Bayesian Point-wise Optimization

传统的BPR结构无法适用于noisy-label robust learning, 因为其pairwise的结构特性。 所以本文作者先提出Point-wise的方法来作为优化方法:定义二元交互矩阵来表示观测结果:, 矩阵元素为1即表示用户与物品存在交互,反之为0.那么观察到的交互记录可以表示为.

作者基于最大后验概率的思想来对模型进行求解:

那么似然函数可以表示为:

以上的交互概率预测使用MF形式,同时再定义模型参数的先验分布符合正太分布:

最终的目标函数为:

通过最大化以上的后验估计得到模型参数。

2. NOISY-LABEL ROBUST SAMPLER

在BPO方法的基础上,作者将noisy-label robust learning的方法加入优化中:

首先,根据上面的介绍,我们需要设置噪声标签概率,考虑到推荐上下文,具体的设置策略为:

  • 即实际为负样本,但用户给了正反馈/交互的情况,作者假设该情况的概率为0,即这种用户误触之类的噪声行为发生概率为0
  • 即实际为负样本,用户也没有交互的情况,作者假设该情况的概率为1
    这就是假负样本的情况
    即真正样本的情况

在推荐场景中,项目被忽略的概率p(R)=0 | R=1)对用户和物品敏感的,即p(R)=0 | R=1)随不同物品和不同用户而变化。例如,热门物品不太可能被错过,用户花更多的时间浏览物品,错过他们喜欢的项目的可能性就更小。
这还取决于用户习惯和物品的搭配。考虑到上述原因,文章提出学习了不同样本的不同噪声标记概率,即,我们在NBPO中使用M×N概率矩阵Γ∈ R M×N表示噪声标签概率:


那么最终可以将似然函数表示为:
后验函数可以表示为:
上式最大的特点在于多了噪声概率矩阵参数。

在noisy-label robust learning中常使用EM算法进行优化,但是对于大规模隐变量而言,EM比较低效;因此,文中提出使用SGD进行优化,根据实验结果之间进行SGD往往是次优的,作者根据EM的推导(EM也是通过不断求解下界的极大化 来逼近求解对数似然函数的极大值),构建目标函数的下限:

上式基于琴生不等式来选取ln函数的下界,在实际优化中通过优化上式进行求解。

NBPO 优化

  • 为了学习NBPO模型,我们仍然面临一个关键问题:当使用最大似然估计进行优化时,对数代理函数不适合噪声标签鲁棒推荐的情况
    可以看到两个部分的变量是分开的,即求解过程是独立的,可以考虑移除ln函数,重新改造loss:
    在移除In函数后,sigmoid函数可能会出现梯度消失的问题
    文中提出对于sigmoid函数项,在求导时使用Ln(sigmoid(x))进行替代,可以理解为是一种特殊的梯度截断方法,最终梯度计算方式如下:

NBPO实例

  • 以MF为例,NBPO的具体模型可以如下所示
  • 其中对于噪声概率矩阵同样使用低秩矩阵分解的形式来获取


  • 实际训练的时候同样采取负采样策略,选取负样本,但采用point-wise的方式进行训练

实验

  • 在两个数据集上与经典的MF方法进行了对比
  • 其中的SOTA是ICML15提出的ShiftMC, 也是基于noisy-label的思路


总结

  • 本文针对隐式数据上的推荐任务,提出了一套新的优化方法,主要基于noisy-label roubst learning的方法来改造现有的BPR框架,已实现对未交互样本的有效利用。
  • 在论文写作和具体的公式推导细节上,本文有较多可借鉴之处。
  • 对于此方向,需要进一步了解noisy-label robust learning研究领域的其他实现策略,来进一步提出更fancy的优化方法
  • 此外,对于该方法是否可以推广应用于更细分的推荐任务,需要深入思考。

END

本人所有文章均为原创,欢迎转载,请注明文章出处 。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问本人主页查看最新信息https://www.jianshu.com/u/40d14973d97c

你可能感兴趣的:(Denoising in Rec(1):Sampler Design for Implicit Feedback Data by Noisy-label Robust Learning)