SIGIR 2022 | FRNet:上下文感知的特征强化模块

28576b16bdffede0388751d821b9c8bc.gif

©作者 | 汪方野

单位 | 复旦大学

研究方向 | 推荐系统 数据挖掘

2fe498dc1935c838a8de34322137339b.png

论文标题:

Enhancing CTR Prediction with Context-Aware Feature Representation Learning

收录会议:

SIGIR 2022

论文链接:

https://arxiv.org/abs/2204.08758

9a4aa7da60902b4cee163efac3040578.png


简介与主要贡献

目前大多数提升点击率预估效果的模型主要是通过建模特征交互,但是如何设计有效的特征交互结构需要设计人员对数据特点以及结构设计等方面有很强的要求。目前的以建模特征交互为主的模型可以总结为三层范式:embedding layer, feature interaction layer, 以及 prediction layer。大多数论文改进集中在 Featrue interaction layer。

425d9ffe426fbeb1e9a6a96ff45fabde.png

然而大部分的模型都存在一个问题:对于一个相同的特征,他们仅仅学到了一个固定的特征表示,而没有考虑到这个特征在不同实例中不同上下文环境下的重要性。例如实例 1:{female, white, computer, workday} 和实例 2:{female, red, lipstick, workday} 中,特征 “female” 在这两个实例中的重要性(对最后的预测结果的影响或者与其他特征的关系)是不同的,因此在输入特征交互层之前我们就可以调整特征 “female” 的重要性或者是表示。

现有的工作已经注意到了这个问题,例如 IFM、DIFM 等,但是他们仅仅在不同的实例中为相同特征赋予不同的权重(vector-level weights),导致不同实例中的相同特征的表示存在严格的线性关系,而这显然是不太合理的。

另一方面,本文希望一个理想的特征细化模块应该识别重要的跨实例上下文信息,并学习不同上下文下显著不同的表示。

给出了一个例子:{female, red, lipstick, workday} and {female, red, lipstick, weekend},在这两个实例汇总,如果使用self-attention(在 CTR 中很常用的模块,来识别特征之间的关系),那么因为 “female”和“red”以及“lipstick”的关系比“workday”或者“weekend”的更加紧密,所以在两个实例中,都会赋予“red”和“lipstick”更大的注意力权重,而对“workday”或者“weekend”的权重都很小。但是用户的行为会随着“workday”到“weekend”的变化而变化。

因此本文提出了一个模型无关的模块 Feature Refinement Network(FRNet)来学习上下文相关的特征表示,能够使得相同的特征在不同的实例中根据与共现特征的关系以及完整的上下文信息进行调整。主要贡献如下:

  • 本文提出了一个名为 FRNet 的新模块,它是第一个通过将原始和互补的特征表示与比特级权值相结合来学习上下文感知特征表示的工作。

  • FRNet 可以被认为是许多 CTR 预测方法的基本组成部分,可以插入在 embedding layer 之后,提高 CTR 预测方法的性能。

  • FRNet 表现出了极强集兼容性和有效性。

a719b6374e1e326416c0e41a553ceaa0.png

FRNet模块

FRNet模型主要包含两个模块:

  • Information Extraction Unit (IEU):IEU 主要是来捕获上下文相关的信息(Self-Attention unit)以及特征之间的关系信息(Contextual Information Extractor)来共同学习上下文相关的信息。再 Integration unit 进行融合。

  • Complementary Selection Gate (CSGate):CSGate 可以自适应融合原始的和互补的特征表示,这种融合是在 bit-level 级别上的。

09bfabf28e5bf360072d2d84a8a10a2f.png

2.1 IEU

通过对以往模型的总结,FRNet 主要通过学习特征间的关系(vector-level)以及上下文相关的信息(bit-level)的信息来学习最后的 context-aware representation。首先在在 IEU 中使用以下两个模块:

  • Self-Attention unit:self-attention 善于学习特征之间的关联信息。FRNet 中使用了一个基本的 Self-attention 结构。

    480dac1f19433ce777d7d55400b19d06.png

  • Contextual Information Extractor:在 motivation 部分提到过,self-attention 虽然擅长学习特征之间的关系,但是无法学习整体的上下文信息。所以特地使用了一个简单的 DNN 模块来提取不同实例的上下文信息。一个之间的理由是 DNN 可以关注到所有的特征信息(bit-level 信息)。

    4f2a0a3600ec62ead5b8552e89f7ed62.png

以上两个单元分别学习了特征之间的关系,对输入信息进行压缩,保存了特征的上下文信息。接下来通过一个 Integration unit 对这两部分信息进行融合:

725e7ce3432e09a340f36af873adddea.png

可以看到每个实例只有一个上下文信息维度为 d,而经过 self-attention 之后的关系信息维度是 f*d。所以融合之后相当于赋予了每个特征上下文信息,而这部分信息仅仅 self-attention 是无法获取的。

3e5774b6ebbe2b8a31dac47a39fa2257.png

2.2 CSGate

从图 2 中可以看到,本文使用了两个 IEU 模型,其中 模块学习了一组  complementary feature representaion , 学习了一组权重矩阵 。基于 、 以及原始的特征表示 ,FRNet 通过一个选择门获得了最后的 context-aware feature representation:

54d46487160b98a57d6f2bee789d481c.png

公式主要分为两部分:

  • Selected features:首先最后的结果并没有完全舍弃原有的特征表示 E,但是也没有像 ResNet 那样将原始表示 E 直接保留,而是通过权重矩阵进行自适应的选择。

  • Complementary features:另一方面,如果仅仅使用原有的特征也会导致模型的表达能力受限。现有的一些方法也仅仅通过分配一个权重的方法来对特征进行调整。同时仅仅分配权重没有考虑哪些 unselected information。在计算权重的时候使用可 sigmoid 方式,如果只使用选择的一部分信息,会导致最后的信息

  • “不完整”(这里有点借鉴 GRU 以及 LSTM 的设计思路)。因为我们从互补矩阵 上选择互补的信息。


a5cf1674aa3434c798b4ea910cede8a5.png

实验分析

实验数据集:

3.1 整体分析

主要将 FRNet 应用到 FM 模型中说明 FRNet 的效果。

这一部分说明了 FRNet 的效果和效率。

e60053568056ea86f1300a0fed8efacf.png

3.2 兼容性分析

将 FRNet 应用到其他模型中查看效果。

和其他模块进行对比。

15a684399d6cb83ca7e489bcb074230a.png

3.3 超参数分析

对 IEU 模块中的两个超参数进行了分析:

  • DNN 的层数

  • Self-attention 的 attention size

05dce8152134c90175c6a7af82d77434.png

3.4 消融分析

通过消融实验来说明 FRNet 中的设计都是有效的:

  • Learning context-aware feature representations是有效的。这里面所有的变式都对原始的特征进行改进,从而获得了更好的效果(和#1对比)

  • Cross-feature relationships and contextual information 是必要的。#2中学习了特征之间的关系,超过了 #1。#13 和 #3 学习了 contextual information,分别超过了 #4 和 #2。

  • Assigning weights to original features 是合理的。#5 移除了权重信息,发现 #10 和 #11 超过了 #5。同时 #6 和 #7 超过了 #1 也说明了相同的结论。

  • Learning bit-level weights is more effective than learning vector-level。(#7, #9, #11, #13)超过了对应的(#6, #8, #10, #12),前者学习位级别的权重,而后者学习向量级别的权重。

  • Complementary Features 也是很关键的. 添加了辅助特征 之后  #10,#11 分别超过了 #6 和 #7。而且 #12 和 #13 分别超过了 #10 和 #11,说明给辅助特征分配权重也是必要的。

36a6f9e80935da7e52bf8ad9c722a733.png

3.5 特征表示可视化分析

本文的 context-aware feature representation 总结起来就是一句话:相同的特征在不同的实例下应该有不同的表示,而且不同实例下的表示不应该有严格的线性关系。为了说明这一点,本文通过可视化的方式进行了说明。图中都是同一个特征的原始表示和 1000 个不同实例中经过 FRNet(或者其他模块)之后的表示。

  • EGate 无法学习不同的表示;DIFM 学到的表示存在严格的线性关系。而 FRNet 学到的表示同时解决了这些问题。

  • #6 也是学习向量级别的权重,但是和 DIFM 比可以看到,使用 IEU 学到的权重可以使得特征空间更加分明。#6 中没有添加辅助特征,所以可以看到还是存在线性关系的,而 FRNet-vec 中添加了辅助特征,消除了线性关系。

  • FRNet 是学习 bit-level 的权重,而 FRNet-vec 是学习向量级别的权重,从分区的形状可以看到 FRNet 的非线性特征更加显著,即更加集中。

7cd76558f6bccb4677497d0ceee98ee0.png

3.6 IEU可视化分析

前面说到 Self-attention 中存在的问题:在大部分特征都相同的情况下,无法区分某些不重要的特征表示。在这个实验中,选择了两个特征(只有一个特征是不同的,其他特征都相同),在经过 self-attention 之后,获得的表示都是相同的。

但是在经过 CIE(DNN)压缩之后,可以看到仅仅因为这一个特征的不同,最后获得的表示是权重不同的,而这就是 self-attention 无法学习的上下文信息。最后 IEU 将上下文信息融合到 self-attention 中获得了图 8(c)的效果:两个实例中的每一组对应特征都有显著的差别。

144732775afc1b73f7350bb6e4c51924.png

3.7 bit-level权重分析

汇总分析了权重矩阵 在 100K 个实例中分布情况。通过均值可以看出来 57.8% 的概率选择原始特征表示,而 42.2% 的概率选择互补特征。

ddf5f2a2585f3c2c7347fe29ec0c93db.png

更多阅读

45221acecfe0ce15e9c0096345f7352c.png

f5915d308be5a1fcffd57ec9b226f09f.png

55cf894c7b4ef486898fc67351f5b5dc.png

06c323e71d17e7c1ba3a65e147671450.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

275e9f96a5b34936e904e3b62bb7fd5e.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

8c4c7ab87de7f2cf33c698907aedaacc.jpeg

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值