论文笔记-WWW2024-ClickPrompt

论文笔记-WWW2024-ClickPrompt: CTR Models are Strong Prompt Generators for Adapting Language Models to CTR Prediction

  • ClickPrompt: CTR模型是大模型适配CTR预测任务的强大提示生成器
  • 摘要
  • 1.引言
  • 2.预备知识
    • 2.1传统CTR预测
    • 2.2基于PLM的CTR预测
  • 3.方法
    • 3.1概述
    • 3.2模态转换
    • 3.3Prompt生成
    • 3.4Prompt融合
    • 3.5学习策略
      • 3.5.1提示增强掩码语言建模
      • 3.5.2使用PLM进行微调
      • 3.5.3不使用PLM进行微调
  • 4.实验
    • 4.1实验设置
    • 4.2性能试验
    • 4.3模型兼容性
    • 4.4消融实验
      • 4.4.1提示策略
      • 4.4.2协作和语义知识融合策略
    • 4.5长尾分析
  • 5.总结

ClickPrompt: CTR模型是大模型适配CTR预测任务的强大提示生成器

论文下载链接: ClickPrompt
代码: ClickPrompt

摘要

传统的CTR模型通过one-hot编码将多领域分类数据转换为ID特征,存在语义信息丢失的问题。另一个研究方向将输入数据转换为文本句子,尽管保留了语义信息,但无法捕获协作信息,而且推理开销大。

本文提出了一种新颖的模型无关框架ClickPrompt,结合CTR模型生成与交互相关的软提示供PLMs使用。同时设计了一种提示增强的掩码语言建模预训练任务PA-MLM,其中PLM根据上下文信息以及CTR模型生成的软提示恢复被掩码的标记。然后,选择将CTR模型与PLM一起调优以获得更好的性能,或者单独调优CTR模型而不使用PLM以提高推理效率。

1.引言

本文旨在捕捉语义知识和协作知识以实现准确的CTR预测,同时解决推理效率问题。通过设计prompt增强的掩码语言模型PA-MLM,模型首先掩码ID特征的文本,然后PLM利用ID生成的软提示和文本上下文恢复被掩码的信息。这种双向信息流动允许ID的协作信息传递给PLM,同时保持文本的语义信息回流至CTR模型。

如图1所示,通过软提示,基于ID的协作知识将通过前向传播传递给PLM,而基于文本的语义知识将通过反向传播流回CTR模型。预训练后,本文提出两种不同的微调策略用于CTR预测:使用PLM微调和不使用PLM微调。
在这里插入图片描述
本文主要贡献:

  • 提出了一个新颖的框架ClickPrompt,其中CTR模型充当PLM的软提示生成器。PA-MLM通过软提示对协作知识和语义知识之间的交互和显式对齐进行建模,从而显著提高CTR性能。

  • ClickPrompt与模型无关,并且与各种CTR模型和PLM兼容。此外,通过单独对CTR模型进行微调,ClickPrompt可以提高预测准确性,而无需改变CTR模型结构或增加额外的推理成本。

2.预备知识

2.1传统CTR预测

大多数传统CTR模型的结构分为三层:嵌入层、特征交互层和预测层。嵌入层将稀疏独热编码转化为低维嵌入向量,特征交互层捕获高阶特征交互从而生成相应的特征表示,预测层根据特征交互层的特征表示计算用户的点击概率。预测层之后,CTR模型使用二元交叉熵损失进行训练。

2.2基于PLM的CTR预测

与传统模型不同,基于PLM的CTR模型通过硬提示模版将输入转换为文本。根据任务类型和真实标签表述,基于PLM的CTR模型可以分为两类。

第一类将CTR预测视为二进制文本分类任务,其中真实标签仍然与传统设置相同,为0或1。第二类将CTR预测视为序列到序列任务,其中真实标签被转换为二进制关键词,即是或否。这类方法利用编码器解码器或仅解码器的PLM来遵循指令并回答附加在文本输入后面的二进制问题(例如,用户会喜欢该项目吗?)。本文主要关注第一类。

3.方法

3.1概述

在这里插入图片描述

