ChatGPT 人工智能 GPT4 伦理 生成式 医疗 监管 安全 机器学习 深度学习 神经网络 计算机视觉 强化学习 模型 算法 应用 开发 研究 工具 平台 框架 数据集 训练 部署 安全 合规 培训 投资 LLM,llm AI,ai,Ai 大模型 大语言模型 制图 生图 绘图 文生图 文生视频 生成式AI AGI 世界模型 sora chatGPT,chatgpt,ChatGpt claude openai Llama deepseek midjourney 红熊猫模型 Red panda,panda Stable Diffusion,StableDiffusion,stable DALL- E 3 DALL E DALL Flux,flux 扩散模型 混元大模型 文心一言 通义千问 可灵 Pika PixelDance 豆包 月之暗面 零一万物 阶跃星辰 搜索增强 MiniMax Talkie Agent prompt fastai LangChain TTS 微调 提示词 知识库 智能体
# 热门搜索 #
搜索
斯坦福重磅,突破小规模语料瓶颈,EntiGraph合成数据增强算法让LLM更聪明
6121点击    2024-09-20 10:31

如何处理小众数据,如何让这些模型高效地学习专业领域的知识,一直是一个挑战。斯坦福大学的研究团队最近提出了一种名为EntiGraph的合成数据增强算法,为这个问题带来了新的解决思路。


简单点说,就是用这个名为EntiGraph的合成数据增强算法,生成人工合成数据,增加知识表述的多样性,为语言模型的学习提供更好的素材。




小规模语料学习的困境


大语言模型通常需要海量的训练数据才能学到有用的知识。比如,GPT-3就是在超过45TB的文本上训练而成的。但在很多专业领域,我们往往只能获得有限的高质量文本资料,可能只有几百万个词汇。直接用这些小规模语料来训练模型,效果往往不尽如人意。


研究者们发现,即使是同样的事实,大语言模型也需要在不同的表述中反复出现数百上千次,才能真正学会。这种低效的学习方式在小规模语料上显得尤为突出。如果我们只有一本教科书的内容,模型很难从中提取出全面的知识。


EntiGraph:巧妙构建知识图谱


为了解决这个问题,斯坦福大学的研究团队提出了EntiGraph算法。这个算法的核心思想是,从有限的文本中提取出关键实体和它们之间的关系,然后基于这些信息合成出大量的新文本。这个过程可以类比为,我们先从教科书中提取出知识点,然后用这些知识点编写出各种各样的习题和例子。


EntiGraph算法包含以下三个步骤:


1. 实体提取


首先,算法会从原始文本中提取出所有的关键实体。这里的实体可以是人名、地名、概念等。研究者使用了GPT-4作为基础模型,通过精心设计的提示词来完成这个任务。


例如,对于一篇介绍线性代数的文章,提取出的实体可能包括"线性空间"、"向量"、"奇异值分解"等。



2. 单实体描述


接下来,算法会针对每个提取出的实体,生成详细的描述文本。这个过程同样是通过设计提示词来引导GPT-4完成的。生成的文本会围绕该实体在原文中的角色和重要性展开讨论。


比如,对于"线性空间"这个实体,生成的描述可能是:"线性空间是代数的基本概念之一,它满足一系列的公理..."



3. 实体关系分析


最后,算法会分析不同实体之间的关系,并生成相关的文本。这一步骤不仅考虑实体对,还会考虑三个实体之间的关系。


例如,算法可能会生成描述"线性空间"、"向量"和"基"这三个概念之间关系的文本。



通过这三个步骤,EntiGraph能够从原始的小规模语料中生成大量的合成文本。这些文本虽然没有引入新的事实,但大大增加了知识表述的多样性,为语言模型的学习提供了更好的素材。


实验验证:用130万词合成6亿词


为了验证EntiGraph的效果,研究团队设计了一系列精巧的实验。他们使用了QuALITY数据集,这个数据集包含265本书籍和文章,总共约130万个词。研究者首先用EntiGraph算法处理这些文本,生成了约6亿个词的合成语料。


然后,他们用这些合成语料对Llama 3 8B模型进行继续预训练。为了评估训练效果,他们设计了一个封闭式问答任务:模型需要回答与原始文本相关的问题,但在回答时不能查看原文。


实验结果:


1. 使用EntiGraph合成数据训练的模型,在问答任务上的准确率从39.49%提升到了56.42%。这个提升幅度相当于直接使用原始文本进行检索增强生成(RAG)所能达到的80%。


2. 模型的表现随着合成数据量的增加而持续提升,呈现出对数线性的增长趋势。这意味着即使进一步增加合成数据量,模型的性能还有提升空间


3. 相比之下,直接在原始小规模语料上训练,或者使用简单的重述方法生成的合成数据,都无法带来显著的性能提升。


这些结果充分证明了EntiGraph算法在小规模语料学习中的优越性。它不仅能够有效提取和重组原始文本中的知识,还能生成足够多样化的表述,从而帮助模型更好地学习和泛化。



研究团队通过一张清晰的图表展示了不同数据增强方法的效果对比。这张图的横轴表示合成数据的数量(以百万个token为单位),纵轴表示模型在问答任务上的准确率。图中包含了四条曲线,分别代表不同的方法:


1. EntiGraph CPT (红色曲线):使用EntiGraph算法生成的合成数据进行继续预训练。


