推动人工智能民主化:首个高质量双语的开源大语言模型MAP-Neo重磅发布!

文摘   科技   2024-06-18 18:31   浙江  
          

GitHub链接:https://github.com/multimodal-art-projection/MAP-NEO

        

顺应人工智能发展需求,大语言模型(LLM)不断更新迭代,在许多自然语言处理(NLP)任务中显示出强大能力。与此同时,大语言模型的快速商业化使最先进的大语言模型均处于闭源状态,许多模型搭建的重要细节,如训练数据、模型架构、基础设施细节等都没有面向公众开放。对于 LLM 研究者而言,这些尚未披露的细节对模型研究和发展都是至关重要的,尽管已经有完全开源的大语言模型供研究者使用,但是这些开源模型的性能和商业大语言模型相比还有着很大的鸿沟,特别在中文语言处理和一些推理任务上的性能仍远远低于商用模型。


基于大语言模型研究缺少足够公开透明的先进大语言模型的现实困境,Multimodal Art Projection(M-A-P)团队推出了完全开源的大语言模型MAP-NeoMAP-Neo公开了经过清理的预训练数据集、数据清理细节、所有 Checkpoint 和评估代码。M-A-P 希望MAP-Neo能够增强和巩固开放研究社区,并激发新一轮的创新浪潮。
     

作为 M-A-P 团队的一员,整数智能全过程参与到了MAP-Neo的建构过程中。高质量的训练数据对优秀的模型性能表现而言至关重要。MAP-Neo的卓越性能,既源于规模化的训练数据,也归功于严谨的数据清洗和处理流程。同时,引入中文数据集建构双语大型语言模型的尝试,也为训练数据的清洗和筛选带来了新的挑战。在数据集开源的同时,M-A-P 团队还公开发布了 Matrix 数据集生产 Matrix 数据集的所有代码

           

1. MAP-Neo介绍

             

1.1. 模型简介

          

在人工智能大模型领域,科技企业巨头利用算法搭建起了一个数据垄断和操纵的数据殖民主义框架。数据殖民主义的概念认为,由美国牵头的科技巨头公司庞大的数据力量,通过大模型算法,操纵着用户的行为和判断,并持续对人的行为和踪迹进行跟踪和记录,并获取行业垄断地位和攫取高额汇报。基于这一现状,人工智能民主化的概念应运而生,提倡者认为,促进所有机构公平地获得人工智能技术,能够推动人工智能资源民主化,从而降低数据殖民主义的风险。在人工智能技术中,大语言模型处于主导地位,增加开源的大语言模型,并和闭源商用模型展开竞争,可以同时解决人工智能开放资源短缺和数据安全隐私的问题。


不仅如此,大多数标榜开源的大语言模型并未公开开发过程中的关键环节,如数据来源、数据预训练代码和数据处理 Pipeline 等重要环节都是不透明的,而这些正是建立大语言模型过程中成本最高的环节。现有的开源大语言模型远不能为研究者提供一个良好的使用和参考资源。


此外,现存的大多数大语言模型都是基于英语语料库从零开始训练搭建的产物,如何使非英语语言社区从开源模型中获益、在非英语地区推行数据与人工智能的民主化,是一条仍需探索的道路。


基于以上种种困境,为实现大语言模型训练过程透明化,Multimodal Art Projection(M-A-P)研发团队发布完全开源的大型语言模型MAP-NeoMAP-Neo包括最终和中间检查点、自训练标记器、预训练语料库以及高效、稳定的优化预训练代码库。MAP-Neo模型基于4.5T中英文词条从头开始训练生成。在推理、数学和编码等具有挑战性的大语言模型任务中,表现出了优于同等训练数据规模的模型,展现出了媲美专有模型的专业模型性能。

                 


MAP-Neo-7B模型性能
                      
MAP-Neo-7B完全开源,团队公开数据包括基本模型和一系列中间检查点,旨在为学术界和商业界更广泛、更多样的研究提供支持。

            

1.2. MAP-Neo-7B 模型表现

         

在性能方面,MAP-Neo-7B在广泛的基准测试中展示了卓越的能力,与同训练规模模型相比,MAP-Neo-7B的性能表现已经可以对齐甚至超过前沿的闭源商业化大语言模型。

               