如图2所示,ClickPrompt的模型架构设计主要分为三个阶段:模态转换、提示生成和提示融合。首先,模态转换层将输入数据 x i x_i xi 转换为独热ID特征 x i I D ​ x_i^{ID}​ xiID 和文本特征 x i t e x t ​ x_i^{text}​ xitext。其次,ID特征 x i I D ​ x_i^{ID}​ xiID被输入到CTR模型中,随后经过提示生成层以产生独立的软提示向量。最后,在提示融合阶段,软提示作为PLM每个变换层的前缀隐藏状态,使得协作知识和语义知识之间能够实现显式对齐。

关于学习策略,ClickPrompt采用常见的预训练-微调方案。本文首先设计了一个提示增强的掩码语言建模任务PA-MLM用于预训练,其中PLM需要根据文本上下文和由CTR模型生成的软提示来恢复被掩码的标记。预训练之后,进行有监督的微调,既可以与PLM一起,也可以单独进行。前者实现了协作信息和语义信息之间的显式互动,从而提升性能,而后者则解决了推理效率问题。

3.2模态转换

将输入 x i x_i xi 转换为两种不同的模态:ID特征 x i I D ​ x_i^{ID}​ xiID 和文本特征 x i t e x t ​ x_i^{text}​ xitext,ID特征使用one-hot编码获得:
在这里插入图片描述

表格数据的复杂模板可能会误导模型,使其无法掌握文本中的关键信息。因此,本文采用“什么是什么”的硬提示模板:
在这里插入图片描述
其中 f j n a m e ​ f_j^{name}​ fjname 是第 j j j 个字段的字段名称, f i , j f_{i,j} fi,j 是第 i i i 个数据实例中第 j j j 个字段的特征值, [ ⋅ ] [ \cdot ] [] 表示连接操作符,用于将列表中的元素用空格“ ”连接起来。

3.3Prompt生成

通过CTR模型的嵌入和特征交互层FI获得特征表示:
在这里插入图片描述
然后,维护一组并行投影网络 { g l , k ( ⋅ ) } \{g_{l,k}(\cdot)\} {gl,k()} 用于软提示生成:
在这里插入图片描述
其中 p i , l , k p_{i,l,k} pi,l,k 是PLM第 l l l 层的第 k k k 个提示向量。 L L L 是PLM的层数, K K K 是每层的软提示数量。每个投影网络 g l , k ( ⋅ ) g_{l,k}(\cdot) gl,k() 是一个多层感知机MLP,用于维度一致性和空间转换。

3.4Prompt融合

如图2所示,获得的软提示将作为PLM每个转换器层的前缀隐藏状态。具体来说,文本特征 x i t e x t ​ x_i^{text}​ xitext 被分词为 Z Z Z 个单词标记,PLM 的第 l l l 层可以表示为:
在这里插入图片描述
其中 [ h i , l , z ] z = 1 Z ​ [h_{i,l,z}]_{z=1}^{Z}​ [hi,l,z]z=1Z 是第 l l l 层的标记隐藏状态。通过每一层的自注意力机制,来自CTR模型的协作信号可以通过提示接口与文本侧的语义知识显式对齐和融合。

最后,在经过 L L L 层传播后,在PLM的输出状态上应用池化和预测层:
在这里插入图片描述
输出维度以及激活和损失函数取决于采用的任务和学习策略。

3.5学习策略

如图2所示,ClickPrompt采用常见的预训练-微调方案作为学习策略。具体而言,将提示增强的掩码语言建模PA-MLM作为预训练任务,通过软提示的链接交融协作知识和语义知识,从而改善参数初始化。然后,选择与PLM进行有监督的微调,以获得更好的CTR性能,或者仅微调CTR模型而不使用PLM,以保持改进的预测准确性和推理效率。

3.5.1提示增强掩码语言建模

如图2所示,对文本特征进行标记掩码处理,以获得损坏的文本输入 x ^ i t e x t ​ \hat{x}_i^{text}​ x^itext,同时保留原始的ID特征。然后,PLM根据语言上下文以及从完整的ID特征生成的软提示来恢复被掩码的标记。

因此,公式8中的池化和预测层被设计为语言模型的经典解码器模块,然后是softmax函数和交叉熵损失。参考以往的工作,本文对每个输入 x i t e x t ​ x_i^{text}​ xitext 均匀采样15%的标记,并以8:1:1的比例执行三种不同的操作,即:(1) [MASK] 替换,(2) 随机单词替换,(3) 保持不变。

