读论文《Adaptive Domain Interest Network for Multi-domain Recommendation》

文章提出了一种名为AdaptiveDomainInterestNetwork(ADI)的模型,用于多领域推荐系统的检索步骤。ADI通过共享网络和领域特定网络捕捉不同领域的共性和差异性,并利用领域适应方法(如特定域批量归一化和领域兴趣适应层)处理特征级多样性。此外,自训练策略用于捕获跨领域的标签级联系。实验表明,ADI在多领域推荐任务中表现优越,已在阿里巴巴的在线广告系统中部署并取得提升。

Adaptive Domain Interest Network for Multi-domain Recommendation


基于自适应领域兴趣网络的多领域推荐

CIKM’22

ABSTRACT

​ 工业推荐系统通常包含来自多个业务场景的数据,并期望同时为这些场景提供推荐服务。在检索步骤中,从大量语料中选择出的top-K高质量项通常需要针对多种场景而有所变化。以阿里巴巴展示广告系统为例,不仅由于淘宝用户的行为模式多样,而且不同场景下广告商分配的竞价价格也存在显著差异。传统方法要么为每个场景单独训练模型,忽略了用户组和物品的跨域重叠,要么简单地混合所有样本并维护一个共享模型,难以捕捉场景之间的显著差异。本文提出自适应领域兴趣网络(Adaptive Domain Interest network),自适应地处理不同场景的共性和差异性,在训练过程中充分利用多场景数据。然后,所提方法能够通过在线推理给出不同场景的不同top-K候选项来提高每个业务领域的性能。具体而言,ADI分别通过共享网络和领域特定网络对不同领域的共性和差异性进行建模。此外,我们应用了特定领域的批量归一化,并设计了领域兴趣适应层来进行特征级领域适应。还结合了自我训练策略来捕获跨域的标签级连接。ADI已经部署在阿里巴巴的展示广告系统中,获得了1.8%的广告收入提升。

KEYWORDS

推荐系统,信息检索,神经网络,多域学习

1 介绍

现代推荐系统和广告系统通常构建为一个管线(pipeline),包括检索、排序、重排序等部分。

pipeline,中文意为管线,意义等同于流水线。

深度学习的Pipeline 就是模型实现的步骤。深度学习现在的Pipeline 一般都比较强调模型的组件构成流程。

​ 对于检索步骤(也称为匹配步骤),最重要的目标是在有限的时间内从一个非常大的语料库(数百万)中检索出top-K高质量的条目,用于下游排序任务。item-CF和user- CF是最轻量级和最常用的检索方法,它们利用了用户/项目的协同信号。然而,随着深度学习方法的激增,深度推荐模型比仅仅基于协作信号的算法表现得更好。

​ YouTube product-DNN建议生成用户/物品向量表示,计算它们的内积,然后使用高效的近似k近邻搜索检索物品。Facebook的EBR在其搜索引擎中集成了基于嵌入的检索和布尔匹配检索来解决语义匹配问题。

​ 进一步的工作集中在向量表示的能力或检索的搜索策略上。MIND提出了一种使用动态路由机制的多兴趣点检索模型。同时,提出了TDMs和深度检索,通过对大型语料库建立搜索索引来增加模型复杂度。虽然深度模型在推荐系统中蓬勃发展,但传统的推荐系统和在线广告系统主要关注如何对单一场景进行良好的建模。该文致力于在检索阶段从多场景的数据中获益。

​ 从多个业务场景收集的数据具有共性和多样性。对于前者,不同领域的用户和项目之间存在重叠,即域不变的用户兴趣和项目信息可以从一个领域转移到另一个领域。

以阿里巴巴展示广告制作数据为例,根据我们对流量日志的数据分析,有49%的用户和79%的商品在一天内至少出现两种场景。

​ 对于后者,来自多个域的数据分布是不同的,因为用户的偏好、物品的显示权限和广告商的出价在不同域之间差异很大。

