当前位置:   article > 正文

揭秘ChatGPT:如何构造与清洗_sft 数据清洗

sft 数据清洗

数据是基础是现在LLM从业人的共识,尤其是高质量的数据。根据ChatGPT不同阶段的训练过程,数据也分为预训练数据(GPT)和指定微调数据(SFT,RLHF),前者用自回归的方式在尽可能多的数据上以自监督的方式进行上下文语境学习得到基础的大语言模型,后者则是通过多样且高质量的Instruction样本(三元组<指令,输入,输出>)来激发出大语言模型的能力,对齐下游任务或用户的输入。区别于两个阶段的目标,其涉及的数据需求,数据获取清洗等也不相同。

一、预训练数据

主要有数据获取、数据清洗、数据配比三部分工作。

1、数据获取

通常分开源、自建、爬取三种。在开源中常见的有wikipedia,书籍,CommonCrawl,代码,对话等类型。下图列举了LLama使用的数据分布。

在这里插入图片描述

其中wikipedia由于质量较高基本上会被每个LLM使用。书籍则是为较长的上下文学习提供语料,现在分学科的书籍电子化和抽取是各家重点搞的数据。代码数据则能加强模型的逻辑推理能力,因为其实现通常是分步骤有逻辑的。**尽可能整理自有数据和爬取外部数据是LLM项目讨论中最常见的话题。**在中文领域中,常见的数据可分为几个档次,A档:知乎,小红书,头部GZH/头条文章,百科,经验,专业新闻网站,政务网站,行业垂类网站,比如起点,晋江,传统图书电子化;B档: 英文数据集翻译成中文,主要得益于原始的英文质量高,实践中会有一些较严重的翻译问题(语句不通顺,专业实体,不需要翻译的英文等);C档:知道,头条,抖音快手,自媒体新闻,微博,社区等UGC数据,这里有比较多的洗稿问题,需要从中清洗出有价值的数据。也有的工作在解析视频的字幕和语音数据,尤其是影视,电视节目相关的视频。

前面是偏通用的数据收集方法,结合任务树去针对性的补充相应数据也是非常关键的。任务树是指希望模型在哪些任务上有相应的能力,这些任务可归纳成类似树的层次结构。过了数据收集冷启动阶段后,根据已有样本训练出个模型版本,根据模型在不同任务上的评测表现,对效果较差的任务针对性的去补充相应的样本,这种方式对下文中的instruction样本也是适用的,哪里缺少补哪里,哪里不好改哪里。

2、数据清洗

可分为通用清洗方式和case驱动的清洗方式。通用清洗分质量、重复、安全三种维度,其中质量比较好理解,主要是去除一些低质量的文本,比如语句不顺序,包含奇怪的字符等等,这里可能借助些统计规则,也可能针对某些维度用传统的方式去构建有监督的分类模型。去重分为句子内,doc内,语料内三种粒度,其目的是为了清洗掉不合理的重复,因为互联网文本存在非常严重的洗稿搬运问题,避免在解码时产生重复的输出。**也有的工作认为大模型对重复是非常敏感的,要尽可能的进行去重,去重是重中之重。**就像人学习一样的,很多知识也只过一遍,比较难的才需要过多遍,过多的重复样本反而可能影响大模型在学习难样本上的表现。安全则是为了去除掉一些话题敏感内容,不健康内容等,也有的称为NSFW Filter(Not Safe For World)。

另一种清洗方式是case驱动的,根据评测的bad case或者老板们反馈的bad case,结合训练数据检索debug系统来定位是否训练样本存在类似的样本,同时这些样本也有类似的问题。一个badcase往往可能就代表一类问题或者一个流程上的bug,通过这个case举一反三,找到类似的case,可以实现某一类问题对应数据的清洗。这里全面有效的评测对数据的是至关重要的。相对来说,在大模型的早期偏一些通用的清洗,在中后期case驱动的清洗则更为关键。

3、数据配比

预训练的过程是比较耗资源的且训练过程往往是不可逆的,实验代价比较大,枚举比较完备的消融实验更是不太可能。同时单单数据维度就有很多种变量,尤其是数据配比,有中英文配比,不同来源的数据配比,不同任务的数据配比,不同质量的数据配比(被过滤的低质量仍可能有比较多的误过滤的好样本)。这里常见的方式则是在小LLM上进行实验得出合适的配比,然后将结论迁移到大LLM上。

二、指定微调数据

相比于上面的预训练阶段,指令微调阶段更强调样本的质量和多样性,两者缺一不可。多样性的不足会出现直接用预训练的模型有这个能力,反而指令微调后的模型没有了这个能力。质量的保证也是大家投入度比较高的任务,甚至不惜全部走人工都审核一遍的方式。国内自研更多是收集开源的instruction数据,翻译英文instruction数据,爬取ChatGPT,用常见的下游任务数据集抽样用来转成instruction样式补充,来进行快速的冷启动。其次结合任务树和case驱动,以主动学习的方式来人工去标注样本,在标注过程中,样本选取,标注标准和验收相比于传统任务则会更复杂,都是需要反复斟酌的。

有的工作发现利用少量的instruction样本进行tuning可快速提升模型在某些任务上的效果,实际坐下来靠少量的instruction样本是绝对不行的。如果是奔着做个通用的大模型,预训练和指定微调是缺一不可的,可能预训练更重要,因为有种说法是指定微调的作用只是将大模型的能力给激发出来,而大模型的能力则本身在预训练阶段就已经存在的。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/731610
推荐阅读
相关标签
  

闽ICP备14008679号