为了完成对被掩码标记的填空任务,PLM必须提取并整合嵌入在软提示中的相应“正确答案”,从而在CTR模型和PLM之间实现对同一输入 x i x_i xi 的对齐。

3.5.2使用PLM进行微调

集成CTR模型和PLM的预测,同时与软提示向量显式交互:
在这里插入图片描述

其中 α α α 是一个可学习的参数,用于平衡预测的权重, σ ( ⋅ ) σ(⋅) σ() 是sigmoid函数。通过这种方式,来自两个模态的协作知识和语义知识在微调过程充分融合,从而提升了性能。

3.5.3不使用PLM进行微调

为进一步解决推理效率问题,可以仅微调CTR模型而不使用PLM。在PA-MLM预训练过程中,通过反向传播将PLM中的语义知识注入到CTR模型中。因此,这种语义感知的参数初始化将能够实现协作知识和语义知识之间的隐式交互,从而提升CTR性能,而无需更改CTR模型结构或增加额外的推理成本:
在这里插入图片描述

对于这两种微调策略,在估计点击概率时应用二元交叉熵损失。

4.实验

4.1实验设置

数据集:MovieLens-1M、BookCrossing、Amazon-Toys 和 GoodReads

评估指标:AUC和Log Loss

基线:

  • 传统的CTR模型:FM、DNN、DeepFM、xDeepFM、PNN、DCN、AutoInt、FiGNN、FGCNN和 DCNv2。

  • 基于PLM的CTR模型:CTR-BERT、P5、PTab和CTRL。

实现细节:选择DCNv2作为CTR模型,RoBERTa-base作为预训练语言模型。

4.2性能试验

在这里插入图片描述
结论:

  1. 传统CTR模型的性能显著优于基于PLM的CTR模型,除了CTRL。这表明特征交叉模式中嵌入的协作信息对CTR预测至关重要。

  2. CTRL在所有基线模型中表现最佳。CTRL采用基于CLIP的框架,并通过对比预训练将PLM中的语义知识提炼到CTR模型中。

  3. ClickPrompt_with PLM在所有基线模型中实现了显著的性能提升,验证了协作知识和语义知识之间的显式对齐和交互的有效性。

  4. ClickPrompt_w/o PLM性能仅次于ClickPrompt_with PLM,提高了预测准确性,同时没有增加推理延迟。

4.3模型兼容性

为了研究模型兼容性,本文在CTR模型和PLM方面的不同主干上应用了ClickPrompt框架。对于CTR模型,选择DCNv2、AutoInt和DNN。对于PLM,选择TinyBERT (14.5M)、RoBERTa-base(125M)和 RoBERTa-large(335M)。
在这里插入图片描述
结论:

  1. ClickPrompt在所有基础模型上相对于原始CTR模型实现了显著提升,这验证了其在CTR模型和PLM之间的优越模型兼容性。

  2. 随着PLM模型规模的增加,ClickPrompt对原始CTR模型的性能提升逐渐增加。因为较大的PLM拥有更广泛的开放世界知识,有助于语义信号与协作信号之间的融合和对齐。

  3. 更大规模的PLM并不一定会导致CTR预测性能的成比例改善。因此,考虑训练开销,建议使用RoBERTa-base作为ClickPrompt的更合适和经济的选择。

4.4消融实验

本节主要分析提示策略以及协作与语义知识融合策略的影响。选择DCNv2、AutoInt和DNN作为基础CTR模型,并选择RoBERTa-base作为PLM基础。

4.4.1提示策略

在这里插入图片描述
本文比较了图3所示的两种不同的提示策略,结果如表3。
在这里插入图片描述
结论:

逐层提示策略的表现优于不使用逐层提示的策略。如果提示向量仅放置在浅层输入层,模型的协作知识可能在PLM的前向传播过程中被淹没,从而导致与语义知识的不平衡交互,最终造成性能下降。

4.4.2协作和语义知识融合策略

协作知识和语义知识之间的交互和对齐有两个关键技术点:

(1)从模型架构的角度来看,分层软提示是CTR模型和PLM之间显式交互的桥梁。