​ 为了解决这些问题,现实世界的系统通常采用三种解决方案。

​ 第一种解决方案是使用从该领域收集的训练数据在每个领域训练一个模型,但缺点很明显:

​ 1)维护多个领域的多个模型需要大量的人力运营成本和计算资源。

​ 2).每个领域单独训练模型使得不可能利用领域不变知识( domain-invariant knowledge),特别是对于那些训练数据有限的小型业务场景。

​ 更进一步的解决方案是混合数据并训练共享模型,这样可以节省人力运营成本和计算资源。但如果没有特别的设计,当不同的域发生冲突时,模型的性能可能会下降。

​ 最后一种普遍采用的解决方案是以多任务的方式训练统一的模型。虽然多领域推荐任务通常与多任务推荐任务具有相似的模型结构,但我们认为这两个任务具有本质上的不同。对于前者,来自多个领域的输入数据分布差异很大,但任务目标是一致的。对于后者,不同任务的标签差异很大,而输入是相同的。因此,在实际应用中需要为多领域推荐设计一种特殊的体系结构。

​ 现有的多领域推荐工作主要集中在排序步骤,而很少研究检索步骤。为了解决检索过程中的多域推荐问题,我们提出了一种同时学习用户对多个场景偏好的自适应域兴趣网络(Adaptive Domain Interst network)。首先,ADI通过公共网络和领域特定网络分别建模不同领域的共性和差异性;为了解决特征级的域适应问题,提出了两种域适应方法,即特定域批量归一化方法和领域兴趣适应层方法。此外,为了捕获跨领域的标签级连接,还结合了一种自训练方法

不同领域的共性和差异性:公共网络和领域特定网络

解决特征级的域适应问题:特定域批量归一化方法和领域兴趣适应层方法

捕获跨领域的标签级连接:自训练方法

综上所述,我们提出的方法实现了以下贡献:

1、提出了一种新的模型架构——自适应领域兴趣网络,用于解决检索阶段的多领域推荐问题。ADI网络有效地学习了多个领域的共性和差异性,从而提升了所有领域的整体性能。

2、我们提供领域兴趣适应层来动态地将原始输入特征迁移到领域相关特征。广泛的实验和可视化证明了所提出的领域兴趣适应层的有效性。

3、我们首次尝试将自训练方法应用于我们的多领域推荐问题,捕获潜在的标签级跨领域连接。

4、我们在真实的工业生产数据集上进行了坚实的实验,并将我们提出的方法部署在在线广告系统中。

2、相关工作

领域适应:域适应(𝐷)问题是迁移学习的一个分支,目的是从源域学习,从而在目标域获得更好的性能。解决数据分析问题的关键在于将有用的知识从源领域转移到目标领域。

多域推荐::多领域推荐任务旨在使用从其他领域转移的知识来提高每个领域的模型性能。多域推荐(𝑀𝐷𝑅)和跨域推荐(𝐶𝐷𝑅)的区别在于迁移方向。CDR的目标是向特定方向迁移知识(例如,利用主场景的数据来提高冷启动场景下的性能),而MDR的目标是获得所有领域的整体性能。

多任务学习:多任务学习是一种同时学习多个相关任务的机器学习范式,可以在每个任务上获得更好的性能。[24]-[31]

自训练:自训练(或自监督学习)是一种学习策略,其中标记的数据是有限的,而更多的未标记数据是可用的。利用未标记数据是在自我训练范式中获得性能提升的关键。

3、 预备知识

3.1 问题公式