MAP-Neo-7B与现行商用大语言模型在不同性能上的表现对比

                         

1.3. 全开源语言模型里程碑

            

MAP-Neo的问世对于大语言模型研究来说是一个里程碑,它标志着完全开源透明的大语言模型具备了可以和闭源商用大语言模型相媲美的先进能力与优秀性能。M-A-P 团队的贡献远不止构建了一个前所未有的基础模型与全行业研究者共享,更是一个全透明的从零开始构建大语言模型的全流程指导手册。M-A-P 团队欢迎需要中文大模型但是受到有限流通模型限制的企业使用或者参考MAP-Neo,共同助力更加具有活力和多元化的中国大语言模型企业社群,为社会各界,尤其是世界上进行大语言模型研究的非英语地区提供重要参考。

           

2. 模型优势

           

相比于过往的大语言模型,MAP-Neo在模型性能和模型透明性上做到了很好地平衡,作为首个开源透明的双语大语言模型,MAP-Neo打破了当下的开源大语言模型性能远远低于闭源商业化大语言模型的现状和困境,也为大语言模型搭建提供了全透明搭建 Pipeline 指引。

   

2.1. “彻底的”开源模型

     
相比于以往的商用闭源模型和开源模型,MAP-Neo的开源更加彻底,公开了从原始收集数据的来源、数据清洗到预训练代码库的所有关键流程。彻底的全过程开源可以大大降低未来部署和定制大语言模型的成本,尤其是中文大语言模型建构的成本。

      

M-A-P 团队公开发布并详细介绍了MAP-Neo的以下搭建环节与模型构成:

        

  • 数据整理与处理 团队发布了预训练语料库,即矩阵数据堆(Matrix Data Pile),以及用于监督微调和对齐训练的训练数据。团队进一步整理了中英文训练数据,以及数据清洗的代码和细节,包括一个稳定的 OCR 系统、DeepSeek-Math 中的数据召回机制、以往开源数据处理管道的集成以及基于 Spark2 的分布式数据处理支持等。

  • 模型训练架构 团队公开发布了建模架构的代码和细节。提供了标记化器、基本模型、指令调整模型和 RLHFed 模型的训练代码。此外,团队在模型搭建的过程中还解决了 Megatron-LM 框架3的一些问题,增强了其对更稳健、更高效的 LLM 分布式训练的支持。


  • 模型检查点 团队在 HuggingFace 上发布了最终模型,并提供了中间检查点。

  • 基础设施 团队在模型报告中详细介绍了稳定训练的基础设施。

  • 推理与评估 团队提供用于推理优化和全面评估的完整代码。

  • 分析与教训 团队本报告阐述了大量技术和秘诀,例如预训练不同阶段的优化技巧,并通过严格的分析和消融,为构建 LLM 的见解。

2.2. 规模化训练数据

      

一个结构完整的高质量语料库是训练高质量大语言模型的关键。由于数据集的数量和质量的差距,完全开源的大语言模型的开发进程仍远远落后于商用闭源大语言模型。为了解决在语言建模过程中对多元化、透明化数据集的迫切需求,M-A-P 团队引入了 Matrix,一个包含4.5T标记的双语训练前语料库。Matrix 将会成为现有已知的规模最大的全透明大语言模型的训练语料库。具体而言,Matrix 详细介绍了数据搜集和处理的六个流程细节,并包括了一个高性能的工具包。Matrix 的搭建结合了团队在不同实践场景下检索、过滤、进行高质量数据清洗的经验与逻辑思想设计而成。

        

在保证训练数据规模的同时,MAP-Neo-7B对训练数据的数量也进行了严格的把控,以保证模型训练的质量和效率。不仅如此,M-A-P 研发团队还全透明公开了数据处理 Pipeline

           

2.3. 中英双语语料库

      

面对高质量中文数据集开发程度低、高质量中文语料短缺的现状,基于中英文训练数据搭建MAP-Neo-7B对于中文数据集的填补完善发挥着巨大的价值。M-A-P 团队不仅丰富了高质量的中文数据集积累,更将如何通过数据过滤筛选获得高质量的中文训练数据的全过程与开源模型一起向公众开放,分享训练数据清洗经验,为之后中文数据集的扩充提供了有效的方法参考和遵循。

        

