大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

一篇2024比较新的paper:

核心是讨论如何用更好做文本表征,本篇论文笔记梳理下文章核心点

文章干了啥

提出了一种利用生成合成数据的方法,以改进文本嵌入。这种方法避免了传统多阶段训练流程的复杂性,不需要手动收集数据集,而是通过LLMs在近100种语言中生成数十万个文本嵌入任务的合成数据。训练时,用对比损失优化表征, 实验结果表明,该方法在不使用任何标记数据的情况下,在多个文本嵌入基准测试中取得了优异的性能。当与标记数据结合微调时,模型在和MTEB基准测试中SOTA了。

怎么生成数据

第一步:生成任务列表(Brainstorming)

  1. 任务定义:首先,LLMs被提示去“头脑风暴”(brainstorm)一系列可能有用的文本检索任务。这些任务覆盖了广泛的应用场景,如科学论文检索、FAQ查询回答等。
  2. 任务描述:对于每个生成的任务,LLMs会描述任务的具体内容,包括查询的类型(如短尾关键词、长尾关键词等)、查询的长度、清晰度以及所需的教育水平。
  3. 生成任务列表:LLMs会输出一个包含多个任务描述的列表,这些描述遵循特定的格式,例如Python列表,每个元素对应一个任务。

第二步:生成具体数据(Data Generation)

  1. 任务分配:对于每个在第一步中定义的任务,LLMs被分配一个具体的任务实例。这包括一个用户查询(user_query)和两个文档:一个是与查询正相关的文档(positive_document),另一个是与查询负相关的硬负文档(hard_negative_document)。
  2. 遵循指南:在生成数据时,LLMs需要遵循一系列指南,例如查询的长度、清晰度、多样性以及文档的独立性。这些指南确保生成的数据既具有挑战性,又能够真实反映实际的检索场景。
  3. 生成JSON对象:LLMs生成的每个任务实例都会被格式化为一个JSON对象,其中包含用户查询、正相关文档和硬负文档。这些JSON对象随后被用于训练过程。

多语言数据生成

  • 在生成多语言数据时,LLMs会从XLM-R的语言列表中随机选择语言,并且对高资源语言给予更高的权重。
  • 生成的数据会根据预定义的JSON格式进行解析,不符合条件的数据会被丢弃。同时,会移除精确字符串匹配的重复项。

通过这种两步提示策略,论文中的方法能够生成大量多样化的合成数据,这些数据覆盖了多种语言和任务类型,为后续的文本训练提供了丰富的训练样本。这种方法的优势在于它能够利用LLMs的强大语言理解和生成能力,而不需要依赖于人工标注的数据集。

怎么用的对比学习

1.数据生成

  • 使用LLMs如GPT-4/GPT-3.5生成合成数据。这些数据包括查询(user_query)和相关文档(positive_document)以及不相关的硬负文档(hard_negative_document)。
  • 设计了多种提示模板(prompt templates),用于生成不同类型的文本嵌入任务,如短长匹配、长短匹配、短短匹配和长长匹配等。

2.数据预处理
对生成的数据进行预处理,确保它们符合预定义的JSON格式,并且去除重复项。

3.模型初始化:

使用预训练的大型语言模型(如)作为文本嵌入模型的基础。

4.对比学习训练:

  • 在训练过程中,对于每个查询-文档对(q+, d+),首先应用一个指令模板(instruction template)到原始查询q+,生成新的查询q+inst。
  • 将查询q+inst和文档d+输入到预训练的LLM中,获取它们的嵌入表示(hq+inst, hd+),通常取最后一层的[EOS]向量。
  • 使用InfoNCE损失函数来训练嵌入模型。这个损失函数计算的是正样本对(查询和相关文档)之间的匹配分数与负样本对(查询和不相关文档)之间的匹配分数的对数概率之差。

5.损失函数:

  • InfoNCE的损失:
www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

其中,ϕ(q,d) 是计算查询q和文档d之间匹配分数的函数,通常使用温度缩放的。

6.训练细节

  • 在训练过程中,模型会在合成数据上进行微调,通常只需要不到1000步的训练。
  • 使用了一些技术如LoRA(Low-Rank Adaptation)来减少GPU内存需求,并采用和梯度检查点技术来提高训练效率。

模型能够学习到如何将query和docs映射到相似的嵌入空间,同时将不相关的doc映射到不同的空间区域。使得模型能够在没有大量标记数据的情况下,有效地学习文本的语义信息。

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

大模型&AI产品经理如何学习

求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。

1.学习路线图

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?
www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方图片前往获取

3.技术文档和电子书

这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?


4.LLM面试题和面经合集


这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?
1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集***

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

www.zeeklog.com  - 大模型已有文本表征能力,为什么还需要向量表征(embedding)模型?

Read more

印度统治阶级锁死底层人的5大阳谋

印度统治阶级锁死底层人的5大阳谋

基于社会学和心理学视角: 1. 情感道德: 统治阶级通过塑造道德规范和情感价值观,引导底层人群的行为。例如,宣扬“勤劳致富”“忍耐美德”等观念,让底层人接受现状并自我约束。这种道德框架往往掩盖结构性不平等,使人们将个人困境归咎于自身而非系统。 2. 欲望控制: 通过消费主义和媒体宣传,统治阶级刺激底层人的物质与社会欲望(如名牌、地位),但同时设置经济壁垒,使这些欲望难以实现。底层人被困在追求“更好生活”的循环中,精力被分散,无法聚焦于挑战权力结构。 3. 情绪煽动: 利用恐惧、愤怒或民族主义等情绪,统治阶级可以通过媒体或公共事件转移底层人对社会问题的注意力。例如,制造外部敌人或内部对立(如阶层、种族矛盾),让底层人内耗而非联合反抗。 4. 暴利诱惑: 通过展示少数“成功案例”或快速致富的机会(如赌博、投机),诱导底层人追逐短期暴利。这种机制不仅让底层人陷入经济风险,还强化了对现有经济体系的依赖,削弱长期变革的可能性。 5. 权力震撼: 通过展示统治阶级的权力(

By Ne0inhk