[大语言模型-论文精读] 阿里巴巴-通过多阶段对比学习实现通用文本嵌入

本文涉及的产品
NLP自然语言处理_基础版,每接口每天50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
简介: [大语言模型-论文精读] 阿里巴巴-通过多阶段对比学习实现通用文本嵌入

[大语言模型-论文精读] 阿里巴巴达摩院-GTE-通过多阶段对比学习实现通用文本嵌入

1. 论文信息

这篇论文《Towards General Text Embeddings with Multi-stage Contrastive Learning》介绍了一种新的文本嵌入模型,名为GTE(General-purpose Text Embedding Model),它通过多阶段对比学习进行训练。

2. 研究背景与动机:

  • 文本嵌入在自然语言处理(NLP)任务中非常重要,例如文本分类、检索、问答和对话系统。
  • 近年来,大型语言模型(LLMs)的出现推动了对文本表示的进一步研究。
  • 现有的文本嵌入模型通常专注于特定任务,缺乏通用性。

3. 技术挑战:

  • 如何构建一个能够处理多种下游任务的统一文本表示模型。
  • 以往的训练策略或模型可能不适用于其他任务。
  • 现有的研究依赖于内部数据进行预训练,限制了模型的通用性和可访问性。

4. 解决方案:

  • 提出了一种新的文本嵌入模型GTE,通过多阶段对比学习进行训练。
  • 在无监督预训练阶段,使用从多个数据源收集的大规模文本对进行训练。
  • 在有监督微调阶段,使用人工标注的高质量文本对进行训练。

论文中的"Approach"部分详细介绍了GTE模型的训练过程和架构。以下是对这一部分的详细解析:

4.1 Model Architecture(模型架构)

GTE模型的骨干网络是一个深度的Transformer编码器,可以初始化为像BERT这样的预训练语言模型。模型采用的是传统的双编码器架构,并且在语言模型产生的上下文化token表示之上应用了均值池化。具体步骤如下:

  1. 文本表示:给定一段文本,模型首先使用预训练的语言模型获取深度上下文化的token表示。
  2. 均值池化:然后应用轻量级的均值池化来获取文本的总体表示。


image.png


4.2 Unsupervised Pre-training Data(无监督预训练数据)

在无监督预训练阶段,GTE模型使用从多个数据源提取的大规模文本对进行训练。这些数据源包括网页、学术论文、社区问答、社交媒体、知识库和代码库等。无监督预训练的目的是让模型学会区分语义相关的文本对和无关的文本对。

4.3 Supervised Fine-tuning Data(有监督微调数据)

在有监督微调阶段,GTE模型使用人工标注的文本对进行训练。这些数据涵盖了多种任务和领域,如网页搜索、开放域问答、自然语言推理、事实验证和释义等。微调的目的是进一步提升模型在特定任务上的性能。

4.4 Training Details(训练细节)

  • 数据采样:为了处理不同数据源之间的不平衡,论文中采用了多项式分布来从不同的数据源中采样数据批次。
  • 改进的对比损失:论文提出了一种改进的对比学习目标,它不仅使用了批次内的文档作为负样本,还结合了批次内的查询和文档。
  • 训练和评估:模型的训练包括两个阶段,分别是无监督对比预训练和有监督对比微调。在预训练阶段,使用大批量大小和多种优化技术来提高模型性能。在微调阶段,使用较小的批量大小和较长的序列长度来处理更长的文本。

关键点总结:

  • 双编码器架构:GTE模型使用传统的双编码器架构,通过均值池化获取文本表示。
  • 多阶段训练:包括无监督预训练和有监督微调两个阶段,利用了大规模的文本对数据。
  • 改进的对比学习:提出了一种改进的对比学习目标,扩大了负样本池。
  • 大规模数据采样:使用多项式分布进行数据采样,以处理数据不平衡问题。

5. 实验设置:

  • 在多个文本嵌入基准上评估GTE模型,包括MS MARCO、Natural Questions、TriviaQA等。
  • 还评估了模型在CodeSearchNet基准上的代码搜索能力,涵盖六种编程语言。

6. 结果:

  • GTE模型在多个基准测试中取得了优异的性能,即使在相对较少的参数(110M)下也超过了现有的嵌入模型。
  • 在没有针对每种编程语言进行单独微调的情况下,GTE模型在代码搜索任务上也表现出色。

7. 潜在应用:

  • 提升信息检索系统、问答系统、文本分类和文本聚类等任务的性能。
  • 作为研究社区在文本和代码嵌入方面的强大基准。

8. GTE与BERT的对比

