【AI开发】大模型数据工程简介
作者:微信文章在当今人工智能蓬勃发展的浪潮中,大模型已然成为推动技术创新的核心驱动力。而在大模型的研发进程里,数据工程、知识图谱等要素扮演着举足轻重的角色,它们相互交织、协同共进,共同塑造着大模型的发展格局。本文将对这些关键内容进行结构化梳理与深度润色,带您全面领略大模型领域的奥秘。
一、大模型数据工程概念
1、概念的狭义与广义之分
在大模型研发的宏大图景中,数据工程占据着不可或缺的关键地位。为更透彻地理解与应用这一概念,可将大模型数据工程细分为狭义和广义两个层面。
1)狭义大模型数据工程
狭义视角下,研发大模型的数据工程可定义为:依据特定的研发场景和任务,采集相关研发数据,并生成适用于模型预训练的语料或微调数据集。这一过程涵盖以下关键步骤:数据采集:广泛涉猎多种数据源,包括公开数据集、合作伙伴提供的数据以及自主采集的数据等,全方位汇聚数据资源。
数据预处理:对采集到的数据开展清洗、去噪及标准化处理,精心雕琢数据质量,为后续流程奠定坚实基础。
数据标注:根据任务的具体需求,对数据进行精准标注,使其能够在模型训练过程中发挥关键作用。
数据集构建:将经过处理的数据巧妙构建成契合预训练或微调需求的语料库或数据集,确保数据的可用性与高效性。
狭义的数据工程聚焦于为特定任务打造高质量的训练数据,旨在显著提升模型的性能与准确性。
2)广义大模型数据工程
广义而言,研发大模型的数据工程不仅囊括上述狭义步骤,还进一步涵盖在增量预训练、SFT(特殊任务微调)、RAG(检索增强生成)和 Prompt 等不同阶段的数据处理与应用。广义的数据工程可定义为:依据研发场景与任务,对相关数据进行全面处理与应用,全力支持大模型在各个阶段的研发与优化。这些数据被视为研发过程中的宝贵资产,主要包括:研发资产:高质量的数据堪称研发的瑰宝,对模型的性能与应用效果产生直接且深远的影响。
RawData:即用于各类作业的原始数据,这类数据尚未经过深度处理,或仅进行了初步清洗。
工程规范积累:在数据处理与应用过程中逐渐形成的规范和标准,为未来的数据工程实践提供重要指引。
在广义的数据工程范畴内,数据处理与应用的领域更为广阔,具体涉及以下几个重要方面:
增量预训练基于已有的模型,通过引入全新数据开展增量训练,从而有效提升模型的泛化能力与整体性能。 特殊任务微调(SFT)针对特定任务的独特需求,对模型参数进行精细调整,优化模型在该特定任务上的表现。 检索增强生成(RAG)巧妙融合检索与生成功能,通过实时检索外部数据源,显著提高生成内容的准确性与相关性。 Prompt 工程精心设计与优化提示词,以此引导模型生成更贴合需求的优质输出。
2、人工在数据处理中的关键角色
尽管大模型展现出强大的自动化能力,但在数据处理这一关键环节,人工的作用依然无可替代。高质量的数据是模型取得成功的基石,而数据的获取与处理过程,离不开大量的人工投入与精细化操作。
未来,即便随着技术的持续进步,自动化工具日益完善,人工在数据质量控制与模型优化方面的重要性依旧不会减弱。唯有充分融合人工智慧与机器智能,方能在大模型研发领域实现更为显著的进步与突破。
二、数据工程与大模型的深度融合
1、大模型训练的数据工程要求
在大模型训练的复杂过程中,数据工程肩负着整合多种数据源的重任,其中包括结构化、非结构化以及向量数据等。同时,还需实现跨源数据聚合以及多层次的数据验证。这一过程涉及对从网络爬虫到数据库,乃至国内信创数据库等多样化数据源的统一管理与聚合。
随着实时湖仓技术的迅猛发展,数据工程平台致力于实现离线和实时的数据加工,以充分满足实时数据湖的需求。例如,Iceberg 等工具在非结构化数据处理方面表现卓越,为数据工程提供了有力支持。
数据工程平台在数据处理链条中,必须为算法精心准备高质量的数据。鉴于互联网数据逐渐难以满足模型训练的需求,合成数据的应用愈发广泛。在此背景下,高质量的数据对于确保模型效果的重要性不言而喻。因此,平台不仅需要实施严格的质量管控与数据影响分析,还需对数据血缘进行精准追踪,以此确保数据源的可靠性与模型结果的可解释性。
2、模型训练的闭环管理
在模型训练的编排过程中,数据工程平台需为预训练、微调、增强学习等阶段提供高效管理支持,从而顺利完成对模型的性能评估,构建起一个循环优化的闭环。当模型训练和测试圆满完成后,经过严格验证的数据和模型将被投入到实际应用中,有力支持各类业务需求的落地实施。这一数据工程与模型训练紧密结合的闭环流程,是确保大模型在实际应用中发挥最优效果的核心关键。
3、数据的重要性及关键问题思考
过去一年的大模型研究揭示了一个不容忽视的现象:许多人错误地认为,只需向大模型输入海量数据即可,却对数据的噪声和质量视而不见。回顾计算机视觉(CV)时代,每张图片都需经过人工精心标注,无论是分类、检测还是分割任务,标注数据的准确率必须达到 97% 以上。计算机视觉领域的先驱李飞飞,正是通过人工标注 ImageNet 300M 数据集,才使她的研究成果广受瞩目。这一历程充分印证了 “有多少智能就需要多少人工” 的深刻道理。
在大型语言模型(LLM)的训练中,数据同样扮演着举足轻重的角色。无论是预训练阶段还是监督微调阶段,有效的数据管理对于增强模型性能、提高训练效率均具有至关重要的意义。2023 年的实践经验表明,即便最为强大的模型,若缺乏领域知识的协同支持,依旧难以在生产环境中高效运行。
基于此,我们需要深入思考以下一系列关键问题:
基础模型能力评估:基础模型能否胜任特定任务?这需要我们对基础模型的能力进行全面评估,判断其是否能够满足任务的实际需求。若基础模型无法达标,则需进一步优化与调整。
数据需求确定:明确完成任务所需的数据类型与质量标准,包括领域特定的数据、可接受的噪声水平以及标注准确率等关键要素。
数据来源识别:精准识别可靠的数据来源,这些来源可以是公开数据集、合作伙伴提供的数据,或是通过自主采集获得的数据。
提升模型性能策略选择:根据任务的具体需求和数据的实际可用性,审慎决定采用增量训练(Incremental Training)、特殊任务微调(SFT)还是构建知识库的方式来提升模型性能。
数据集与知识库构建:精心制定数据集和知识库的构建策略,涵盖数据收集、预处理、标注、分割以及存储等各个关键步骤。推 理阶段数据管理:全面评估在推理阶段使用这些数据的可行性,并制定科学合理的数据管理策略,确保数据在使用过程中的一致性与安全性。
三、大模型研发中的数据工程
以数据为中心的 AI 理念
在大模型研发领域,存在以模型为中心和以数据为中心两种截然不同的方向。以模型为中心的方法侧重于不断优化模型结构,而相对忽视数据的重要性;而以数据为中心(Data - Driven)的理念已逐渐成为算法领域的共识。该理念的核心在于,在模型架构保持不变的前提下,通过持续提升数据质量来优化模型效果,着重关注训练数据的质量提升。
以数据为中心的 AI 主要涵盖训练数据开发、推理数据开发以及数据维护三个关键方面:
训练数据开发:涉及一系列复杂的流程,包括数据收集、数据源确定、高质量数据标注、数据预处理以及数据的缩减或增强等操作。例如,在进行领域微调数据处理时,若行业数据仅有几万条,往往需要将其增强至几十万条甚至几百万条,才能充分融入领域或行业数据,提升模型的针对性和准确性。 推理数据开发:主要聚焦于如何对先前的训练样本进行科学评估,从而更好地评估测试集外的数据,确保模型在实际应用中的泛化能力。 数据维护:数据相关工作应形成一个完整的闭环。在使用训练数据进行训练的过程中,一旦发现数据存在问题,能够迅速定位问题源于哪个数据集,并进行精准追踪与优化,确保数据的可靠性和稳定性。
大模型的数据工程旨在解决以下几个关键问题:明确所需数据的类型和特征;确定数据的来源渠道;规划数据的处理方式;建立数据的评估体系;以及实现数据的有效管理与版本迭代。解决好这些问题,便能搭建起一个相对完整的数据处理流程(pipeline)。
2、以数据为中心的大模型预训数据工程
上图展示了以数据为中心的的工程框架,包括之前提到的训练数据开发、推理数据开发、数据维护等。
以数据为中心的大模型预训练数据工程的工作流可以拆解为很多环节,包括源数据如何标记、清洗、特征缩减、基础操纵等;提示工程如何调整输入、评估等;包括数据的维护,数据可视化之后,可以真正知道数据都目前的情况,数据的价值评价指标,资源分配等。
需要针对不同的数据制定好的标注标准,包括文本标注、语音标注、图像标注等。
如何衡量标注数据集的质量是很重要的。现在有很多的算法,比如图像标注质量评估的MV 算法、文本质量评估的BLEU算法等,根据不同的语音文本以及视频,有不同的衡量算法,帮助大家衡量数据标注的质量。
四、大模型与知识图谱的融合发展
1、知识图谱的认知与定位
当前有一种观点认为,大模型出现后知识图谱的重要性显著下降,其定位也变得模糊。然而,知识图谱具有独特优势:
图结构优势:知识图谱以图的形式表示知识,能够完成 Graph Embedding、路径搜索等算法,这是大模型的相对短板。 组织优势:知识图谱通过 Schema 规范结构化数据表达,旨在解决业务垂域中知识的组织与管理问题。大模型虽能端到端生产知识,但缺乏体系,将知识图谱与大模型结合,可实现大模型生产数据、知识图谱组织数据的优势互补,同时知识图谱的垂域数据可检验大模型的事实性错误。
2、知识图谱助力大模型研发的阶段
训练前阶段:利用大模型构造清洗规则,用于特定语料的数据清洗与错误检测。同时,知识图谱可直接显式地将行业三元组等形式化拼接成口语化产出,如 “S + P + O”“S 的 P 是 O” 等,引入预训练语料,尤其垂域知识图谱可用于大模型训练。
训练中阶段:将知识图谱以 embedding 方式隐式注入模型训练,可参考 KnowBERT 实现。同时,构建以领域知识图谱为中心的下游评测任务,用于评估模型训练效果。
训练后阶段:通过引入涉及实体的上下文丰富结果,将知识图谱注入 prompt 增强可用性;对模型生成结果进行知识校验,减少事实性错误;通过 query 实体消歧和实体链接注入搜索实时结果,增强实时性;结合外部知识库进行生成干预,如 langchain 实现方式。
3、知识图谱在大模型训练各阶段的具体应用
训练前阶段:预训练时,用模板化生成事实性描述文本;微调阶段,依据模板并结合 self - instruct 思路(注重多样性)生成问题,如 Lawyer LLaMA 法律领域模型,结合知识图谱生成大量 SFT 数据。 训练中阶段:融合知识的预训练模型可通过特征融合、嵌入融合、数据结构统一、知识监督或基于检索等方式实现。核心方法有内嵌融合(注入 embedding,通过 Mask 词和实体或增加 KE Loss)和外挂融合(检索方式融合)。 训练后阶段
1)基于知识的生成结果干预:例如画老婆饼,某 AI 因缺乏相关描述画出老婆婆和饼,若获取准确描述则可改善效果。在问答场景中,结合知识图谱生成问题描述,可解决一些问题。在数学计算等方面,ChatGPT 回答可能不准确,外挂 WolframAlpha 等工具可提升回答准确性,可通过 LangChain 直接引入插件或先让 WolframAlpha 回答再追加到 ChatGPT 问题中,拆解子问题逐步处理可获较好结果。此外,融合外部搜索引擎可解决大模型时效性和结果不可信问题,如 NewBing 通过显示 “了解详细信息” 来源为结果增信,但需提高生成链接准确性。
2)外挂专业知识库:这是目前行业常用方式,主要流程为加载文件 - 读取文本 - 文本分割 - 文本向量化 - 问句向量化 - 在文本向量中匹配与问句向量最相似的 top k 个 - 将匹配文本作为上下文与问题一同添加到 prompt - 提交给 LLM 生成回答。目前难点在于获取好的文本向量化模型(如 M3E、SimCSE、Text2vec 等)以及合理组织读取文本(如表格数据用 Latex 表示,处理富文本和图片展示等)。
综上所述,大模型研发是一个涉及多方面技术融合的复杂过程。数据工程为大模型提供了坚实的数据基础,从数据的采集、处理到管理,每一个环节都至关重要。知识图谱与大模型的结合则为大模型赋予了更强的知识表示和推理能力,拓展了大模型的应用边界。同时,我们也要关注如预训练数据是否充足等问题,积极探索解决方案。随着技术的不断进步,相信大模型在各个领域将发挥更大的作用,为我们的生活和社会带来更多的便利和创新。
页:
[1]