(2)从学习策略的角度来看,PA-MLM预训练任务中,PLM提取并合并嵌入提示向量中的有用协作信息,从而产生细粒度的对齐。

三个变体:

  1. 没有提示

  2. 没有预训练

  3. 两者都没有

在这里插入图片描述

结论:

删除提示或预训练后,性能下降。这表明协作知识和语义知识之间的显式交互和细粒度对齐可以更好地从两种输入模式中提取和融合信息,从而提高点击率预测性能。

4.5长尾分析

根据用户和项目在训练集中出现的频率排序。频率排在后10%的被归类为长尾低频用户和项目。
在这里插入图片描述
结论:

  1. 长尾低频用户或项目可能会导致传统的CTR 模型性能显著下降。

  2. 在长尾问题更严重的情况下(例如,用户和项目都是长尾的子集),ClickPrompt 可以比主干 CTR 模型带来显着更大的改进。这证实了ClickPrompt在解决推荐的冷启动或长尾问题方面是有效的。

5.总结

本文提出了一种新颖的模型无关框架ClickPrompt,其中CTR模型充当PLM的软提示生成器。设计了一种预训练-微调方案,以实现来自独热ID模态的协作知识与来自文本模态的语义知识之间的显式互动和对齐,从而显著提高CTR预测性能。此外,提供了另一种轻量级的微调策略,仅训练CTR模型以用于下游任务,而不使用PLM,从而有效解决推理效率问题。对四个真实世界数据集的广泛实验验证了ClickPrompt相较于基线模型的优越预测性能和模型兼容性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/481051.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【游资悟道】-作手新一悟道心法

作手新一经典语录节选: 乔帮主传完整版:做股票5年,炼成18式,成为A股低吸大神!从小白到大神,散户炒股的六个过程,不看不知道自己水平 围着主线做,多研究龙头,研究涨停&am…

qt QToolButton详解

1、概述 QToolButton是Qt框架中的一个控件,它继承自QAbstractButton。QToolButton通常用于工具栏(QToolBar)中,提供了一种快速访问命令或选项的方式。与普通的QPushButton按钮相比,QToolButton通常只显示一个图标而不…

【算法day3】链表:增删改查及其应用

题目引用 移除链表元素设计链表翻转链表 链表介绍 链表与数组不同的是,它是以指针串联在一起的分布在内存随机位置上的,而不是像指针一样占用整块的连续空间。因此也不支持通过指针读取。所以在题目里面总是比较抽象,需要通过画图来帮助解题…

【通俗理解】步长和学习率在神经网络中是一回事吗?

【通俗理解】步长和学习率在神经网络中是一回事吗? 【核心结论】 步长(Step Size)和学习率(Learning Rate, LR)在神经网络中并不是同一个概念,但它们都关乎模型训练过程中的参数更新。 【通俗解释&#x…

Zookeeper选举算法与提案处理概览

共识算法(Consensus Algorithm) 共识算法即在分布式系统中节点达成共识的算法,提高系统在分布式环境下的容错性。 依据系统对故障组件的容错能力可分为: 崩溃容错协议(Crash Fault Tolerant, CFT) : 无恶意行为,如进程崩溃,只要…

Cesium 当前位置矩阵的获取

Cesium 位置矩阵的获取 在 3D 图形和地理信息系统(GIS)中,位置矩阵是将地理坐标(如经纬度)转换为世界坐标系的一种重要工具。Cesium 是一个强大的开源 JavaScript 库,用于创建 3D 地球和地图应用。在 Cesi…

SQL进阶技巧:非等值连接--单向近距离匹配

目录 0 场景描述 1 数据准备 2 问题分析 ​编辑 ​编辑 3 小结 数字化建设通关指南 0 场景描述 表 t_1 和表 t_2 通过 a 和 b 关联时,有相等的取相等的值匹配,不相等时每一 个 a 的值在 b 中找差值最小的来匹。 表 t_1:a 中无重复值…

微积分复习笔记 Calculus Volume 2 - 3.1

The first 2 chapters of volume 2 are the same as those in volume 1. Started with Chapter 3. 3.1 Integration by Parts - Calculus Volume 2 | OpenStax

红日靶场-5

