预训练模型语义相似性计算:M3E和BGE详解
创作时间:
作者:
@小白创作中心
预训练模型语义相似性计算:M3E和BGE详解
引用
CSDN
1.
https://blog.csdn.net/choose_c/article/details/139246631
在自然语言处理领域,预训练模型的语义相似性计算是衡量模型性能的重要指标之一。本文将介绍两种在该领域具有代表性的预训练模型:M3E和BGE。
M3E
M3E由MokaAI训练并开源。其主要特点如下:
- 大规模中文句对数据集:包含超过2200万个中文句对数据,且已开源。
- 多功能支持:支持同质相似句计算(s2s)和异质检索(s2p),未来还将支持代码检索。
- 基座模型:基于RoBERTa架构,支持进一步微调。
BGE
BGE由北京智源人工智能研究院发布,相关研究论文为《C-Pack: Packed Resources For General Chinese Embeddings》。该论文推出了一个全面的中文嵌入资源包C-Pack,其中包括:
- C-MTP:一个大型的文本嵌入训练集,包含大量非监督语料库和高质量标注的有监督语料库。
- C-MTEB:一个涵盖6个任务和35个数据集的中文文本嵌入基准。
- BGE:一系列多尺寸的文本嵌入模型。
所有相关资源可在GitHub仓库FlagOpen/FlagEmbedding中获取。
BGE的训练流程
- 预训练:在大规模高质量中文语料上采用RetroMAE风格的预训练方法。
- 通用微调:在C-MTP无监督语料上进行对比学习,通过增大批次来增强嵌入的判别性。
- 特定任务微调:在C-MTP有监督语料上进行指令微调,并为每个文本对挖掘硬负样本(ANCE)。
BGE-m3
BGE-m3是一个具有多语言、多粒度和多功能特性的文本嵌入模型。其主要特点包括:
- 多语言支持:支持超过100种语言。
- 多粒度处理:能够处理最多8192个token的输入。
- 多功能性:支持密集检索、多向量检索和稀疏检索。
技术贡献
- 自我知识蒸馏方法:通过集成来自不同检索功能的相关性分数作为教师信号,以提高训练质量。
- 优化的批处理策略:实现大批量和高训练吞吐量,确保嵌入的判别性。
混合检索方法
- 密集检索:使用[cls]表示query向量,通过内积计算相关性。
- 词汇(稀疏)检索:基于公共token的权重计算相关性。
- 多向量检索:计算query和passage token之间的相关性(参考colBERT)。
自我知识蒸馏过程
- 第一步:在无监督数据上使用密集检索损失进行对比学习。
- 第二步:在有监督语料上使用自我知识蒸馏训练,其中混合检索损失作为教师模型的监督信号。
训练流程优化
- 文本长度采样:确保每个批次内的文本长度相对一致,以减少填充。
- 分批处理:将一个批次的数据分成多个小批次,编码文本并收集向量,最后汇总计算损失。
长文本优化
- MCLS(Multiple CLS):在固定数量的token之间插入cls token,通过平均所有cls token的最后隐藏状态来获得最终的文本嵌入。
注:BGE中使用的其他技术(如RetroMAE、ANCE等)在BGE-m3中仍然适用。
热门推荐
椰毒假单胞菌与椰子变质:如何安全享用椰子
山西长治法兴寺:石塔、燃灯塔、宋塑三绝惊艳世人
河北自驾游必去三城:正定古城、广府太极、承德避暑
河北十大景区自驾游:长城、草原、皇家园林全打卡
法兴寺:藏唐代孤例石塔与宋塑精品的千年古刹
法兴寺:太行深处藏千年唐塔宋塑艺术瑰宝
法兴寺“三绝”:千年古刹里的三件国宝
白蕉与翁鼐书法展,师徒情深再现江湖
冬季自驾游安全攻略:六大系统检查确保行车无忧
白蕉书法,魏晋风度再现江湖
白蕉与翁鼐书法展,揭秘师徒情深
瑞士阿尔卑斯自驾游:伯尔尼纳快车穿越2000米海拔落差
化橘红&罗汉果,泡一杯告别嗓子“卡毛”
换季咽喉不适?试试这些小妙招!
中药外敷:宝宝湿疹治疗的新选择
真石漆涨价如何破?四大方案助你节省装修开支
每日圣经金句:让你的灵魂充电
圣经金句中的哲学智慧:十种力量助你应对现代生活
职场压力下的信仰力量:用圣经金句点亮你的内心
《圣经》金句:心灵鸡汤的最佳配方
椰子水PK椰子肉:谁才是真正的营养王者?
广州早茶到厦门海风,再到桂林山水:冬季自驾游攻略
广州至桂林自驾攻略:6天行程规划与实用建议
广州到杭州:六大南方城市自驾游攻略
膝关节滑囊炎
全面讲解!膝关节炎“肿痛”的病因和诊疗分析
杭州宋城亲子游,不容错过的《宋城千古情》
杭州宋城千古情:世界三大名秀之一,你看过吗?
属鼠人如何在销售行业大放异彩?
属鼠人如何靠社交优势玩转2025职场