论文速读纪录 - 202408

特别鸣谢kimi,以下论文均在kimi辅助下阅读。

目录

  • RMIB: Representation Matching Information Bottleneck for Matching Text Representations
  • AttentionRank: Unsupervised keyphrase Extraction using Self and Cross Attentions
  • ANSWERING COMPLEX OPEN-DOMAIN QUESTIONS WITH MULTI-HOP DENSE RETRIEVAL
  • APPROXIMATE NEAREST NEIGHBOR NEGATIVE CONTRASTIVE LEARNING FOR DENSE TEXT RETRIEVAL
  • CogLTX: Applying BERT to Long Texts
  • How to Fine-Tune BERT for Text Classification?
  • Optimizing E-commerce Search: Toward a Generalizable andRank-Consistent Pre-Ranking Model

RMIB: Representation Matching Information Bottleneck for Matching Text Representations

  • 2024 ICML
  • https://github.com/chenxingphh/rmib/tree/main

来自不同域的文本,经过表征后得到的向量表示是不对成的,作者基于信息瓶颈(Information Bottleneck,IB)提出了RMIB,通过匹配文本表示的先验分布来缩小其分布范围,从而优化信息瓶颈。具体的,主要在模型学习过程中增加了以下两项约束:

  • 文本表示之间交互的充分性。
  • 单一文本表示的不完整性。

看了一眼代码,论文的优化点主要体现在损失函数上,如下图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
损失函数可以写为:

Z 1 ∗ , Z 2 ∗ = arg ⁡ min ⁡ Z 1 , Z 2 I ( X 1 , X 2 ; Z 1 ) + I ( X 1 , X 2 ; Z 2 ) s . t . max ⁡ I ( Z 1 ; Z 2 ∣ Y ) Z_{1}^{*}, Z_{2}^{*} = \arg \min_{Z_1,Z_2} I(X_1,X_2;Z_1)+ I(X_1,X_2;Z_2) \ s.t. \ \max I(Z_1;Z_2\mid Y) Z1,Z2=argZ1,Z2minI(X1,X2;Z1)+I(X1,X2;Z2) s.t. maxI(Z1;Z2Y)

改写成通俗易懂的:

L RMIB = − α 1 ⋅ KL ( p ( Z 1 ∣ X 1 , X 2 ) ∥ p ( Z ) ) − α 2 ⋅ KL ( p ( Z 2 ∣ X 1 , X 2 ) ∥ p ( Z ) ) + α 3 ⋅ CE ( Y , Y ^ ) L_{\text{RMIB}} = -\alpha_1 \cdot \text{KL}(p(Z_1 | X_1, X_2) \| p(Z)) - \alpha_2 \cdot \text{KL}(p(Z_2 | X_1, X_2) \| p(Z)) + \alpha_3 \cdot \text{CE}(Y, \hat{Y}) LRMIB=α1KL(p(Z1X1,X2)p(Z))α2KL(p(Z2X1,X2)p(Z))+α3CE(Y,Y^)

这篇论文吸引我的是其中提到的非对称文本匹配,概述一下论文中提到的这种场景:

  • 领域差异。比如医学领域和计算机科学领域。
  • 数据分布差异。同一领域内的数据也可能存在分布差异,比如搜索里用户query偏口语且更短,文档则更规范也更长。
  • 任务差异。比如问答,长短文本匹配等。

最近在做文本匹配,刚好遇到了长短文本匹配的问题,感觉这篇论文会有点帮助,后面有时间了可以试一试。🙈

AttentionRank: Unsupervised keyphrase Extraction using Self and Cross Attentions

  • 2021 EMNLP

论文提出了一种无监督的关键短语抽取方法AttentionRank,在PLM的基础上计算了两种注意力:

  • 自注意力(Self-Attention) :用于确定一个候选短语(通过词性标注,名词作为候选)在句子上下文中的重要性。
  • 交叉注意力(Cross-Attention) :计算候选短语与文档内其他句子之间的语义相关性。

