Text embedding 模型总结

文章目录

  • MTEB榜单
    • 8个嵌入任务
    • 三种数据集类别
  • C_METB榜单
  • 文本向量表示模型

目前,随着 Langchain + LLM模型 的火热,除了层出不穷的大模型外,因为检索的能力会很大程度影响最终的问答效果,文本的嵌入模型也是大家比较关注的。本文主要介绍效果较好的几种文本嵌入模型。

MTEB榜单

判断哪些文本嵌入模型效果较好,通常需要一个评估指标来进行比较,MTEB就是一个海量文本嵌入模型的评估基准。
MTEB: Massive Text Embedding Benchmark(海量文本嵌入基准)

  • 论文地址:https://arxiv.org/abs/2210.07316
  • github地址:https://github.com/embeddings-benchmark/mteb#leaderboard

论文摘要如下:
文本嵌入通常在单个任务的一小部分数据集上进行评估,而不包括它们在其他任务中的可能应用。目前尚不清楚最新的语义文本相似性嵌入(STS)是否可以同样很好地应用于其他任务,如聚类或重新排序。这使得该领域的进展难以跟踪,因为各种模型不断被提出而没有得到适当的评估。为了解决这个问题,我们引入了海量文本语义向量基准测试(MTEB)。MTEB包含8个语义向量任务,涵盖58个数据集和112种语言。通过在MTEB上对33个模型进行基准测试,我们建立了迄今为止最全面的文本嵌入基准。我们发现没有特定的文本嵌入方法在所有任务中都占主导地位。这表明该领域尚未集中在一个通用的文本嵌入方法上,并将其扩展到足以在所有嵌入任务上提供最先进的结果。
在这里插入图片描述
榜单地址:https://huggingface.co/spaces/mteb/leaderboard
在这里插入图片描述

8个嵌入任务

Bitext Mining(双语文本挖掘):输入是来自两种不同语言的两组句子。对于第一组中的每个句子,需要在第二组中找到最佳匹配。匹配通常是翻译。所提供的模型用于嵌入每个句子,并通过余弦相似度找到最接近的对。
Classification(分类):训练和测试集均使用所提供的模型进行文本嵌入表示。训练集用于训练逻辑回归分类器(如最大迭代100次),在测试集中进行评分。
Clustering(聚类):给定一组句子或段落,目标是将它们分组成有意义的类。
Pair Classification(句子对分类):提供一对文本输入,并需要分配一个标签。标签通常是表示重复或释义对的二进制变量。两个文本通过模型嵌入,它们的距离用各种度量来计算(余弦相似度,点积,欧氏距离,曼哈顿距离)。
Reranking(重新排序):输入是一个查询query和文本的列表(列表中是与query相关或不相关的文本)。其目的是根据与查询的相关性对结果进行排序。文本和query通过模型进行嵌入,然后使用余弦相似度将其与查询进行比较。对每个查询进行评分,并在所有查询中取平均值。指标是平均MRR@k和MAP,后者是主要指标。
Retrieval (检索):每个数据集由语料库、查询query和每个查询到语料库中相关文档的映射组成。目的是找到这些相关文件。所提供的模型用于嵌入所有查询和所有语料库文档,并使用余弦相似度计算相似度分数。根据分数对每个查询的语料库文档进行排序后,分别计算nDCG@k, MRR@k,MAP@k、precision@k和recall@k。nDCG@10作为主要度量。
Semantic Textual Similarity(STS)(语义文本相似度):给定一对句子,目的是确定它们的相似度。标签是连续得分,数字越高表示句子越相似。所提供的模型用于嵌入句子,并使用各种距离度量来计算句子的相似度。距离的基准是使用Pearson和Spearman相关性的真实相似度。基于余弦相似度的Spearman相关作为主要度量。
Summarization(摘要):提供了一组人工编写和机器生成的摘要。目的是给机器生成的摘要进行打分。所提供的模型首先用于嵌入所有摘要。
对每个机器生成的摘要嵌入,计算与所有人类摘要嵌入的距离。
最接近的分数(例如,最高余弦相似度)被保留并用作单个机器生成摘要的模型分数。

