超越OpenAI,谷歌重磅发布从大模型蒸馏的编码器Gecko

引言:介绍文本嵌入模型的重要性和挑战

文本嵌入模型在自然语言处理(NLP)领域扮演着至关重要的角色。它们将文本转换为密集的向量表示,使得语义相似的文本在嵌入空间中彼此靠近。这些嵌入被广泛应用于各种下游任务,包括文档检索、句子相似度、分类和聚类。然而,创建一个既通用又高效的文本嵌入模型面临着巨大挑战。这些模型需要大量的训练数据来全面覆盖所需的领域和技能,而且,手动标注数据的过程既耗时又昂贵,通常还会带来不希望的偏见和缺乏多样性。近年来,大语言模型(LLMs)因其在各种领域的广泛知识和卓越的少样本学习能力而成为了一种强大的替代方案。

GPT-3.5研究测试:

https://hujiaoai.cn

GPT-4研究测试:

https://higpt4.cn

Claude-3研究测试(全面吊打GPT-4):

https://hiclaude3.com

本文介绍了Gecko,一个高效且多功能的文本嵌入模型。如下图,Gecko通过从LLMs中提取知识并将其蒸馏到检索器中,从而实现了强大的检索性能。我们的两步蒸馏过程首先使用LLM生成多样化的合成配对数据。接下来,我们通过检索每个查询的候选段落集,并使用相同的LLM重新标记正面和非常负面的段落,进一步提炼数据质量。Gecko模型在Massive Text Embedding Benchmark(MTEB)上的紧凑性表现出色,256维嵌入的Gecko在性能上超越了所有768维嵌入大小的现有条目。768维嵌入的Gecko平均得分为66.31,可与7倍大的模型和5倍高维嵌入相竞争。

论文标题:
Gecko: Versatile Text Embeddings Distilled from Large Language Models

论文链接:
https://arxiv.org/pdf/2403.20327.pdf

项目地址:
https://github.com/google-research/gecko

Gecko模型的创新之处:两步蒸馏过程的详细介绍

1. 利用LLM生成多样化合成数据

在Gecko的第一步蒸馏过程中,我们使用LLM从一个大型未标记的段落语料库中为每个段落生成相关任务和查询(下图)。这些任务和查询的组合被嵌入到一个预训练的嵌入模型中,以获得最近邻段落,然后使用LLM对这些段落进行重排,并根据LLM的得分获得正面和负面段落。

2. 利用LLM进一步提炼数据质量!

如下图,在第二步蒸馏过程中,我们使用LLM来挖掘更好的正面示例,同时寻找有用的非常负面的示例。我们发现,生成查询的最佳段落通常与原始源段落不同。通过这种方法,我们创建了一个新的数据集FRet,它包含了6.6M个示例,每个示例都包含一个任务、一个查询、一个正面段落和一个负面段落。

Gecko模型的训练策略和优化目标

Gecko模型的训练策略包括预微调和微调两个阶段。在预微调阶段,Gecko利用自监督任务处理大量文本语料,以暴露模型于丰富的文本多样性。微调阶段的主要贡献是创建了一个通过两步LLM蒸馏过程生成的新颖微调数据集FRet,该数据集识别了每个生成查询的正面和非常负面的案例。

在微调过程中,Gecko使用了一个标准的损失函数,该函数使得查询能够区分正面目标和硬负面案例,以及批次中的其他查询。此外,Gecko还采用了MRL损失,该损失优化了小于嵌入维度d的子维度,从而支持单一模型的多种不同嵌入维度。

通过这一训练策略,Gecko在MTEB上的多个文本嵌入任务中取得了优异的成绩,特别是在分类、语义文本相似性(STS)和摘要任务上设定了新的最高标准。此外,仅使用FRet训练的Gecko在MTEB上的零样本基准测试中也展现了强大的性能,与其他基线模型相比具有竞争力。

实验结果:Gecko在MTEB基准测试中的表现

Gecko模型在Massive Text Embedding Benchmark(MTEB)上展现了卓越的性能(下表)。在256维嵌入空间中,Gecko的表现超越了所有768维嵌入尺寸的现有模型。当嵌入维度提升至768时,Gecko的平均得分达到了66.31,与体量大7倍、嵌入维度高5倍的模型相抗衡。这一结果证明了Gecko在紧凑性和效能之间取得了良好的平衡。

1. 多语言检索结果:Gecko模型在多语言任务中的应用和表现

在多语言检索任务中,Gecko模型同样表现出色。尽管Gecko的训练数据FRet仅包含英语,Gecko的多语言版本在MIRACL基准测试中的平均nDCG@10得分为56.2(下表),这一成绩优于其他单一多语言检索器。这表明,即使是仅使用英语数据集生成的模型,也能在多语言任务上取得良好的性能。

2. LLM作为标签器的作用

LLM在Gecko模型中扮演了关键的标签器角色。通过使用LLM生成的查询和任务描述,Gecko能够从大量的网络语料中挖掘出更相关的正面和非常负面的案例。下表,我们测试了FRet的不同标注策略,其中我们使用了不同的正面和非常负面段落。实验结果表明,使用LLM选择的最相关的正面案例作为正样本,比原始生成查询的文本段落更有效,这进一步提升了模型的性能。