​ 在本节中,我们公式化了多域检索任务的定义。多领域检索任务旨在从一个非常大的语料库中检索多个领域的高质量条目。更具体地说,设U和V分别表示用户集和项目集。在线多域检索任务可表述如下:
S u , d = a r g T o p k v ∈ V f θ ( v ∣ u , d ) 𝑑 为域指示器 ; f θ ( v ∣ u , d ) 是带有可训练参数 θ 的估计匹配函数,用于测量 𝑢 到 V 的质量 S u , d 是一个包含相对于 f θ ( v ∣ u , d ) 的 t o p K 项的集合 S_{u,d} ={ argTopk}_{v\in V}f_\theta (v|u,d)\\ 𝑑为域指示器;\\ f_\theta (v|u,d)是带有可训练参数\theta的估计匹配函数,用于测量𝑢到V的质量\\ S_{u,d}是一个包含相对于f_\theta (v|u,d)的topK项的集合 Su,d=argTopkvVfθ(vu,d)d为域指示器;fθ(vu,d)是带有可训练参数θ的估计匹配函数,用于测量uV的质量Su,d是一个包含相对于fθ(vu,d)topK项的集合
​ 在基于神经网络的检索模型中,学习这样一个模型𝑓可以被认为是一个实例级别的分类问题。正项获胜的分布是基于softmax函数的
s θ ( v ∣ u , d ) = e x p ( f θ ( v ∣ u , d ) ) ∑ v   ∈ V e x p ( f θ ( v ′ ∣ u , d ) ) 训练 θ 是为了最小化训练数据上的负对数似然 − l o g   s θ ( v ∣ u , d ) s_\theta(v|u,d) = \frac {exp(f_\theta (v|u,d))}{\sum_{v\ \in V}exp(f_\theta (v'|u,d))}\\ 训练\theta是为了最小化训练数据上的负对数似然 -log \ s_\theta(v|u,d) sθ(vu,d)=v Vexp(fθ(vu,d))exp(fθ(vu,d))训练θ是为了最小化训练数据上的负对数似然log sθ(vu,d)

θ ∗ = a r g m i n θ ∑ d ∑ u ∑ v ∈ B u , d − l o g   s θ ( v ∣ u , d ) B u , d 是 𝑢 给定用户 𝑢 和域指示器 𝑑 的交互项的集合。 \theta ^* = argmin_\theta \sum_d \sum _u \sum _{v\in B_{u,d}} -log\ s_\theta(v|u,d)\\ B_{u,d}是𝑢给定用户𝑢和域指示器𝑑的交互项的集合。 θ=argminθduvBu,dlog sθ(vu,d)Bu,du给定用户u和域指示器d的交互项的集合。

​ 在实践中,由于V通常非常大,因此广泛采用子抽样来降低计算公式2 的分母的计算复杂度

​ 使用采样的softmax损失,并将式(2)中的𝑓替换为
f ~ θ ( v ∣ u , d ) = f θ ( v ∣ u , d ) − l o g   Q ( v ) \tilde f_\theta (v|u,d) = f_\theta (v|u,d) -log \ Q(v) f~θ(vu,d)=fθ(vu,d)log Q(v)
在子采样中,有以下公式
θ ∗ = a r g m i n θ ∑ d , u , v ∈ B u , d − f ~ θ ( v ∣ u , d ) + l o g ( e x p ( f ~ θ ( v ∣ u , d ) ) + ∑ v ′ ∈ N u , t e x p ( f ~ θ ( v ′ ∣ u , d ) ) ) N u , t 是不相关项的集合,根据建议分布 Q : V → R 从 V 中抽样,使其大小满足 ∣ N u , t ∣ < < ∣ V ∣ \theta ^* = argmin_\theta \sum _{d,u,v \in B_{u,d}} -\tilde f_\theta (v|u,d) +log(exp(\tilde f_\theta (v|u,d))+\sum_{v'\in N_{u,t}}exp(\tilde f_\theta (v'|u,d)))\\ N_{u,t}是不相关项的集合,根据建议分布Q:V\rightarrow R从V中抽样,使其大小满足|N_{u,t}|<<|V| θ=argminθd,u,vBu,df~θ(vu,d)+log(exp(f~θ(vu,d))+vN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请站在我身后

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值