三种数据集类别

为了进一步提高MTEB的多样性,还包括了不同文本长度的数据集。所有数据集分为三类:

  • 句子对句子(S2S):一个句子与另一个句子比较。S2S的一个例子是MTEB中所有当前的STS任务,其中评估两个句子之间的相似性。适用任务:文本相似度匹配,重复问题检测,文本分类等;
  • 段落到段落(P2P):将一个段落与另一个段落进行比较。MTEB对输入长度没有限制,在必要时由模型截断。一些聚类任务为S2S和P2P任务。前者只比较标题,后者包括标题和内容。例如,对于ArxivClustering,在P2P设置下,摘要被连接到标题。适用任务:聚类。
    句子到段落(S2P):在S2P设置中混合了几个检索数据集。这里的查询是一个句子,而文档是由多个句子组成的长段落。适用任务:文本检索。

C_METB榜单

C_METB榜单地址:https://github.com/FlagOpen/FlagEmbedding/tree/master/C_MTEB#leaderboard
最全面的中文语义向量评测基准C-MTEB 开源,涵盖6大类评测任务(检索、排序、句子相似度、推理、分类、聚类),涉及31个相关数据集,已合并至 Hugging Face MTEB leaderboard 中。

文本向量表示模型

m3e模型
e5模型
bge模型
https://github.com/FlagOpen/FlagEmbedding/blob/master/README_zh.md

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

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

相关文章

2023年【A特种设备相关管理(锅炉压力容器压力管道)】新版试题及A特种设备相关管理(锅炉压力容器压力管道)试题及解析

题库来源:安全生产模拟考试一点通公众号小程序 A特种设备相关管理(锅炉压力容器压力管道)新版试题是安全生产模拟考试一点通生成的,A特种设备相关管理(锅炉压力容器压力管道)证模拟考试题库是根据A特种设备…

【Oracle】Oracle系列之十三--游标

文章目录 往期回顾前言1. 游标的定义2. 游标的类型(1)显式游标(2)隐式游标 3. 游标的应用(1)基本用法(2)数据处理(3)更新数据(4)注意事…

打造完美家庭空间,让生活更加舒适

在现代繁忙的都市生活中,家是人们温暖而舒适的避风港。而如何打造一个恰到好处的家庭空间,成为了许多人心中的追求。今天,就让我们来探索一些空间布局方案,为您的家庭营造一个完美融合功能与美感的舒适空间。 🏠&…

javaee之Elasticsearch相关知识

简单说一下Elasticsearch相关知识 其余的参考官网文档 我们还可以用下面的方式来查 看一下原始索引库的模板 下面看一下数据库映射关系 下面就是更改了id1的所有数据 下面是我索引库中的内容 说一下查询之后,一些属性的含义 上面案例是这样理解的 match查询类型会对…

windows redis 自启动 Redis服务无法启动报错1067问题

如果你的系统服务里面已经有redis服务并且无法启动,则使用下面的命令卸载此服务 ! 1、停止Redis服务: redis-server --service-uninstall 2、删除系统服务 sc delete redis 进入到你的Redis安装目录,我的在以下目录,谨记此时不…

【UE】在游戏运行时,通过选择uasset来生成静态网格体

目录 主要流程 步骤 一、创建用于包含静态网格体的Actor蓝图 二、按钮点击事件 效果 主要流程 用户点击按钮后产生一个文件对话框,用户通过文件对话框选择指定的文件夹,我们获取到这个文件夹路径后处理成“按路径获取资产”节点所需的输入&#x…

学习总结1

Vue的学习 Vue是一套用于构建用户界面的渐进式JavaScript框架; Vue中关键的几个概念:组件化,MVVM,响应式,和生命周期。 1. 组件化: 在Vue框架中,允许你将界面拆分为小的,独立的可…

starrocks启动和停止和重启脚本

StarRocks启动和停止和重启脚本 编辑脚本:vim start_stop_starrocks.sh 备注:IP修改为自己的IP即可 #!/bin/bashcase $1 in "start"){for i in 12.3.7.147 12.3.7.148 12.3.7.149 12.3.7.150doecho " --------启动 $i be -------"ssh $i &qu…

