合合信息Embedding模型获得MTEB中文榜单第一

news2024/10/7 20:36:51

前言

最近几年,可以说大语言模型汇聚了所有的光彩,大语言模型的飞速发展更是吸引着社会各界的目光,这些模型的强大能力源自于Embedding技术的支撑,这种技术将语言转化为机器可理解的数值向量。随着大型语言模型的不断突破,Embedding模型的关键性日益凸显,成为推动人工智能领域向前发展的核心动力。在这个充满无限可能的领域中,每一次技术的飞跃都预示着新的变革和机遇。 近期,合合信息发布了文本向量化模型acge_text_embedding(简称“acge模型”),获得MTEB中文榜单(C-MTEB)第一的成绩,相关成果将有助于大模型更快速地在千行百业中产生应用价值。

榜单第一是合合信息的acge模型

1、什么是MTEB

MTEB(Massive Text Embedding Benchmark)是衡量文本嵌入模型(Embedding模型)的评估指标的合集,是目前业内评测文本向量模型性能的重要参考。

而文本向量化模型是自然语言处理(NLP)中的一项核心技术,对应的Embedding模型能够将单词、句子或图像特征等高维的离散数据转换为低维的连续向量,捕捉到数据的语义特征和关系,被广泛应用于搜索、推荐、问答、检索增强生成、数据挖掘等领域。互联网时代中,随着信息量急剧膨胀,人们接触信息的渠道不断拓展,大量无关的信息已成为信息检索的干扰项,Embedding模型能够显著提高信息搜索和问答的质量、效率和准确性,让搜索和问答引擎不再只是匹配文字,而是可以真正理解人的意图。如下图所示,文本向量化模型通过将“生活日常知识”转换为数值向量,可以将文本信息表示成能够表达文本语义的向量。

MTEB的目的是为了评估向量模型在不同向量任务上的表现,希望作为寻找适用于不同任务的通用文本向量的入口。在论文里说包括涵盖112种语言的58个数据集,针对如下8种任务:

2、C-MTEB

MTEB则是专门针对中文文本向量的评测基准,被公认为是目前业界最全面、最权威的中文语义向量评测基准之一,涵盖了分类、聚类、检索、排序、文本相似度、STS等6个经典任务,共计35个数据集,为深度测试中文语义向量的全面性和可靠性提供了可靠的实验平台。阿里、腾讯、商汤、百川等多家厂商在此榜单测评发布模型。而本次合合信息上榜的acge模型也能够很好的处理一些需求:如文本分类、语义相似度计算、情感分析等。

文本分类:使用已经预训练好的Embedding模型来提取文本特征,并通过分类器(如SVM、LR等)对文本进行分类。例如,对于CSDN上的文章,我们可以使用Embedding技术将文本转换为向量,然后利用分类器判断文章的类别(如人工智能、微服务、嵌入式等)。

语义相似度计算:通过计算两个文本的Embedding向量之间的余弦相似度来判断它们之间的语义相似度。例如,在搜索引擎中,当用户输入一个查询词时,我们可以使用Embedding技术计算查询词与库中各个文档的语义相似度,从而返回最相关的文档。

情感分析:利用Embedding技术将文本转换为向量,然后利用机器学习算法(如SVM、神经网络等)对文本进行情感分析,判断文本的情感倾向(如正面、负面、中性)。

3、中文海量文本embedding任务排行榜:C-MTEB

从 Chinese Massive Text Embedding Benchmark 中可以看到目前最新的针对中文海量文本embedding的各项任务的排行榜,针对不同的任务场景均有单独的排行榜。此次合合信息的acge模型,荣获的就是C-MTEB榜单的第一。

3.1、max tokens

token是什么呢?在自然语言处理中,token通常指对文本进行分割和标记后得到的最小单元。这个最小单元可以是单词、子词、字符或者其他更小的单元。

例如下面的例子,一个短句可以分词成单个的字、词语、字句等。

3.2、文本聚类指标

聚类(clustering)是无监督学习(unsupervised learning)中研究最多、应用最广的技术之一,其基本思路是通过对无标记训练样本的学习来揭示数据内在的聚合性质与规律。

聚类试图将数据集中的样本划分为若干个通常是不相交的子集,每个子集称为一个簇(cluster),每个簇可能对应于一些潜在的概念(类别),但这些概念的语义需由开发者来把握和命名。