2.4. 高质量训练数据集建构

        

如何获得高质量数据,是保证训练模型性能的关键,通过采用高质量的数据,MAP-Neo在数学、代码和复杂推理方面的测试表现明显由于既往的开源低质量大语言模型(如 Amber 和 Pythia)团队公开了对包括英文数据和中文数据过滤清洗全流程 Pipeline ,分享了如何有效通过数据清洗获得高质量、满足高效率模型训练需求的中英文训练数据。

           

2.4.1. 英文数据清洗Pipeline

      

英文数据清洗Pipeline结构

                      

开放数据集再处理Pipeline

       

基于既往研究中发布的开源预训练语料库,M-A-P 团队设计了一个更加精细的管道,在现有数据的基础上进行再处理,生成 Matrix 数据混合的英语子集,进一步提高数据质量。团队公开了数据来源和数据过滤与去重的步骤。

       

英语子集数据来源及构成

英文子集数据过滤Pipeline及各环节筛选率

       

值得一提的是,通过使用再处理的更高质量的数据进行持续的预训练,现有的大语言模型的性能也能得到显著而快速的提升。

        

数据筛选
       

团队采用了启发式规则进行文本过滤,从开源数据集中过滤到质量较低的语料。启发式规则能够有效识别和删除低质量数据,防止低质量预训练语料库影响模型性能表现。由于团队采用了多种来源的复合数据,基于数据多元性,团队专门设计了清理方法,并为每种方法量身制定规则,以保持数据质量的一致性。

           
具体而言,团队通过 RedPajama-Data-v2 数据集为所有文本进行质量注释,并将启发式的过滤规则和质量注释相结合,将数据质量的评估细化。同时团队还会对数据集进行随机抽样,以确定不同规则对应的阈值。对于缺乏高质量注释的数据集,团队根据它们各自的特征为它们在 RedPajama-Data-v2 中定制相应的规则和阈值以达到质量对齐。过滤过程包括:
        
1
文档级别和句子级别过滤确保文本长度和字符意义一致
2删除重复文本(n元语法和句子)
3删除包含黑名单中词汇的文本进行敏感词汇筛查
                

数据去重

          
重复文本会导致模型性能下降,通过删除数据,可以显著降低发射记忆的速率,使模型训练更加高效,因此删除重复数据是语料库处理过程中的一个关键步骤。重复数据可以分为精确重复和近似重复。
           
对于精确重复的副本,团队对它们使用精确文档重复数据删除;对于近似重复数据,团队采用了 Minhash 文本查重法。针对文本复制的实例, 团队采用了段落重复数据删除和精确子字符串重复数据删除两种方式来尽可能删除所有的重复数据。

2.4.2. 中文数据清洗Pipeline


对于中文语料库,M-A-P 团队设计了一个从头开始抓取和处理网络数据的 Pipeline,以中文数据的形式呈现,对于中文语料库的建构而言,Neo 数据集和团队公开的 Pipeline 可以作为后续研究建构中文语料库的参考指南。团队将基于此 Pipeline 形成的语料库作为 Matrix 的中文子集,其中80.6%的数据来自中文网页抓取,其它则来自多个开源数据集。

       

中文子集数据来源及构成

中文子集数据过滤Pipeline及各环节筛选率

       

数据过滤
                    

基于中文数据的独特性,团队采用了不同于英文数据集的过滤规则。考虑到中文数据集中的 HTML 转换数据所占比例较大,团队将中文数据集过滤的重点放在消除和 HTML 相关的人工痕迹和纠正文本的不一致上。此外,鉴于中英文在语言构成上的巨大差异,团队对中文数据集中的文档进行了有针对性的抽样,并根据抽样内容重新评估和调整过滤规则的阈值和细节,确保数据过滤方法适合中文文本的独特语言特征。例如团队针对中文文本中的“字”和“词”改进了过滤规则,并相应地调整了标记的方法。

        

数据去重

           