node.js知识系列(1)-每天了解一点

目录 1. Node.js 是什么以及其主要特点2. 事件循环(Event Loop)和其作用3. 处理回调地狱(Callback Hell)4. 包管理器和 npm5. 模块系统和导入/导出模块6. 文件操作7. 事件发射器(EventEmitter)8. 处理异常和…

Vue3+TypeScript

一、Vue3带来的变化(源码) 源码通过monorepo的形式来管理源代码 口Mono:单个 口Repo : repository仓库 口主要是将许多项目的代码存储在同一个repository中; 口这样做的目的是多个包本身相互独立,可以有自己的功能逻辑、单元测试等,同时又在…

【数据库开发】DQL操作和多表设计

数据库开发 一、数据库操作-DQL 1.概述 用来查询数据库表中的记录,查询操作分为两部分,单表操作和多表操作,针对于查询而言(相较于增删改更加的灵活)基于目标分析条件转换为SQL语句 2.语法 SELECT 字段列表 FROM表…

基于安卓android微信小程序的旅游app系统

项目介绍 随着人民生活水平的提高,旅游业已经越来越大众化,而旅游业的核心是信息,不论是对旅游管理部门、对旅游企业,或是对旅游者而言,有效的获取旅游信息,都显得特别重要.自助定制游将使旅游相关信息管理工作规范化、信息化、程序化,提供旅游景点、旅游线路,旅游新闻等服务本…

Java线程池:并发编程的利器

Java线程池:并发编程的利器 在多任务、高并发的时代,Java并发编程显得尤为重要。其中,Java线程池是一种高效的管理线程的工具,能够提高应用程序的性能和响应速度。本文将深入探讨Java线程池的工作原理、应用场景以及简单示例&…

SpringBoot整合POI实现Excel文件读写操作

1.环境准备 1、导入sql脚本: create database if not exists springboot default charset utf8mb4;use springboot;create table if not exists user (id bigint(20) primary key auto_increment comment 主键id,username varchar(255) not null comment 用…

10.5 认识XEDParse汇编引擎

XEDParse 是一款开源的x86指令编码库,该库用于将MASM语法的汇编指令级转换为对等的机器码,并以XED格式输出,目前该库支持x86、x64平台下的汇编编码,XEDParse的特点是高效、准确、易于使用,它可以良好地处理各种类型的指…

学习笔记(css穿透、vue-cookie、拦截器、vuex、导航守卫、token/Cookie、正则校验)

目录 一、记录 1、CSS穿透 2、输入框是否提示输入 3、插槽 #slot 4、v-deep深入改掉属性值 二、vue-cookie 1、官方文档 2、使用 三、拦截器 1、请求拦截器 2、响应拦截器 四、vuex对信息存取改 五、路由导航守卫 1、登录思路 2、设置白名单 六、Token与Cookie…

蓝桥杯每日一题2023.9.30

蓝桥杯大赛历届真题 - C&C 大学 B 组 - 蓝桥云课 (lanqiao.cn) 题目描述 题目分析 对于此题,首先想到了dfs进行一一找寻,注意每次不要将重复的算进去,故我们每次循环可以记录一个开始的位置,下一次到这个位置时,…

WIFI频段

问题: 5ghzwifi频段带宽怎么选 智造喵回答: 选择5GHz WiFi频段的带宽取决于你的网络需求和设备兼容性。通常有两种可选的带宽:20MHz和40MHz。 20MHz带宽:这是较为常见的 WiFi 频段带宽设置。它提供较好的穿墙能力和信号稳定性…

【MySQL基础】概述、DDL和DML

MySQL基础 1.MySQL概述 安装 MySQL官方提供了两个版本: 商业版本(MySQL Enterprise Edition) 该版本是收费的,可以使用30天。 官方会提供对应的技术支持。 社区版本(MySQL Community Server) 该版本是免费…

【数据结构-二叉树 九】【树的子结构】:树的子结构

废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【子结构】,使用【二叉树】这个基本的数据结构来实现,这个高频题的站点是:CodeTop,筛选条件为&…