3.3、acge模型的特点

3.3.1、5种模型对比分析

acge模型居于MTEB中文榜单(C-MTEB),那么我们拿它与其他前5的模型对比一下,看看这五个模型的区别。

第一名:acge_text_embedding
  • Token:acge模型支持最大1024 tokens,可以满足大多数场景的分词需求;
  • 模型大小:0.65GB,模型较小,占用资源少,又便于部署和维护;
  • 分类任务性能: acge的平均准确率(Average)为69.07%,在所有模型中排名最高;
  • 向量维度:模型输入文本长度为1024,可以有效的输入更丰富的信息。
第二名:OpenSearch-text-hybrid
  • Token:OpenSearch模型支持最大512 tokens,没有acge模型拆分文本细致;
  • 分类任务性能: 平均准确率为68.71%,聚类任务性能也表现不错,但整体上不如acge。
第三名:stella-mrl-large-zh-v3.5-1792
  • Token:stella-mrl-large模型支持最大512 tokens,没有acge模型拆分文本细致;
  • 模型大小: 较大的模型 1.3GB,是acge模型的2倍,会导致更高的计算和存储需求。
  • 分类任务性能: 平均准确率为68.55%,聚类任务性能也表现不错,但整体上不如前2个模型。
第四名:stella-large-zh-v3-1792d
  • Token:stella-large模型支持最大512 tokens,没有acge模型拆分文本细致;
  • 模型大小: 较大的模型 1.3GB,是acge模型的2倍,会导致更高的计算和存储需求。
  • 分类任务性能: 平均准确率为68.48%,聚类任务性能也表现不错,但整体上不如前3个模型。
第五名:Baichuan-text-embedding
  • Token:OpenSearch模型支持最大512 tokens,没有acge模型拆分文本细致;
  • 分类任务性能: 平均准确率为68.34%,聚类任务性能也表现不错,但整体上不如前4个模型。

3.3.2、acge模型优势分析

与目前C-MTEB榜单上排名前五的开源模型相比,合合信息本次发布的acge模型较小,占用资源少,聚类分数也比较高,支持在不同场景下构建通用分类模型、提升长文档信息抽取精度,且应用成本相对较低,可帮助大模型在多个行业中快速创造价值,推动科技创新和产业升级,为构建新质生产力提供强有力的技术支持。

例如在企业管理、市场营销、医疗、电商、金融、教育、社交网络、旅游等领域都可以产生广泛的应用。

电商领域领域预测

由于acge模型的上述特点,可以用于电商领域,对比现在的推荐系统,在单位时间内,可以处理更多的文档信息,利用相似度分析,也可以更快速的响应推荐结果。

在用户层的感受,就是比以往的推荐更多精准,更加迅速,而且在618、双11等电商节,能同时容纳更多的用户个性推荐。

教育医疗领域的分析

当代社会各种病毒释虐、天气异常,小孩子成了流感的重灾区,传播十分迅速。acge模型可以对这些医疗数据进行实时的分类和聚类分析,将流感分为病毒、天气、肺炎等不同类别,并对每个类别中的医疗数据进行聚类,以识别主要的人群和关注人群。

比如某个地区肺炎流感患者集中爆发,可以根据患者地理位置以及流动位置信息,为当地的小学、幼儿园提供预警,及时的做消杀卫生,拉起警戒线,防止病毒浸入校园。

4、实战演练

下面我们可以从acge_text_embedding模型入口(https://huggingface.co/aspire/

acge_text_embedding)进入,可以在线演练acge模型的效果。

案例里,原文本是:“今天的月亮很圆”。“昨天的月亮很圆”相似度是最高的,“今天的太阳很圆次之”,“我今天画了一个圆”相似度很低,只有0.568分。

再次增加一个“我经常去海底捞吃火锅”,可以看到只有0.255分,相似度非常低了。

4.1、通过代码实现

在sentence-transformer库中的使用方法:

from sentence_transformers import SentenceTransformer

sentences = ["数据1", "数据2"]

model = SentenceTransformer('acge_text_embedding')

print(model.max_seq_length)

embeddings_1 = model.encode(sentences, normalize_embeddings=True)

embeddings_2 = model.encode(sentences, normalize_embeddings=True)

similarity = embeddings_1 @ embeddings_2.T