整个过程:

  1. 给定输入的文档,通过PoS标注识别出文本中的名词类的词,再基于NLTK生成名词性的候选短语。
  2. 通过自注意力计算每个候选短语在句子中的注意力权重。
  3. 通过交叉注意力计算每个候选短语与文档的注意力权重。
  4. 结合自注意力权重和交叉注意力权重,计算候选短语最终的权重。

模型结构如下(这图做的有点糙):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ANSWERING COMPLEX OPEN-DOMAIN QUESTIONS WITH MULTI-HOP DENSE RETRIEVAL

  • https://arxiv.org/pdf/2009.12756,ICLR 2021, Facebook.

提出了一种多跳稠密检索方法,用于回答开放领域的复杂问题,主要面向的复杂问题是多跳问题。方案是:迭代地编码问题和先前检索到的文档作为查询向量,并使用高效的最大内积搜索(MIPS)方法检索下一个相关文档。大致流程如下:

在这里插入图片描述

偶然之间看到了这篇论文,虽然是21年的,但感觉已经是“上古”的方法了(自从LLM霸榜问答领域),现在应该基本都上LLM了吧😂~

APPROXIMATE NEAREST NEIGHBOR NEGATIVE CONTRASTIVE LEARNING FOR DENSE TEXT RETRIEVAL

  • https://arxiv.org/pdf/2007.00808,2020 Microsoft

针对稠密检索(Dense Retrieval)中一个主要的学习瓶颈问题:DR任务训练时通常采样batch内负采样,这些负样本计算损失时梯度较小,对模型的学习帮助不大,且不同batch间样本分布差异大,导致学习过程中梯度方差大,学习过程不稳定。

除此之外,DR任务对负样本的要求更高。(插句题外话,在信息漏斗系统中,越靠近底层,越是负样本的艺术?越靠近上层越是特征的艺术?当然是在其他环节构造合理的情况下)DR阶段要能区分各种类型的负样本,如下图所示,DR要能区分相关和不相关,但是不相关可以有很多种维度,比如字面不相关、字面相关但是语义不相关、以及语义上难以区分的不相关。总的来说,DR见过的东西要尽可能全面,接近实际的分布。论文要解决的问题也很直接:batch内负采样太简单,既不符合实际分布,也不利于模型学习
在这里插入图片描述
对此,论文提出了ANCE(Approximate nearest neighbor Negative Contrastive Learning),基于已经优化过的DR模型构建ANN索引来选择全局负样本,训练流程如下:
在这里插入图片描述

CogLTX: Applying BERT to Long Texts

  • https://proceedings.neurips.cc/paper_files/paper/2020/file/96671501524948bc3937b4b30d0e57b9-Paper.pdf,2020 NIPS

通常,BERT是难以处理长文本,原因如下:

  • 输入长度限制。BERT的输入最大长度通常是512(虽然BERT的位置编码是正余弦的,但训练时输入长度通常是512以内的),关键内容可能出现在512范围之后,或关键内容之间的距离会超过512。
    在这里插入图片描述

  • 时间限制。BERT中的自注意力时间复杂度是长度的平方,长文本的计算复杂度可能是难以接受的。

一些处理长文本的方法:

  • 截断法。
  • 滑动窗口。将长文本分成多块,分别计算后再池化。
  • 压缩法。类似于序列建模,逐步处理并进行压缩。
  • 魔改注意力。如稀疏注意力、滑窗注意力(sliding window attention)等。

针对以上问题,论文提出了CogLTX(Cognize Long TeXts),核心思想:类比人类处理信息的方式,CongLTX引入MemRecall从长文本中识别关键的文本块,把这些关键内容作为模型的输入。CogLTX依赖的一个基本假设:对于大部分NLP任务,只依赖源文本中的一部分关键的句子即可。具体的讲:CogLTX引入了MemRecall(是线上可以是另一个BERT模型,与实际要用的BERT模型联合训练)来抽取文本中的关键block。MemRecall的工作流程如下图:
在这里插入图片描述
这篇论文积攒了很久,主要是为了解决当时将BERT应用于长文本场景时的一些问题,避免无关内容对目标的影响。虽然现在都开始推更大的模型、更长的上下文了,但是在实际的应用场景中这种小一些的模型还是很有用武之地的。以后有机会的可以实践一下。

