Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法

AITNT-国内领先的一站式人工智能新闻资讯网站
# 热门搜索 #
AITNT-国内领先的一站式人工智能新闻资讯网站 搜索
Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法
6252点击    2024-12-16 09:43

Scaling Law不仅在放缓,而且不一定总是适用!


尤其在文本分类任务中,扩大训练集的数据量可能会带来更严重的数据冲突和数据冗余


要是类别界限不够清晰,数据冲突现象就更明显了。


而文本分类又在情感分析、识别用户意图等任务中极为重要,继而对AI Agent的性能也有很大影响。


最近,vivo AI Lab研究团队提出了一种数据质量提升(DQE)的方法,成功提升了LLM在文本分类任务中的准确性和效率。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


实验中,DQE方法以更少的数据获得更高的准确率,并且只用了近一半的数据量,就能有效提升训练集的训练效率


作者还对全量数据微调的模型和DQE选择的数据微调的模型在测试集上的结果进行了显著性分析。


结果发现DQE选择的数据在大多数测试集上都比全量数据表现出显著的性能提升


目前,此项成果已被自然语言处理顶会COLING 2025主会接收。


数据质量提升方法长啥样?


在自然语言处理中,文本分类是一项十分重要的任务,比如情感分析、意图识别等,尤其现在企业都在推出各自的AI Agent,其中最重要的环节之一,就是识别用户的意图。


不同于传统的BERT模型,基于自回归的大语言模型的输出往往是不可控的,而分类任务对输出的格式要求较高。


通过在提示词中加入few-shot可以有效地改善这一现象,但是基于提示词的方法带来的提升往往有限。指令微调可以有效地改善模型的性能。


在文本分类任务中,缺乏一种有效的手段来获取高质量的数据集。OpenAI提出了缩放定律(Scaling Law),认为大语言模型的最终性能主要取决于三个因素的缩放:计算能力、模型参数和训练数据量。


然而这一定律并不总是适用,尤其在文本分类任务中,扩大训练集的数据量会可能会带来更加严重的数据冲突现象和数据冗余问题。尤其类别的界限不够清晰的时候,数据冲突的现象更加明显。


下面是vivo AI Lab团队提出的数据质量提升(DQE)方法的具体方法设计。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


首先,作者对训练集进行了初步的数据清洗工作,包含处理具有缺失值的数据、query和标签重复的数据以及标签不一致数据(同一条query对应多个不同的标签)


然后,使用文本嵌入模型,将文本转换为语义向量。再通过贪婪采样的方法,随机初始化一条数据作为初始向量,然后每次选择距离向量中心最远的数据加入到新的集合中,以提升数据的多样性。


接着,更新这个集合的向量中心,不断的重复这个过程,直到收集了50%的数据作为sampled,剩下未被选中的50%的数据集作为unsampled,然后使用sampled数据集微调大语言模型预测unsampled。


通过结合向量检索的方式,将unsampled中预测结果错误的数据分为Uncovered、Difficult和Noisy三种类型。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


下面是三种类型的数据的识别原理:


Uncovered:主要指sampled中未覆盖的数据,如果预测错误的数据与最相似的数据具有相同的标签,并且最相似的数据位于unsampled中,则认为该数据相关的特征可能没有参与sampled模型的微调,从而导致unsampled中的该条预测结果错误。


Difficult:主要指sampled中难以学会的困难样本,如果预测错误的数据与最相似的数据具有相同的标签,并且最相似的数据位于sampled,则认为该数据相关的特征已经在sampled中参与过模型的微调,预测错误可能是因为这条数据很难学会。


Noisy:主要是标签不一致导致的噪声数据,如果预测错误的数据与最相似的数据具有不同的标签。则怀疑这两条数据是噪声数据。大多数文本分类任务的数据集都是共同手工标注或者模型标注获得,都可能存在一定的主观性,尤其在类别界限不清晰的时候,标注错误的现象无法避免。这种情况下,作者通过提示词,使用GPT-4o进一步辅助判断。


效果如何?


作者基于多机多卡的L40s服务器上通过swift框架进行了全参数微调,选择开源的Qwen2.5-7B-Instruct模型作为本次实验的基础模型。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


作者与PaperWithCode中收录的最好的结果以及全量数据微调的方法进行了对比,作者分别在MR、CR、IMDb、SST-2、SST-5、AG News数据集中进行了对比实验。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


从实验结果可以看出,DQE方法以更少的数据获得更高的准确率,并且只用了近乎一半的数据量,可以有效地提升训练集的训练效率。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


同时,作者页进一步对全量数据微调的模型和DQE选择的数据微调的模型在测试集上的结果进行了显著性分析。将预测结果正确的数据赋值为1,将预测结果错误的数据赋值为0,通过t检验来评估模型之间性能差异的统计显著性。


从表中可以发现DQE选择的数据在大多数测试集上都比全量数据表现出显著的性能提升


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


与传统的BERT模型不同的是,生成式的模型往往是不可控的,作者进一步分析了指令跟随结果。


结果表明,不管是全量数据微调还是DQE方法微调,都可以有效地提升大语言模型的指令跟随能力,按照预期的结果和格式输出。


对于分类任务来讲,当数据量足够大时,很难避免标签噪声现象。即便是被各大顶级学术期刊和会议广泛使用的数据集,也无法避免标签噪声现象。


作者分析了一部分通过实验找出的噪声数据,并且给出了开源数据集中的标签噪声的示例。


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法


值得注意的是,在数据采样过程中,本研究使用贪心算法将数据集划分为sampled和unsampled。此外,作者根据文本相似度将unsampled分类为uncovered、difficult和noisy数据。


接下来,分析sampled中的这三种类型:


由于该数据将用于最终的训练集,因此它不包含uncovered。


关于difficult,将来自unsampled中识别为difficult的样本会加入到最终的训练集,这uncovered中的difficult和sampled是成对存在的,从而部分减轻了采样数据中的difficult问题。


对于noisy数据,使用DQE可以在sampled和unsampled之间识别出大多数成对的噪声实例。


由于使用sampled贪婪采样策略,在sampled内遇到成对的相似噪声数据的概率会相对较低。从理论上解释了本方案的有效性。


论文地址:https://arxiv.org/abs/2412.06575


文章来自微信公众号“量子位”


Scaling Law不总是适用!尤其在文本分类任务中,vivo AI Lab提出数据质量提升解决方法

AITNT-国内领先的一站式人工智能新闻资讯网站
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
智能体

【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。

项目地址:https://github.com/Significant-Gravitas/AutoGPT


【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。

项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md

2
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

3
免费使用GPT-4o

【免费】ffa.chat是一个完全免费的GPT-4o镜像站点,无需魔法付费,即可无限制使用GPT-4o等多个海外模型产品。

在线使用:https://ffa.chat/

4
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner

5
prompt

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

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

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