前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >拿下SOTA!最强中文Embedding模型对标OpenAI,技术路线公开

拿下SOTA!最强中文Embedding模型对标OpenAI,技术路线公开

作者头像
新智元
发布2024-06-17 17:48:02
1280
发布2024-06-17 17:48:02
举报
文章被收录于专栏:新智元新智元
新智元报道

编辑:编辑部

【新智元导读】国产大模型「日日新 5.0」已经在权威主流评测中鲨疯了。变强的背后原因竟是,来自商汤自研中文Embedding模型——Piccolo2。这是首个对标OpenAI向量长度的模型。

国产大模型最近在权威主流评测中「杀」疯了!

商汤「日日新 5.0」在中文大模型测评基准SuperCLUE中,成为首个超越GPT-4 Turbo的国产大模型;在OpenCompass的基准表现中,客观评测超过GPT-4 Turbo,主观评测已超过GPT-4o位列第一。

这次「又双叒叕变强」背后是算法、算力、数据的全面「buff」叠加,其中最重要的技术之一、也是解决LLM幻觉问题的关键——商汤自研的通用Embedding模型Piccolo2

Piccolo2日前已突破SOTA,在由北京智源研究院发布的中文语义向量评测基准C-MTEB评测中名列第一,这是当前最大规模、最为全面的中文语义向量表征能力评测基准,包含分类、聚类、句对分类、重排、检索和句子相似度六大类评测任务和31个数据集。

如今,商汤公开了技术路线。

Piccolo2目前支持512/2K/8K三种向量长度,其中8K模型是目前中文Embedding中能够实现对标OpenAI向量长度的模型。

论文地址:https://arxiv.org/abs/2405.06932

Hugging Face地址:https://huggingface.co/sensenova/piccolo-large-zh-v2

要读的论文又增加了!

模型幻觉「退退退」,长文本「准准准」!商汤全新嵌入模型性能大幅提升

正式读论文之前先聊聊Embedding对于大语言模型的重要性:

检索的准确度、可解释性、易操作的知识外挂……这些都是源于与LLM基于知识库的问答场景息息相关的Embedding模型性能。

嵌入(Embedding)就是将内容(如文字或代码)中的概念转化为一串数字序列。通过这种方式,机器学习模型和其他算法可以轻松理解不同内容之间的关系,执行聚类、检索等操作。

无论是应对幻觉和可解释性,还是应对长文,Piccolo2加持的商汤日日新5.0都完美地完成了从长文中处理和获取信息的任务。

在整个检索增强生成(RAG)pipeline中,Embedding的性能决定了检索的准确性,也间接决定了LLM输出的可信度,而RAG在私有化部署方面的优势也为其开辟了更多可能性。

RAG的一大优点就在于知识库可以通过文档的形式进行外挂,这使得知识能够更频繁地更新,而无需耗时耗力再通过二次预训练向LLM灌入这些知识,并且RAG的检索步骤能够提供上下文给模型作为参考依据,让大模型回答更加准确。

这些也催生了另一个优势——私有化,RAG可以帮助小企业轻松完成大模型的私有化部署,而无需暴露私有数据。

核心技术详解:对标OpenAI向量长度,精度位列MTEB中文榜单榜首

在这个LLM落地应用中必不可少的一环里,商汤已经将这项技术实现了SOTA,相比之前同量级的SOTA模型acge-embedding,Piccolo2模型综合评分提升了约1.9个点。

到了读论文环节,这背后用了什么方法?依然是算法、数据的双重发力。

与上一代(Piccolo)相比, Piccolo2 主要利用高效的多任务混合损失训练方法,有效地利用来自不同下游任务的文本数据和标签。

同时,Piccolo2 扩大了嵌入维度,并使用 MRL 训练来支持更灵活的向量维度。除了训练方法之外,Piccolo2 还利用了一个数据合成框架和难负挖掘方法,以不断扩充数据集的数量和质量。

多任务混合损失训练:适用不同下游任务

以往的Embedding模型训练过程主要依赖于的标准InfoNCE损失和批内负样本(in-batch negative),通常通过利用大量负样本来实现较好的性能。然而,标准 InfoNCE 并不适用当前Embedding模型所有的下游任务。

例如,句子相似度(STS)和句对分类任务(pair classification)这种具有细粒度标注的任务通常更适合用排序损失。

此外,分类任务和聚类任务在之前的工作中也没有被用于通用嵌入模型的训练。因此在Piccolo2中,商汤采用了多任务混合损失训练方法,针对不同的下游任务利用不同的训练损失,并证明了其优越的性能。

对于检索任务,Piccolo2采用标准的InfoNCE损失:

对于句对分类、句对相似度任务,Piccolo2采用排序损失:

对于分类、聚类任务,Piccolo2首先通过将文本的label视为正/负样本,把分类、聚类数据转换为三元组,然后采用不带批内负样本的InfoNCE损失进行训练:

大维度和MRL训练

在今年1月OpenAI发布的两个新的文本嵌入模型text-embedding-3-small和 text-embedding-3-large ,当时引发了广发关注。

受到 OpenAI 的 text-embedding-v3的启发,商汤在研发Piccolo2时,也扩大了Embedding的维度尺寸,从1024 增加到1792。

除此之外,还引入了「套娃学习」(Matryoshka Representation Learning, MRL)来支持更灵活的Embedding推理维度,「套娃学习」通过以嵌套方式对 O (log (d)) 低维向量进行显式优化在同一个高维向量中学习不同容量的表征。

高质量数据加持精度

Piccolo2的微调数据主要来自于开源社区和GPT-4生成的合成数据。同时,对于检索任务,Piccolo2也应用了难负样本挖掘来扩充数据质量。数据配比如下图所示:

实验介绍:

通过多任务混合损失训练的方式,Piccolo2在C-MTEB上达到了70.95的平均精度,相比之前同量级的SOTA模型acge-embedding,综合评分提升了约1.9个点。

同时,得益于MRL技术的加持,Piccolo2在Embedding小维度上也有相当强的优势——从1792维度降到256维度,精度也仅仅下降了约1个点。

如此,MRL算法让Embedding模型具备多粒度的表达能力,也为开发者们提供更加灵活的选择。

Piccolo2更多技术细节可以查看:

论文地址:https://arxiv.org/abs/2405.06932

Hugging Face地址:https://huggingface.co/sensenova/piccolo-large-zh-v2

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 【新智元导读】国产大模型「日日新 5.0」已经在权威主流评测中鲨疯了。变强的背后原因竟是,来自商汤自研中文Embedding模型——Piccolo2。这是首个对标OpenAI向量长度的模型。
  • 多任务混合损失训练:适用不同下游任务
  • 大维度和MRL训练
  • 高质量数据加持精度
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档