下表是作为定性分析的LLM挖掘的正面和负面示例。虽然每个查询的意图与每个任务相符,但LLM挖掘的正面内容通常比生成查询的种子段落更为相关。

3. FRet数据集的多样性对模型泛化能力的影响

FRet数据集的多样性对Gecko模型的泛化能力产生了显著影响。FRet包含了多种任务类型,如问题回答、搜索结果、事实核查和句子相似性等。如下表,我们测试了FRet的多样性如何影响模型在MTEB跨任务的泛化能力。通过均匀采样不同任务类型的数据,Gecko在MTEB的多个任务上都取得了更好的性能。这一发现强调了数据集多样性对于构建具有广泛适用性的文本嵌入模型的重要性。

讨论:Gecko模型在不同任务中的平衡性和零样本泛化能力

在探讨Gecko模型的平衡性和零样本泛化能力之前,我们首先了解Gecko模型的基本构成。Gecko是一种紧凑且多功能的文本嵌入模型,通过从LLMs中提取知识来实现强大的检索性能。该模型采用了两步蒸馏过程,首先利用LLM生成多样化的合成配对数据,然后通过检索每个查询的候选段落并使用相同的LLM重新标记正面和非常负面的段落,进一步提炼数据质量。

1. 平衡性

Gecko模型在Massive Text Embedding Benchmark (MTEB)上的表现显示出其在不同任务之间的平衡性。具体来说,Gecko在256维嵌入空间上就超越了所有768维嵌入大小的现有条目。而当嵌入维度为768时,Gecko的平均得分为66.31,与7倍大的模型以及5倍高维嵌入相竞争。这表明Gecko能够在保持较小模型尺寸和嵌入维度的同时,实现多任务之间的良好平衡。

2. 零样本泛化能力

Gecko模型的零样本泛化能力体现在其能够在没有任何人类标注数据或MTEB领域内训练数据集的情况下,仅使用LLM生成和排名的数据(FRet)进行训练,并在MTEB上展示出强大的性能。这一结果令人惊讶,因为它与其他基线模型相比具有强大的竞争力,表明Gecko能够在没有见过具体任务实例的情况下,通过LLM的知识进行有效的泛化。

结论:总结Gecko模型的创新点和对未来文本嵌入模型的启示

Gecko模型的创新之处在于其利用LLM的广泛世界知识,通过两步蒸馏过程创建了一个高效的嵌入模型。Gecko的训练涉及到使用LLM生成的多任务合成数据集FRet,该数据集包含了LLM排名的正面和负面段落。Gecko模型的成功展示了LLM可以用于识别合成查询的更好的正面和负面目标,同时也显示了将这些合成生成的数据以统一格式结合起来,可以实现在多个不同任务上同时取得出色性能的可能性。

此外,Gecko模型的零样本泛化能力启示我们,即使在没有大量人类标注数据的情况下,也可以通过利用LLM的知识来训练出能够在多任务上表现良好的文本嵌入模型。这为未来的文本嵌入模型提供了一个新的方向,即通过利用LLM的强大能力来提高模型的泛化能力和效率。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

QT C++(信号与槽函数,自定义信号和槽函数)

文章目录 1. QT信号与槽函数2. QT自定义信号和槽函数 1. QT信号与槽函数 QT信号关键要素: 信号源:那个控件发送的信号信号类型:用户进行不同的操作,就可能触发不同的信号。 eg:点击按钮,移动鼠标等信号处…

学习ArkTS -- 状态管理

装饰器 State 在声明式UI中,是以状态驱动试图更新: 状态(State):指驱动视图更新的数据(被装饰器标记的变量) 视图(View):基于UI描述渲染得到用户界面 说明…

汕头联想 ibm x3500 M5服务器上门维修记录

汕头联想服务器现场检修;汕尾IBM服务器故障维修;揭阳戴尔服务器维修;汕头ERP服务器维修;潮阳地区各种服务器故障维修;各类服务器主板齐全; 分享一例从东莞到汕头某染料厂维修ibm system x3500 M5服务器的真…

LocalAi,Ollama+AnythingLLM搭建部署本地大模型AI知识库,汉化版本

AnythingLLM 是一个全栈应用程序,您可以使用商业现成的 LLM 或流行的开源 LLM 和 vectorDB 解决方案来构建私有 ChatGPT,无需任何妥协,您可以在本地运行,也可以远程托管并能够智能聊天以及您提供的任何文件。 AnythingLLM 将您的文…

UI5:面向企业级应用的JavaScript框架

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

vue的学习之用vue写一个hello,vue

根据以下步骤下载vue.js 介绍 — Vue.js 创建一个damo.html &#xff0c;引入vue.js即可 <body><div id"app">{{ message }}</div><!-- Vue --><!-- 开发环境版本&#xff0c;包含了有帮助的命令行警告 --><script src"js/vu…

苹果电脑装虚拟机好用吗 苹果电脑装虚拟机要钱吗 Parallels对mac的损害 Parallels占用多大空间 PD19

