前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >KDD'23 交大,华为 | MAP:用于点击率预估的模型无关的预训练框架

KDD'23 交大,华为 | MAP:用于点击率预估的模型无关的预训练框架

作者头像
秋枫学习笔记
发布2023-09-11 09:15:15
4630
发布2023-09-11 09:15:15
举报
文章被收录于专栏:秋枫学习笔记

标题:MAP: A Model-agnostic Pretraining Framework for Click-through Rate Prediction 地址:https://arxiv.org/pdf/2308.01737.pdf 会议:KDD 2023 学校,公司:交大,华为

1.导读

本文关注点击率CTR预估方法的研究,本文将与训练-微调的方式引入点击率预估中,从大量的反馈数据中学习有效表征。本文提出模型无关的预训练MAP框架,利用特征损坏和回复来进行子监督学习。该框架主要包含两种算法:

  • 掩码特征预测(MFP):通过mask和预测一小部分的输入特征来研究每个实例中特征的交互,并引入噪声对比估计(NCE)来处理大型特征空间
  • 替换特征检测(RFD):通过替换和检测输入特征的变化,进一步将MFP转变为二分类任务。

2.方法

2.1 MAP框架概览

将nlp,cv中的子监督学习引入ctr预估任务中,首先为前置任务(或者说代理任务)预训练ctr模型,然后用点击信号微调预训练模型。

预训练阶段提出了一个与模型无关的预训练(MAP)框架。模型的前置任务是从损坏的样本中恢复原始信息(例如,原始特征,损坏的字段索引)。值得注意的是,MAP与任何神经CTR模型兼容,因为只破坏输入样本(即特征损坏层)并改变恢复目标的预测头(即特征恢复层)。最后,通过自定义特征损坏和恢复层的设计,得到两种特定的预训练算法。

  • MFP:mask掉原始特征中的部分特征,用代替,然后预测被mask的特征
  • RFD:检测每个field的特征是否被替换过

2.2 MFP

在MFP预训练阶段,首先用特征掩码层破坏原始输入样本

x_i

,用随机替换一定比例的特征。然后,将损坏的样本

x_i^c

通过embed层和特征交互层,得到表征

q_i^c

,然后将其输入到逐field的预测层,以预测每个的原始特征。考虑效率和实用性,作者引入噪声对比估计(NCE),以允许模型在大型特征空间(例如,数百万个候选特征)中进行预测。

2.2.1 特征掩码层

对于具有F个特征的输入样本,用随机替换部分特征,得到损坏的样本

x_i^c

。要mask的特征比例是由超参数γ控制。将mask字段的索引集表示为

I

。也是embedding表中的特征,一个特殊的特征,所有field用的的emb是一样的,即不用维护特定于field的mask表征,以避免引入有关的先验知识。

2.2.2 逐field预测层

在embedding层和特征交互层之后,得到表征

q_i^c

。对于第f个field的每个mask特征

x_{i,f}

,构造一个独立的MLP

g_f

,之后用一个softmax函数来计算候选特征上的预测概率

p_{i,f}
\begin{array}{c} z_{i, f}=g_{f}\left(q_{i}^{c}\right), z_{i, f} \in \mathbb{R}^{M}, \\ p_{i, f, j}=\frac{\exp \left(z_{i, f, j}\right)}{\sum_{k=1}^{M} \exp \left(z_{i, f, k}\right)}, j=1, \ldots, M . \end{array}

将每个masked field的预测空间(即候选特征)从特定于字段的特征空间扩展到全局特征空间,以增加前置预训练任务的难度,从而有利于下游CTR预测任务。也就是说,模型必须从整个特征空间中选择原始特征

x_{i,f}

,然后将MFP预训练视为一个多类分类问题,并利用多类交叉熵损失进行优化:

\mathcal{L}_{i}^{M F P}=\frac{1}{|\mathcal{I}|} \sum_{f \in \mathcal{I}} \operatorname{CrossEntropy}\left(p_{i, f}, x_{i, f}\right)

2.2.3 NCE

上述的MFP方法,需要在所有特征上计算softmax,如果特征有百万甚至更多,则会导致预训练的成本很大,因此作者采用噪声对比估计(NCE)来降低softmax开销。NCE将多类分类问题转换为二元分类任务,其中模型尝试区分正特征(即mask特征

x_{i,f}

)和噪声特征。对于第f个mask的field,从M个候选特征中根据不同特征的分布采样K个特征,然后构建下述交叉熵损失,其中

z_{i,f,t}

为第f个MLP的预测输出,t为正特征的索引,σ为sigmoid函数。原先的复杂度为M,即全量,而现在的复杂度为Km,K为采样的特征,m为field的个数

\mathcal{L}_i^{NCE}=-\frac{1}{|I|}\left[\sum_{f\in I}(\log\sigma(z_{i,f,t})+\sum_{k=1}^{K}\log(1-\sigma(z_{i,f,k})))\right],

2.3 RFD

如图2所示,MFP是预测,而RFD方法提供来自所有特征field的细粒度和更多样化的预训练信号,RFD是对所有field都预测是否被更改了。 在RFD预训练阶段,首先通过特征替换层用其他特征随机替换一定比例的特征,破坏原始输入样本

x_i

,和MFP类似,也可以获得表征

q_i^c

2.3.1 特征替换层

对于具有F个特征的输入样本,随机替换部分特征,并将替换字段的索引集表示为

I

,替换比例为γ。替换的特征是基于被替换特征对应的field的分布进行采样得到(即,通过特征频率分布从特定于字段的特征空间中抽样),从而得到损坏的样本

x_i^c

2.3.2 逐field预测层

与MFP类似,通过embedding层和特征交互层获得

x_i^c

的表征

q_i^c

。然后,用MLP进行预测,用sigmoid函数进行打分,得到一个长度为F的预测向量

p_i

p_{i,f}

表示第f个field有被替换过的概率

p_i=\sigma(\text{MLP}(q_i^c)),p_i\in\mathbb{R}^F,

然后对每个field构建交叉熵损失函数

\mathcal{L}_i^{RFD}=\frac1F\sum_{f=1}^F\text{BinaryCrossEntropy}(p_{i,f},r_{i,f}),

结果

超参数γ的的实验,在0.1-0.3比较好

往期推荐 CIKM'23 美团 | DCIN:考虑点击item上下文信息的CTR预估方法 KDD'23 蚂蚁 | SAMD:异构多场景推荐方法 KDD'23 美团 | 用于跨域推荐的协同迁移学习框架 SIGIR 2023 | PLATE: 基于prompt增强范式下的多场景推荐

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秋枫学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.导读
  • 2.方法
    • 2.1 MAP框架概览
      • 2.2 MFP
        • 2.2.1 特征掩码层
        • 2.2.2 逐field预测层
        • 2.2.3 NCE
      • 2.3 RFD
        • 2.3.1 特征替换层
        • 2.3.2 逐field预测层
        • 往期推荐 CIKM'23 美团 | DCIN:考虑点击item上下文信息的CTR预估方法 KDD'23 蚂蚁 | SAMD:异构多场景推荐方法 KDD'23 美团 | 用于跨域推荐的协同迁移学习框架 SIGIR 2023 | PLATE: 基于prompt增强范式下的多场景推荐
    • 结果
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档