环境搭建 这个靶场相对于前几个靶场来说较为简单,只有两台靶机,其中一台主机是win7,作为我们的DMZ区域的入口机,另外一台是windows2008,作为我们的域控主机,所以我们只需要给我们的win7配置两张网卡&#…

软通动力携子公司鸿湖万联、软通教育助阵首届鸿蒙生态大会成功举办

11月23日中国深圳,首届鸿蒙生态大会上,软通动力及软通动力子公司鸿湖万联作为全球智慧物联网联盟(GIIC)理事单位、鸿蒙生态服务(深圳)有限公司战略合作伙伴,联合软通教育深度参与了大会多项重磅…

Mac配置和启动 Tomcat

Tomcat 配置与启动: 配置 Tomcat: homebrew install tomcat 启动 Tomcat: 如果cd ~/tomcat/bin文件夹存在startup.sh文件,可以直接在终端运行:./startup.sh 如果~/bin目录下,只有catalina文件。则在终端运行…

基于matlab程序实现人脸识别

1.人脸识别流程 1.1.1基本原理 基于YCbCr颜色空间的肤色模型进行肤色分割。在YCbCr色彩空间内对肤色进行了建模发现,肤色聚类区域在Cb—Cr子平面上的投影将缩减,与中心区域显著不同。采用这种方法的图像分割已经能够较为精确的将人脸和非人脸分割开来。…

Java多线程介绍及使用指南

“多线程”:并发 要介绍线程,首先要区分开程序、进程和线程这三者的区别。 程序:具有一定功能的代码的集合,但是是静态的,没有启动运行 进程:启动运行的程序【资源的分配单位】 线程:进程中的…

[论文阅读]Poisoning Retrieval Corpora by Injecting Adversarial Passages

Poisoning Retrieval Corpora by Injecting Adversarial Passages 通过注入对抗性文本对检索语料库进行中毒 http://arxiv.org/abs/2310.19156 EMNLP2023 文章的目标就是要让检索器检索的结果包含攻击者生成的对抗性文本,如果能够检索到,则认为攻击成…

Leetcode 二叉树的锯齿形层序遍历

算法思想: 这段代码实现了 二叉树的锯齿形层序遍历,其核心思想是基于广度优先搜索(BFS)进行层序遍历,并根据当前层数决定从左到右或从右到左的顺序来组织每一层的节点值。 level.add 和 level.addFirst 有点类似单链…

OpenCV 图像轮廓查找与绘制全攻略:从函数使用到实战应用详解

摘要:本文详细介绍了 OpenCV 中用于查找图像轮廓的 cv2.findContours() 函数以及绘制轮廓的 cv2.drawContours() 函数的使用方法。涵盖 cv2.findContours() 各参数(如 mode 不同取值对应不同轮廓检索模式)及返回值的详细解析,搭配…

Linux操作系统2-进程控制3(进程替换,exec相关函数和系统调用)

上篇文章:Linux操作系统2-进程控制2(进程等待,waitpid系统调用,阻塞与非阻塞等待)-CSDN博客 本篇代码Gitee仓库:Linux操作系统-进程的程序替换学习 d0f7bb4 橘子真甜/linux学习 - Gitee.com 本篇重点:进程替换 目录 …

0基础学前端系列 -- 深入理解 HTML 布局

在现代网页设计中,布局是至关重要的一环。良好的布局不仅能提升用户体验,还能使内容更具可读性和美观性。HTML(超文本标记语言)结合 CSS(层叠样式表)为我们提供了多种布局方式。本文将详细介绍流式布局、Fl…

Springboot集成通义大模型

1.先到阿里云平台开头阿里云白炼账号&#xff0c;创建apiKey 2. 引入maven依赖 <dependency><groupId>com.alibaba</groupId><artifactId>dashscope-sdk-java</artifactId><version>2.8.3</version></dependency><!-- htt…

哈希表算法题

目录 题目一——1. 两数之和 - 力扣&#xff08;LeetCode&#xff09; 1.1.暴力解法1 1.2.暴力解法2 1.2.哈希表解法 题目二——面试题 01.02. 判定是否互为字符重排 - 力扣&#xff08;LeetCode&#xff09; 2.1.哈希表解法 2.2.排序解法 题目三——217. 存在重复元…