2. Rephrase CPT (蓝色曲线):使用简单重述方法生成的合成数据进行继续预训练。


3. Raw CPT (绿色曲线):直接使用原始小规模语料进行继续预训练。


4. Llama 3 8B Base (黑色虚线):原始Llama 3 8B模型的基准性能。


从图中我们可以观察到以下几点:


1. EntiGraph的显著优势:EntiGraph CPT的红色曲线呈现出持续上升的趋势,在合成数据量达到600百万token时,准确率提升到约56%。这远远超过了其他方法的表现。


2. 简单重述方法的局限性:Rephrase CPT的蓝色曲线在开始时有小幅提升,但很快就趋于平稳,最终准确率停留在约43%左右。这表明简单的重述方法无法为模型提供足够多样化的学习素材。


3. 原始小规模语料的不足:Raw CPT的绿色曲线几乎与x轴平行,甚至略低于基准模型的性能。这清楚地说明了直接使用小规模语料进行继续预训练是无效的。


4. 基准模型的性能:Llama 3 8B Base的黑色虚线保持在约39.5%的准确率,为其他方法提供了一个比较基准。


5. EntiGraph的持续增长:值得注意的是,即使在600百万token时,EntiGraph CPT的曲线仍然呈上升趋势,这暗示着进一步增加合成数据量可能会带来更好的性能。最近,o1模型因在特定任务上这张图有力地证明了EntiGraph算法在小规模语料学习中的卓越效果。它不仅能显著提升模型性能,而且随着合成数据量的增加,性能还有进一步提升的潜力。相比之下,其他方法要么效果有限,要么完全无效。这个结果强调了EntiGraph在知识提取和重组方面的独特优势,为解决小规模语料学习问题提供了一个极具前景的方向。


EntiGraph的工作原理:重组知识的艺术


EntiGraph的成功并非偶然。研究者们通过深入的理论分析,揭示了算法背后的工作原理。


实际上,EntiGraph并没有创造新的知识,而是巧妙地"重新安排"了原始文本中的知识,使其更容易被语言模型学习。这个过程可以类比为,将一本教科书的内容重新组织成各种练习题、讨论题和应用案例。


研究者们建立了一个数学模型来描述这个过程。他们发现,EntiGraph生成的合成数据中,不同知识点之间的连接呈现出一种特殊的分布。这种分布使得模型在学习过程中能够更快地建立起知识之间的关联。


具体来说,EntiGraph的工作过程可以分为三个阶段:


1. 快速增长阶段:在合成数据量较少时,模型的性能呈线性增长。这对应于模型快速学习到基本知识点的过程。


2. 缓慢增长阶段:随着合成数据量的进一步增加,模型性能的增长速度放缓,呈对数线性增长。这反映了模型开始学习更复杂的知识关联。


3. 平稳阶段:最终,模型性能会趋于稳定。这表明模型已经学到了原始文本中大部分可提取的知识。


这个理论模型不仅解释了实验中观察到的现象,还为如何优化合成数据的生成过程提供了指导。


EntiGraph对AI产品开发的启示


EntiGraph的成功为AI开发,特别是在专业领域的应用,带来了重要启示:


1. 知识提取的重要性:在处理专业文本时,准确提取关键实体和概念是至关重要的。这为后续的知识重组和扩展奠定了基础。


2. 多样化表述的价值:单一的表述方式限制了模型的学习。通过生成多样化的表述,可以帮助模型建立更具有鲁棒性的知识表示。


3. 图示思维的应用:EntiGraph实际上是将文本知识转化为一种类似知识图谱的结构。这种结构化的思维方式在处理复杂知识时非常有效。


4. 理论与实践的结合:深入的理论分析不仅有助于理解算法的工作原理,还能指导实践中的优化方向。


对于Prompt工程师来说,EntiGraph的思路特别具有启发性。在设计提示词时,我们可以借鉴以下几点:


1. 实体关注:设计能够准确捕捉关键实体的提示词。


2. 关系探索:引导模型分析不同实体之间的关系,生成多角度的描述。


3. 知识重组:鼓励模型以不同的方式重新组织和表述已有知识。


4. 层次结构:在复杂任务中,可以设计层次化的提示词,逐步引导模型完成任务。


EntiGraph算法的成功,让我们看到了AI学习的一种新可能。它告诉我们,有效的学习不仅在于获取大量信息,更在于如何巧妙地组织和表达这些信息。这种思路与人类的学习过程何其相似:我们阅读教科书,做练习题,讨论案例,正是通过这样反复咀嚼知识的过程,才最终将知识内化为我们自己的智慧。


EntiGraph是一种受知识图启发的合成数据增强算法。EntiGraph不仅是一个技术创新,更是一种思维方式的启发。它鼓励我们跳出简单的"more data, better performance"的思维定式,去思考如何让AI更智慧地学习。在这个过程中,我们或许能够更深入地理解知识的本质,以及智能的真正含义。


文章来自于“AI修猫Prompt”,作者“AI修猫Prompt”。




AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
RAG

【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。

项目地址:https://github.com/microsoft/graphrag

【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。

项目地址:https://github.com/langgenius/dify


【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。

项目地址:https://github.com/infiniflow/ragflow/tree/main


【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目

项目地址:https://github.com/phidatahq/phidata


【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。

项目地址:https://github.com/TaskingAI/TaskingAI

2
prompt

【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。

项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md

在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0