GTE模型(General-purpose Text Embedding model)与BERT(Bidirectional Encoder Representations from Transformers)在设计和训练目标上有一些关键的差异:

  1. 训练目标和方法
  • BERT:BERT是一种基于Transformer的预训练语言模型,它通过masked language modeling(MLM)和next sentence prediction(NSP)任务进行训练。BERT的目标是学习文本的深层双向表示。
  • GTE:GTE模型专门针对文本嵌入进行训练,使用多阶段对比学习的方法。在无监督预训练阶段,GTE使用从网络上挖掘的大量文本对进行训练;在有监督微调阶段,使用人工标注的文本对进行训练,以提高嵌入的质量。
  1. 应用焦点
  • BERT:BERT旨在提供一个通用的文本表示,适用于各种下游NLP任务,如文本分类、命名实体识别、问答等。
  • GTE:GTE专注于生成高质量的文本嵌入,特别适用于需要文本相似性或检索任务的场景,如信息检索、文本聚类和代码搜索。
  1. 训练数据
  • BERT:BERT通常在大型的多领域文本数据集上进行预训练,如BookCorpus和English Wikipedia。
  • GTE:GTE在预训练阶段使用了更多样化的数据源,包括来自网页、学术论文、社交媒体、问答论坛等多种类型的文本对。
  1. 模型规模和效率
  • BERT:BERT有多种规模的模型,从较小的BERT-Mini到较大的BERT-Large,参数数量可以从1亿到3亿不等。
  • GTE:GTE模型虽然参数数量相对较少(例如110M参数的GTEbase版本),但通过多阶段对比学习,实现了与更大模型相媲美的性能。
  1. 微调策略
  • BERT:BERT模型通常在特定任务的数据集上进行微调,以适应该任务的需求。
  • GTE:GTE模型在有监督的微调阶段,使用了人工标注的高质量文本对,这些文本对来自多个不同的任务和领域。

总的来说,GTE模型在设计上更注重生成用于检索和相似性比较的高质量文本嵌入,而BERT则提供了一个通用的文本表示学习框架,适用于广泛的NLP任务。GTE通过特定的多阶段对比学习方法,在文本嵌入的质量上取得了显著的改进。


目录
相关文章
|
28天前
|
人工智能 自然语言处理 测试技术
苹果一篇论文得罪大模型圈?Transformer不会推理,只是高级模式匹配器!所有LLM都判死刑
苹果公司发布论文《GSM-Symbolic: Understanding the Limitations of Mathematical Reasoning in Large Language Models》,质疑大型语言模型(LLM)在数学推理方面的能力。尽管LLM在GSM8K等测试中表现良好,但在新基准测试GSM-Symbolic中,其准确率随数值变化而显著下降,表明LLM可能依赖于记忆和模式匹配而非真正的数学理解。这一发现引发了AI领域的广泛讨论。
39 5
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
【大语言模型-论文精读】谷歌-BERT:用于语言理解的预训练深度双向Transformers
【大语言模型-论文精读】谷歌-BERT:用于语言理解的预训练深度双向Transformers
151 1
|
7月前
论文介绍:GraphEdit——利用大型语言模型学习图结构
【5月更文挑战第22天】GraphEdit是新提出的图结构学习方法,利用大型语言模型增强对图数据中复杂节点关系的理解。通过指令调整LLMs,它能去噪并识别节点依赖性,提供全面的图理解。实验显示GraphEdit在节点分类任务中优于其他方法,但其泛化能力、处理动态图及提升可解释性等方面仍有待进一步研究。[链接](https://arxiv.org/abs/2402.15183)
54 1
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
LLM性能最高60%提升!谷歌ICLR 2024力作:让大语言模型学会“图的语言”
【5月更文挑战第1天】谷歌在ICLR 2024提出新方法,使大语言模型(LLM)性能提升高达60%,通过结合图神经网络(GNN),LLM学会理解与生成“图的语言”,打破处理复杂任务的局限。此创新模型适用于社交网络分析等领域,但面临计算资源需求大和模型解释性问题。研究强调需确保LLM在道德和法律框架内使用。论文链接:https://openreview.net/pdf?id=IuXR1CCrSi
257 3
|
存储 自然语言处理 测试技术
【论文速递】COLING 2022 - 联合语言语义和结构嵌入用于知识图补全
补全知识三元组的任务具有广泛的下游应用。结构信息和语义信息在知识图补全中都起着重要作用。与以往依赖知识图谱的结构或语义的方法不同
258 0
|
7月前
|
机器学习/深度学习 编解码 自然语言处理
一文综述 | 万字文总结,近几年都有哪些语义分割模型用了Transformer方法呢?
一文综述 | 万字文总结,近几年都有哪些语义分割模型用了Transformer方法呢?
578 0
|
7月前
|
编解码 算法 测试技术
【论文精读】ICLR2022 - 语言驱动的语义分割
【论文精读】ICLR2022 - 语言驱动的语义分割
|
自然语言处理 文字识别 计算机视觉
字节团队提出猞猁Lynx模型:多模态LLMs理解认知生成类榜单SoTA
字节团队提出猞猁Lynx模型:多模态LLMs理解认知生成类榜单SoTA
215 0
|
机器人 网络架构
中国人民大学卢志武:ChatGPT对多模态通用生成模型的重要启发(2)
中国人民大学卢志武:ChatGPT对多模态通用生成模型的重要启发
345 0
|
机器学习/深度学习 人工智能 自然语言处理
中国人民大学卢志武:ChatGPT对多模态通用生成模型的重要启发(1)
中国人民大学卢志武:ChatGPT对多模态通用生成模型的重要启发
306 0