在当今数字化的时代&#xff0c;人们对电脑系统跨设备互联的需求越来越高。作为拥有广泛用户群体的苹果电脑&#xff0c;许多用户会有在Mac系统中运行其他操作系统的需求。在这种情况下&#xff0c;安装虚拟机是一个较好的解决方案。那么接下来就给大家介绍苹果电脑装虚拟机好用…

{“errMsg“:“insertXWebCamera:fail appid privacy api banned“}

问题描述&#xff1a;微信小程序&#xff0c;在体验版本测试时&#xff0c;调用摄像头OK&#xff0c;没有任何问题&#xff0c;部署发布版本后&#xff0c;日志报错内容&#xff1a;{"errMsg":"insertXWebCamera:fail appid privacy api banned"}&#xff…

企业公众号数量怎么申请

一般可以申请多少个公众号&#xff1f;许多用户在申请公众号时可能会遇到“公众号显示主体已达上限”的问题。这是因为在2018年11月16日对公众号申请数量进行了调整&#xff0c;具体调整如下&#xff1a;1、个人主体申请公众号数量上限从2个调整为1个。2、企业主体申请公众号数…

那些早期的iax和SIP软电话软件界面,看看你见过几个?

目录 一些iax/sip软电话UI图片SIP软电话的界面怎么设计SIP软电话的功能有哪些 早期voip发展中&#xff0c;很多公司开发了自己的SIP软电话&#xff0c;有些已经不存在了&#xff0c;有些还在使用中&#xff0c;比如X-Lite&#xff0c;Zoiper等等&#xff0c;我们一起看看这些早…

【软考经验分享】软考-中级-嵌入式备考

这里写目录标题 教辅用书嵌入式系统设计师考试大纲嵌入式系统设计师教程嵌入式系统设计师5天修炼嵌入式系统设计师考前冲刺100题 刷题软件希赛网软考真题 视频教程希赛网王道-计组计网 教辅用书 嵌入式系统设计师考试大纲 50页左右&#xff0c;内容为罗列一些考点&#xff0c…

C语言(扫雷游戏)

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸各位能阅读我的文章&#xff0c;诚请评论指点&#xff0c;关注收藏&#xff0c;欢迎欢迎~~ &#x1f4a5;个人主页&#xff1a;小羊在奋斗 &#x1f4a5;所属专栏&#xff1a;C语言 本系列文章为个人学习笔记&#x…

基于docker搭建瀚高数据库HighGo6.0.1【图文】

基于docker搭建瀚高数据库HighGo6.0.1 拉取镜像启动验证进入容器 登录数据库查看数据库加密方式修改加密方式为sm3进入数据库修改密码重启容器 数据库验证数据库密码到期参考 docker部署 https://blog.csdn.net/weixin_44385419/article/details/127738868 拉取镜像 docker p…

Springboot+Vue项目-基于Java+MySQL的网上点餐系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

[XR806开发板试用]MQ-2烟雾传感器

非常感谢这次极术社区给我这个机会直接接触harmonyos&#xff0c;日常接触的一般都是恩智浦的I.MX RT系列比较多&#xff0c;对于这一类高速汽车芯片来说&#xff0c;最常接触的是RThread系统比较多。而且相对编译环境比较容易配置&#xff0c;直接接触这类系统还是第一次&…

【Qcom Camera】DumpDebugInfo分析

DumpDebugInfo&#xff1a; DumpDebugInfo主要包括Session::DumpDebugInfo、Pipeline::Dumpdebuginfo、Node::Dumpdebuginfo、DRQ::Dumpdebuginfo、Usecase::DumpDebugInfo log&#xff1a;Hit SOF threshold of [xx] consecutive frames CamX: [ERROR][CORE ] camxpip…

1.基于Springboot对SpringEvent初步封装

一&#xff1a;前置知识 Spring Event是Spring框架提供的一种事件机制&#xff0c;用于处理组件之间的通信。在复杂的系统中&#xff0c;模块或组件之间的通信是必不可少的。Spring Event可以用于以下场景&#xff1a; 1.系统间解耦&#xff1a;模块或组件之间通过事件进行通…

就业班 第三阶段(负载均衡) 2401--4.19 day3 nginx3

二、企业 keepalived 高可用项目实战 1、Keepalived VRRP 介绍 keepalived是什么keepalived是集群管理中保证集群高可用的一个服务软件&#xff0c;用来防止单点故障。 ​ keepalived工作原理keepalived是以VRRP协议为实现基础的&#xff0c;VRRP全称Virtual Router Redundan…

跨语言大模型最新综述

节前&#xff0c;我们星球组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、参加社招和校招面试的同学&#xff0c;针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 汇总…

L2-052 吉利矩阵

题目描述 题解思路 这个道题就是很简单&#xff0c;就跟n皇后问题一样&#xff0c;给矩阵填数&#xff0c;使得矩阵满足一个什么条件&#xff0c;最后求方案数或者方案。很容易想到回溯法&#xff0c;根据数据范围&#xff0c;应该能够确定回溯法是没有问题的。 我们只需要枚举…