How to Fine-Tune BERT for Text Classification?

  • https://arxiv.org/pdf/1905.05583,2020

老早积攒的一篇论文了。BERT在NLP领域的应用无需多言,即使在大模型火热的今天也依然难以替代。作为一个半路出家的NLPer,还是有必要进补一下这些利器的知识的。

BERT作为encoder模型的代表,常用在判别类型的任务中,如文本分类、相似性计算、摘要抽取等任务中,用于学习token或句子级别的表征。这篇论文探讨了如何对BERT模型进行微调,以用于文本分类任务。从一个预训练的BERT开始,到一个适用于目标任务的模型,通常有以下三步:
在这里插入图片描述

  1. 再预训练。在目标场景的大量语料下,再来一次预训练,让模型适配目标场景下的数据。这一步的作用比较好理解,预训练的模型一般都是在通用语料下训练的,可能缺乏一些领域内的数据,比如要应用在法律领域,需要通过再预训练让模型理解领域内词汇的含义。

  2. 多任务微调。用目标域下的不同任务对模型进行微调,更进一步适配任务。为什么要加这个过程呢?其实也可以直接进行下一步骤,但是kimi的提醒下,进行多任务微调有以下作用:

    • 提高泛化性:不同任务间共享底层的表示,模型可以学习到跨任务的通用特征,提高模型的泛化能力,避免过拟合。
    • 知识迁移:如果某些任务的数据量较小,可以从数据量较大的任务中迁移知识,帮助模型更好地学习和适应小数据任务。
  3. 最终的微调。在实际应用的任务上进行微调。

Optimizing E-commerce Search: Toward a Generalizable andRank-Consistent Pre-Ranking Model

  • https://arxiv.org/pdf/2405.05606,2024 SIGIR

也是老早积攒的一篇论文了,关于京东商品搜索的粗排阶段的工作。

粗排,一个轻量的模块,在系统流程中主要起过滤(想起了ad-hoc和filter的对比)作用。之前的很多工作中,粗排的目标主要是和排序阶段的排序尽可能一致。针对这个问题,很多工作也做了一些讨论,粗排是否和精排越像越好,这里不做过多讨论。论文提出了可泛化的排序一致性粗排(Generalizable and RAnk-ConsistEnt Pre-Ranking Model ,GRACE)。主要有以下这么几个改进:

  • 通过引入多个二分类任务来预测产品是否在rank阶段的前k个结果中,从而实现排序一致性。
  • 通过对比学习,对所有产品的表示进行预训练,以提高泛化能力。
  • 在特征构建和在线部署方面易于实施。

关于第一个改进的一些看法:

这样考虑还是有道理的,粗排本质上承担的是一个区分好、坏结果的责任,把坏结果过滤掉,把潜在的好结果给后续的环节。 但是其实也容易让人疑惑:对齐排序阶段不是更直接吗?毕竟如果不考虑性能的吗直接把排序模型放在粗排环节效果可能会更好? 那是否粗排就应该对齐精排呢?私以为还是不要过度对齐精排为好。主要有这么几个考虑:1)粗排、精排所处环节不同,输入的样本分布不同;2)点击的样本大概率是好结果,但是曝光未点击的不一定是坏结果,粗排若认为曝光未点击的为坏结果,那么存在位置偏差或其他bias导致的误伤;3)粗排过度以精排为目标,容易导致正反馈,点击对整个链路的影响会越来越大,对缺少点击的好结果及冷启动不友好;4)粗排、精排模型复杂度不一样,弱化粗排的排序能力,强化其好坏区分能力或许更容易优化(?),也算是系统的解耦

总结

不得不说,自己看的论文还是挺杂的以后还是要逐渐聚焦一点比较好🤣

这些主要是之前一直积攒下来没看到论文,拖延症要不得啊😣