中文数据的去重方法包括精确的重复数据删除、MinHash 重复数据删除(最小独立排列定位敏感散列方案)和类似行重复数据删除。鉴于在中文环境中难以进行 Spark 部署,团队构建了新的路径在中文环境中进行数据去重。对于精确重复数据删除,为了节省内存,团队采用了 Bloom 过滤器的方法,并将 Bloom 的假阳性率设置为0.001。由于在网页中抓取数据的过程中会在信号文档多次抓取相同内容,因此团队没有使用精确的子字符串重复数据删除,此外,在从 HTML 中提取主要文本的过程中,通常会丢失个别单词。这两种情况会导致对于“除了相互引用或者引用自统一文本,相同的内容很少在文档中有相同的表述”这一假设的违背。因此,如果进行精确的子字符串重复数据删除,会出现保留额外单词的情况,大大降低文本的可读性。基于这一矛盾,团队提出了 Similar Line 数据删除法。


Similar Line 数据删除法:解决上述相同内容在文本中重复出现,一种直接的方法是使用特定的分隔符将文本划分成行,然后比较行之间的相似性,若相似,则删除随后的行。M-A-P 团队使用编辑距离来判断两行是否相似。

         

2.4.3. 文档转换Pipeline

         

相比于网络爬虫数据,文档数据通常有更加规整的格式、主题集中、表达方式也更加一致。但是不同的文档有不同布局标准,或以质量不一的扫描图像的形式存在,使得通过文档转换建构数据集同样具有挑战性。为此,M-A-P 团队设计了一个专门的管道,以获取文档中的高质量数据文本。文档转化的 Pipeline 主要聚焦于两个核心问题:1. 分析布局信息,识别不同的布局元素;2. 识别这些布局组件之间的关系。

           

M-A-P 团队调查了现有所有的开源的文档转换的解决方案,综合分析不同处理 Pipeline 的优缺点,提出了一个解耦的框架,这一框架综合了现行模型的优势,如使用 PaddleOCR 增强语言支持,使用 PP-StructureV2 进行高效的布局解析。MAP-Neo的文档转换框架共由四个部分组成:布局检测、元素识别、排序和后处理。每个模块之间的解耦增强了文章的可解释性,同时团队还进一步简化了优化、增加和替换的流程。

           

       

布局检测 将文本分为多个部分,包括公式、文本、页眉和页脚等。布局检测的 Pipeline 采用了 PP-StructureV2 中的轻量级目标检测模型,并采用 FGD 算法进一步提升模型性能,优化特征提取,实现了更加准确的布局检测。

           

元素识别 针对不同元素,团队采用不同的模型进行识别。对于公式的识别,团队通过 Pix2Text 训练的 TrOCR 模型,这一模型能够识别嵌入在段落中和非常规公式中的公式,能够有效应对绝大多数公式识别场景;文本识别采用了 PP-OCRv4 模型,这一模型具有多计算设备兼容的优势,具有强大的识别能力;图形在识别过程中会以图像形式保存,并放入接下来的合并环节;表重构使用 SLANet 实现,以 HTML 格式表示;页眉、页脚和页码将作为无用数据丢弃,不会进入到下一环节的后处理和重建阶段。

               

排序 在文档转换过程中,正确处理不同模块之间的关系至关重要,获得高质量的转换数据需要正确处理复杂的转换场景,如多列或者跨页面的文本环境。在排序阶段,MAP-Neo使用 LayoutLMv3 模型机进行行列检测,并根据特定规则对不同区域排序,提高了任务的准确性,也显著优化了可读性。

           
后处理  OCR 提取的文本通常不能直接使用,需要额外的处理,后处理包括一下几种场景:跨行或者跨页面的碎片化句子的识别和重新连接、将通过连字符连接的英文单词合并为一个完整的单词、数学公式中缺少的元素和不正确的符号的补充和纠正等。

            

结合以上模型和处理 Pipeline,文档文本数据的质量和一致性可以得到显著提高,提取内容的可读性与可用性也会得到明显优化。MAP-Neo使用高效的AI推理部署工具 FastDeploy6 作为实现以上策略的代码库,充分利用多线程的优势,优化推理速度和计算成本。
            

2.4.4. 高质量的补充数据集

          

MAP-Neo还配备了一个高质量的补充数据集,这一数据集适用于不同范围场景,使得数据质量更加稳健。迭代管道的程序分为以下几个阶段:


种子数据集收集 在相关领域收集高质量的种子数据集,如数学、代码或者基于维基的内容。

        

领域定义和采样 将域定义为种子数据集中共享相同基础 URL 的数据条目,并从种子数据集中的每个域提取样本作为正面样本,增强格式的多样性,并相应地从普通抓取中获得等量的数据作为反面样本。


模型训练 采用 FastText 模型进行二院分类,判别数据和指定领域的相关性。对模型进行量化,从而在 有限的内容存量中提高运行效率,将数据规模减少到原来的约10%。

      

数据可信度评估 用 FastText 模型评估公共抓取的数据的可信度,确定是否为正向数据。保留从置信度最高到最低排序的数据,通过对数据子集进行抽样来简化置信度的排序过程,在数据排除和保留需求之间进行平衡,确定一个可行的阈值。

       

数据评估 通过 ChatGPT 3.5 评估保留的数据,并利用 URL 确定字段的特异性。这一阶段只在减少误报率,并保持必要的数据召回率。

           

数据召回和注释 重新访问率超过10%的数据被归纳为特殊领域,这一领域的子集会使用 ChatGPT 3.5 通过 URL 对该数据子集进行注释。

          

模型完善和迭代 将之前迭代中未经确认的良性数据整合到正面样本中,丰富 FastText 的模型训练基础,并在训练阶段启动新的迭代循环。

          

3. 开发团队:Multimodal Art Projection(M-A-P)


Multimodal Art Projection(M-A-P)是成立于2022年7月的开源研究社区,社区成员致力于研究人工智能生成内容(AIGC)主题,包括文本、音频和视觉模式,并进行大型语言模型训练、数据收集和有趣应用的开发。社区成员的研究领域专注于包括但不仅限于音乐的多模态艺术的机器学习。社区的目标是创造一个空间,让来自不同背景的研究人员能够合作并分享他们的专业知识,从而推进对 AIGC 的理解。

         

M-A-P 团队成员一致认为,考虑到开发一个优质的大语言模型需要消耗大量资源,开源和透明的大语言模型对于大语言模型民主化和进一步的学术研究都至关重要。尽管MAP-Neo相比于现行开源大语言模型,已具备优秀性能,在模型能力突出的维度,如数学、代码和中文知识的测试的表现已经足以达到甚至超过商用模型水准,但是总体性能仍然明显落后于同等规模的前沿商用闭源模型。M-A-P 也呼吁更多的专业团队加入到开源大语言模型的开发过程中,进一步推动大语言模型的民主化。

         

整数智能作为 M-A-P 团队中的一员,参与到了MAP-Neo模型的的建构过程中,在搭建高质量的训练数据集的过程中,基于丰富的数据处理经验,为数据集搭建提供专业性方案;整数智能的智能数据工程平台 MooreData Platform 和高度专业化、标准化的数据处理服务为训练数据的搭建提供力量。整数智能有幸能成为大语言模型民主化、中文大语言模型建设的一方力量,并将继续致力于打造更高质量的大语言模型,在后续模型开源的努力中持续发力,为数据处理和模型搭建提供专业化的支持与助力,推动大语言模型开源与前沿研究。

   



整数智能信息技术(杭州)有限责任公司,起源自浙江大学计算机创新技术研究院,致力于成为AI行业的数据领航员。整数智能也是中国人工智能产业发展联盟、ASAM协会、浙江省人工智能产业技术联盟成员,其提供的智能数据工程平台(MooreData Platform)与数据集构建服务(ACE Service),满足了智能驾驶、AIGC等数十个人工智能应用场景对于先进的智能标注工具以及高质量数据的需求。


      

目前公司已合作海内外顶级科技公司与科研机构客户1000余家,拥有知识产权数十项,通过ISO9001、ISO27001等国际认证,也多次参与人工智能领域的标准与白皮书撰写,也受到《CCTV财经频道》《新锐杭商》《浙江卫视》《苏州卫视》等多家新闻媒体报道。



                




点击「在看」

好内容大家分享

整数智能
整数智能作为AI行业的数据合伙人,我们提供专家级的数据标注工程平台与数据集解决方案(数据采集、数据清洗与数据标注)。
 最新文章