print(similarity)

在sentence-transformer库中的使用方法,选取不同的维度:

from sklearn.preprocessing import normalize

from sentence_transformers import SentenceTransformer

sentences = ["数据1", "数据2"]

model = SentenceTransformer('acge_text_embedding')

embeddings = model.encode(sentences, normalize_embeddings=False)

matryoshka_dim = 1024

embeddings = embeddings[..., :matryoshka_dim] # Shrink the embedding dimensions

embeddings = normalize(embeddings, norm="l2", axis=1)

print(embeddings.shape)

# => (2, 1024)

结语

合合信息是一家人工智能及大数据科技企业,基于自主研发的领先的智能文字识别及商业大数据核心技术,为全球C端用户和多元行业B端客户提供数字化、智能化的产品及服务。

欢迎各位感兴趣的朋友访问 合合信息旗下的OCR云服务产品——TextIn的官方网站,了解更多关于智能文字识别产品和技术的信息,体验智能图像处理、文字表格识别、文档内容提取等产品,更多惊喜等着你哦,快来试试吧:合合信息TextIn智能文字识别产品(https://www.textin.com/)

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

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

相关文章

产品经理一定得把ppt做的很高大上吗

严格来说你的这个PPT不能说是丑,只能说不好看,但并非你自己说的那种非常不好看。百分制的话我能给到60分左右,属于勉强及格的水准。PPT好看的标准很模糊也很客观,每个人的审美水平有高低,所以很难做到众人都挑不出毛病…

onlyoffice 的使用感受

自接触onlyoffice到使用,半年多了,因为Windows server2008要使用,属于非常古老的服务器了,所以费了好大力气才安装上去了。 如果是linux下使用docker则非常简单了,几个命令就把onlyoffice安装上去了。 对于当今的机器…

【工程记录】Python爬虫入门记录(Requests BeautifulSoup)

目录 写在前面1. 环境配置2. 获取网页数据3. 解析网页数据4. 提取所需数据4.1 简单提取4.2 多级索引提取 写在前面 仅作个人学习与记录用。主要整理使用Requests和BeautifulSoup库的简单爬虫方法。在进行数据爬取时,请确保遵守相关法律法规和网站的服务条款&#x…

c调用python , 有参无参

文章目录 1. c语言调用python 的步骤1.1 包含头文件1.2 初始化Python解释器1.3 添加当前路径到sys.path 中1.4 导入要调用的模块1.5 获取函数对象1.5.1 检查函数对象是否可被调用 1.6 构造参数1.7 调用函数并获取返回值1.8 返回值解析1.9 释放引用的所有python对象1.10 关闭pyt…

Android 在attrs.xml添加属性时出现 Found item Attr/****** more than one time

Android 在attrs.xml添加属性时出现 Found item Attr/****** more than one time 问题描述解决办法方式一方式二 小结 问题描述 在Android应用开发过程中,经常需要自定义控件,并且定义控件的属性,方便灵活的修改控件的显示样式,提…

【CLion】clion无法加载或找不到cmakekists文件

一、问题表象 最近工作中,在git pull远程仓库最新版本程序后,平时打开CLion自动加载的工程CMakeLists文件突然失效(显示找不到可编译的文件),无法debug程序。 二、原因分析 基于平时的编码经验和之前git pull也出现…

李沐64_注意力机制——自学笔记

注意力机制 1.卷积、全连接和池化层都只考虑不随意线索 2.注意力机制则显示的考虑随意线索 (1)随意线索倍称之为查询(query) (2)每个输入是一个值value,和不随意线索key的对 (3)通过注意力池…

Oracle集群ORA-03113:end-of-file on communication channel

一、问题场景描述 今天Oracle集群要更新各数据库的数据,折腾的启动不了了: --》数据量比较大,数据泵方式导出的dmp文件 准备导入集群 --》由于之前的生产数据库数据比较少,需要增大表空间。 --》于是在sqlplus命令窗口&#xff0c…

ChatGPT4.0知识问答、DALL-E生成AI图片、Code Copilot辅助编程,打开新世界的大门

目录 1、DALL-E 文字转图片 在线AI修改2、Write For Me3、Code Copilot 目前最强的AI编程大模型4、Diagrams: Show Me5、Instant Website [Multipage] 网站合成神器6、AskYourPDF Research Assistant 无限PDF7、Diagrams & Data: Research, Analyze, Visualize 精读Excel …

kuramoto模型 - 简要介绍

Kuramoto模型源远流长,这里不会对它做过于理论方面的讲解,只是面向动力学重构的工作中,可能要用到Kuramoto模型的相关介绍。 假设读者了解的常微分方程基本概念,图论知识,了解邻接矩阵, 通过本文&#xf…

归并排序详解

目录 归并排序的核心思想: 递归实现: 非递归实现: 时间复杂度: 空间复杂度: 应用场景: 本文全部以升序为例: 归并排序的核心思想: 先分解在合并: 1.归并的归&…

运算符重载(2)

1.赋值运算符重载 #include<iostream> using namespace std;class Person { friend void test01(); public:Person(int age){m_Age new int(age);}/*堆区的数据由程序员手动开辟并手动释放*/~Person(){if (m_Age ! NULL){delete m_Age;}}Person& operator(Person &a…

Python_AI库 Matplotlib的应用简例:绘制与保存折线图

本文默认读者已具备以下技能&#xff1a; 熟悉Python基础语法&#xff0c;以自行阅读python代码块熟悉Vscode或其它编辑工具的应用 在数据可视化领域&#xff0c;Matplotlib无疑是一个强大的工具。它允许我们创建各种静态、动态、交互式的可视化图形&#xff0c;帮助我们更好…

币圈资讯Cryptosquare论坛

在加密货币世界中&#xff0c;信息的及时获取对于投资者和交易者至关重要。今天&#xff0c;我将向大家介绍Cryptosquare这个综合性资讯论坛&#xff0c;它汇集了币圈新闻、空投信息、社会热点以及与Web3相关的工作信息。让我们一起解锁加密世界的种种可能性&#xff0c;探索Cr…

鹏哥C语言复习——字符函数与字符串函数

目录 一.字符函数 1.字符分类函数 2.字符转换函数 二.基础字符串函数 1.strlen函数 2.strcpy函数 3.strcat函数 4.strcmp函数 三.基础字符串函数优化 1.strncpy函数 2.strncat函数 3.strncmp函数 四.进阶字符串函数 1.strstr函数 2.strtok函数 3.strerror函数 一…

Eclipse 如何导入一个 Maven 项目

如果你的项目是 Maven 项目的话&#xff0c;导入的时候需要使用 Import&#xff0c;而不能使用打开项目的方式。 选择导入 选择导入 Maven 项目 然后选择 Maven 项目&#xff0c;开始导入。 选择目录后导入 然后选择你需要导入的目录后&#xff0c;单击导入。 Eclipse 如何导…

Llama-7b-Chinese本地推理

Llama-7b-Chinese 本地推理 基础环境信息&#xff08;wsl2安装Ubuntu22.04 miniconda&#xff09; 使用miniconda搭建环境 (base) :~$ conda create --name Llama-7b-Chinese python3.10 Channels:- defaults Platform: linux-64 Collecting package metadata (repodata.js…

【MySQL精炼宝库】数据库的约束 | 表的设计 | 聚合查询 | 联合查询

目录 一、数据库约束 1.1 约束类型&#xff1a; 1.2 案例演示&#xff1a; 二、表的设计 2.1 一对一: 2.2 一对多: 2.3 多对多: 2.4 内容小结&#xff1a; 三、新增 四、查询 4.1 聚合查询&#xff1a; 4.1.1 聚合函数&#xff1a; 4.1.2 GROUP BY子句&#xff1a…

nginx配置ip_hash负载均衡策略

一、nginx配置ip_hash负载均衡策略 nginx默认的负载均衡策略为轮询&#xff0c;某些场景需要使用ip_hash负载策略&#xff0c;即&#xff1a;同一个ip地址&#xff0c;永远访问nginx后面同一台tomcat。配置示例如下&#xff0c;主要是设置ip_hash&#xff1a; upstream www.ab…

B站美化插件,支持自定义,太酷辣~

大公司的软件和网站通常具有优雅的默认界面设计。 以国内二次元聚集地B站为例&#xff0c;可以说它的UI设计非常吸引人。与其他视频网站繁复的设计相比&#xff0c;B站的界面设计可以说是遥遥领先 然而&#xff0c;总有些人对默认的用户界面感到不满意&#xff0c;他们渴望尝试…