另外,虽然本文是速度纪录,但是也不是特别速😢


黑云压城城欲摧

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

标准库标头 <optional> (C++17)学习之optional

类模板 std::optional 管理一个可选 &#xfeff;的所含值&#xff0c;即既可以存在也可以不存在的值。 一种常见的 optional 使用情况是作为可能失败的函数的返回值。与如 std::pair<T, bool> 等其他手段相比&#xff0c;optional 可以很好地处理构造开销高昂的对象&a…

DataGridView用法合集【精品】

1.当前的单元格属性取得、变更 [VB.NET] Console.WriteLine(DataGridView1.CurrentCell.Value) Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex) Console.WriteLine(DataGridView1.CurrentCell.RowIndex) DataGridView1.CurrentCell DataGridView1(0, 0) [C#] Con…

虚幻引擎VR游戏开发02 | 性能优化设置

常识&#xff1a;VR需要保持至少90 FPS的刷新率&#xff0c;以避免用户体验到延迟或晕眩感。以下是优化性能的一系列设置&#xff08;make sure the frame rate does not drop below a certain threshold&#xff09; In project setting-> &#xff08;以下十个设置都在pr…

基于php+vue+uniapp的医院预约挂号系统小程序

开发语言&#xff1a;PHP框架&#xff1a;phpuniapp数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;PhpStorm 系统展示 后台登录界面 管理员功能界面 用户管理 医生管理 科室分类管理 医生信息管理 预…

机器人外呼有哪些优势?

机器人外呼&#xff0c;作为一种结合了计算机技术和人工智能技术的自动化工具&#xff0c;具有多重显著优势。以下是其主要优势的详细阐述&#xff1a; ### 1. 高效性 * **大幅提升工作效率**&#xff1a;机器人外呼可以全天候、不间断地进行工作&#xff0c;不受时间、地点和…

【优质源码】3D多人在线游戏,前端ThreeJS,后端NodeJS

3D多人在线游戏 【源码】3D多人在线游戏源码&#xff0c;前端ThreeJS&#xff0c;后端NodeJS&#xff0c;完整源码。 游戏画面 启动方法 先启动服务器端。 在目录&#xff0c;3D-multi-player-main\3D-multi-player-main\nodeapps\blockland 中&#xff0c;运行&#xff1a…

Elasticsearch之原理详解

简介 ES是使用 Java 编写的一种开源搜索引擎&#xff0c;它在内部使用 Lucene 做索引与搜索&#xff0c;通过对 Lucene 的封装&#xff0c;隐藏了 Lucene 的复杂性&#xff0c;取而代之的提供一套简单一致的 RESTful API 然而&#xff0c;Elasticsearch 不仅仅是 Lucene&#…

设计模式及创建型模式-python版

1 架构模式与设计模式 架构模式搞层次的设计模式&#xff0c; 描述系统整体结构和组织方式&#xff0c;设计模式是针对某个问题的解决方案&#xff0c;是一种解决问题的思路。 2 设计模式的分类 2.1 创建型模式 单例模式&#xff0c;工厂方法模式&#xff0c;抽象工厂模式&…

JVM2-JVM组成、字节码文件、类的生命周期、类加载器

目录 Java虚拟机的组成 字节码文件 字节码文件打开方式 字节码文件的组成 基本信息 Magic魔数 主副版本号 常量池 字段 方法 属性 字节码常用工具 javap jclasslib插件 Arthas 类的生命周期 概述 加载阶段 连接阶段 验证 准备 解析 初始化阶段 类加载器…

linux 下一跳缓存,early demux(‌早期解复用)‌介绍

3.6版本以后的下一跳缓存 3.6版本移除了FIB查找前的路由缓存。这意味着每一个接收发送的skb现在都必须要进行FIB查找了。这样的好处是现在查找路由的代价变得稳定(consistent)了。3.6版本实际上是将FIB查找缓存到了下一跳(fib_nh)结构上&#xff0c;也就是下一跳缓存下一跳缓存…

ESP32无线WiFi芯片模组,设备物联网连接通信,产品智能化交互升级

在数字化浪潮的推动下&#xff0c;我们正步入一个万物互联的新时代。物联网&#xff08;IoT&#xff09;技术&#xff0c;作为连接物理世界与数字世界的桥梁&#xff0c;正逐渐渗透到我们生活的每一个角落。 乐鑫正通过其创新的无线WiFi芯片模组&#xff0c;为这些领域的发展提…

界面控件DevExpress中文教程:如何使用AI扩展Excel计算?

DevExpress WinForms拥有180组件和UI库&#xff0c;能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序&#xff0c;无论是Office风格的界面&#xff0c;还是分析处理大批量的业务数据&#xff0c;它都能轻松胜…

Elasticsearch的Restful风格API

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 1、Restful及JSON格式 RESTFUL是一种网络应用程序的设计风格和开发方式&#xff0c;基于HTTP&#xff0c;可以使用 XML 格式定义或 JSON 格式定义。R…

STM32CubeMX CAN收发数据

目录 一、CAN总线 1. 差分信号 2. CAN收发器 3. CAN帧结构 4. CAN波特率设置 5. 标识符筛选 二、CubeMX配置 三、Keil代码 一、CAN总线 CAN&#xff08;Controller Area Network&#xff0c;控制器局域网络&#xff09;是一种用于车辆、工业自动化等领域的通信协议&…

springboot博客系统

基于springbootvue实现的博客系统 &#xff08;源码L文ppt&#xff09;4-031 4 系统设计 博客系统的整体结构设计主要分为两大部分&#xff1a;管理员和博主。他们的权限不同&#xff0c;于是操作功能也有所不同。整体结构设计如图4-2所示。 图4-2 系统结构图 4.3 数据库设…

Unity(2022.3.41LTS) - 角色控制器和3D刚体

目录 一. 角色控制 二. 3D刚体 一. 角色控制 名称&#xff1a;功能&#xff1a;坡度限制将碰撞器限制为仅爬升比指示值更陡峭&#xff08;以度为单位&#xff09;的斜坡。步长偏移只有当楼梯离地面比指示值更近时&#xff0c;角色才会爬上楼梯。此值不应大于 Character Contr…

《CounTR: Transformer-based Generalised Visual Counting》CVPR2023

摘要 本论文考虑了通用视觉对象计数问题&#xff0c;目标是开发一个计算模型&#xff0c;用于计算任意语义类别的对象数量&#xff0c;使用任意数量的“样本”&#xff08;即可能为零样本或少样本计数&#xff09;。作者提出了一个新颖的基于Transformer的架构&#xff0c;称为…

shell 学习笔记:变量、字符串、注释

目录 1. 变量 1.1 定义使用变量 1.2 变量命名规则 1.3 只读变量 1.4 删除变量 1.5 变量类型 1.5.1 字符串变量 1.5.2 整数变量 1.5.3 数组变量 1.5.3.1 整数索引数组 1.5.3.2 关联数组 1.4 环境变量 1.5 特殊变量 2. 字符串 2.1 单引号字符串 2.2 双引…

【32项目】基于stm32f103c8t6WIFI远程监控智慧农业大棚(含完整代码)

目录 前言 设计背景 设计原理 所需材料 JW01二氧化碳传感器介绍 YL-69土壤湿度传感器介绍 PCB及原理图 部分代码&#xff08;完整代码见文章末尾&#xff09; 前言 随着农业现代化的发展&#xff0c;智慧农业的概念越来越受到重视。智慧农业利用物联网、大数据、人工智…

计算机网络 数据链路层2

ALOHA:想发就发 CSMA 载波监听多路访问协议 CS&#xff1a;载波监听&#xff0c;在发送数据之前检测总线上是否有其他计算机在发送数据 1-坚持CSMA:主机想发送消息&#xff0c;需要监听信道&#xff1b; 信道空闲则直接传输信息&#xff1b; 信道忙碌则一直监听&#xff0c;直…