大语言模型评估数据集综述
论文题目: A comprehensive Survey of Datasets for Large language model evaluation
Github: https://github.com/lyt719/LLM-evaluation-datasets
摘要
自然语言处理是人工智能的一个重要分支。在过去的几年里,我们见证了大语言模型的显著进步,然而,如何对其效果进行全面的评估已成为一个亟待解决的问题。数据集可以为评估和比较它们的表现提供帮助,并且可以测试出模型的弱点。为了指导后续的大模型研究工作并促进该领域的技术进步,本文收集了147个流行的评估数据集,并提出了一种新的分类方法,根据数据集可评测的能力将它们分为六类。此外,我们还归纳了几个常见的评估指标和使用场景。我们将数据集列表和主要特征(介绍、示例、指标、链接等)汇编成一份文档,该文档始终开源并持续维护更新,网址为:https://github.com/lyt719/LLM-evaluation-datasets。
1.介绍
近年来,自然语言处理领域(NLP)经历了巨大的革命。2018年,谷歌发布了BERT,这是第一个同时利用模型预训练和微调技术的通用模型,具有出色的跨多任务的性能。同年,GPT-1发布。随后,BERT的各种变体和GPT家族诞生。2020年,GPT-3由openAI发布,具有1750亿个参数。革命性的变化深刻影响了学术研究和各种工业应用。语言模型从小体积朝着数十亿参数量发展,同时在庞大的数据语料库上训练,这也标记了大语言模型(LLM)的形成过程。大语言模型是未来发展方向,其中ChatGPT的诞生在此领域引起了广泛的兴趣。它展示了其与人类对话互动的超强能力,彻底改变了开发和研究人工智能算法的范式。
大模型在技术上发展迅速,在模型和算法上不断创新和突破。各种大模型逐渐出现,如何评估他们的能力成为一个重要的研究课题。人工智能(AI)技术依赖于高质量的标记数据,公共领域新发布的数据集即成为直观展示大模型能力的有效方法。
在本文中,我们介绍了迄今为止对评估数据集进行的最广泛的总结。我们收集了大量的数据集资源。然后,我们根据他们的介绍和格式对他们进行总结归纳,并在GitHub上开源。我们比较了各个数据集的特征,并提出了一种基于评估维度的新分类方法。接下来,我们将进一步讨论在每个维度下可以评估的具体能力以及对应的评估指标。基于调查,我们还讨论了数据集层面的未来发展和挑战。我们希望这项研究能为大模型从业者提供宝贵的指导和帮助。
总之,我们的贡献包括:(1)大语言模型评估数据集的第一次全面总结。(2)根据数据集的可评估能力对其进行分类,并按顺序进行类别介绍。(3)为了方便所有研究人员的使用,我们在GitHub上提供了一份开放数据集说明手册,包括基本介绍、示例、评估指标和链接。(4)通过我们的文档,研究人员可以轻松获取每个数据集的不同特征,并找到最适合他们研究目标的数据集。
2.相关工作
尽管目前还没有专门围绕数据集的概述,但一些现有的大模型相关综述确实涉及对大模型能力评估的看法。Percy Liang等人提出了语言模型的整体评估(HELM),以提高大模型的透明度。他们专注于七个目标场景,如知识和推理。还采用了多指标方法,包括准确性和稳健性等七个指标。Yupeng Chang等人专注于评估什么、在哪里评估以及如何评估这三个关键维度。他们介绍了评估任务的视角、一些常见的评估方法和基准。最后,总结了LLM评估的挑战。Yang Liu等人指出了目前缺乏明确的指标来评估大模型的产出是否符合社会规范、价值观和法规。他们将大模型的可信度分为七类,以供进一步调查:可靠性、安全性、公平性、抗滥用性、解释能力和推理能力、遵守社会规范和稳健性。Yu等人针对156个数据集量化了不同语言之间的资源差距,并讨论了收集低资源语言的方法。
3.数据集概述
通过全方位的收集,本文统计了147个大模型评测数据集。按照数据集的发布年份绘制了评估数据集多年来的发展趋势如图1所示。可以看出,数据集的数量在2018年开始激增,在接下来的四年里,大模型的进步使大量评估数据集持续被发布。
目前,还没有一个权威的系统或分类方法对评估数据集进行严格的分类,我们提出根据每个数据集可以评估的大模型能力维度进行分类。类别名称和相应规模的概览如图2所示。在本文收集的数据集中,有大部分数据集用于测试推理能力,而文本生成,基础任务和言语理解数量较少但相对均衡,可靠性和代码生成任务上缺口较大。我们的分类方法已经尽可能地实现区分数据集,但此标准下,不同类别间的数据集仍会存在交叉融合现象。
各分类下的数据集名称和标志性样例如表1所示。我们把传统自然语言理解任务称为基础任务,包括句子关系,文本分类,命名实体识别,语言建模和语法评估,通常小模型即可取得不错的成绩。得益于训练语料的数量,质量和多样性,大模型相比于小模型,还具备更深的知识库,更好的上下文理解能力以及自然的文本生成能力。通过大规模预训练,大模型能够学习到大量的语法结构和规则,同时也会学习到一些存在偏见或攻击性语言。为了能够评价大语言模型的专有能力,我们将除基础能力外的数据集划分为推理能力,文本生成,代码生成,言语理解和可靠性五大类。其中,推理能力不仅考察大模型计算数学公式的能力,还有调用知识储备以及根据文本间的逻辑推理结论的能力,此类数据集通常只需要大模型输出或选择正确答案。文本生成要求大模型创建通顺的语句,包括流畅对话,翻译语句和生成摘要等。代码生成检测大模型能否理解题目并生成正确代码。在言语理解中,不需要大模型进行推理过程,而是充分理解上下文后,实现填补空缺词,根据问题在原文中寻找答案或理解具体词的含义。可靠性用于评估大模型的鲁棒性和毒性等。
在实际应用当中,一般会对基座大语言模型以及SFT之后的模型分别进行评测。对基座大模型的评测更加注重于对文本内容的生成以及补充能力,对SFT之后的模型评测会聚焦在对话能力以及指令理解程度当中,同时要关注模型的安全性以及偏见性。尽管侧重点不同,但评测数据集基本类似。在数据集整理以及分类过程当中,我们没有区分基座和微调模型的评估数据集。接下来,本文依次对各类别进行介绍。有关完整的数据集信息请参阅GitHub URL(https://github.com/lyt719/LLM-evaluation-datasets)。
3.1基础任务
(a)句子关系
句子关系包括相似度,蕴含,中性,矛盾等。此类任务中,输入两个句子,由模型判断两个句子是否表达相同含义,或是否存在蕴含关系。此类数据集均为典型的分类任务。
(b)文本分类
文本分类又包括情感分类和主题分类。情感分析在社交媒体、舆情监测等领域有着广泛的应用。例如SST-2数据集针对电影的英文评论,判断其情感是消极或积极。确定文章的主题类别称为主题分类。例如在AgNews中,分类标签包括世界、体育、商业、科学和技术。
(d)命名实体识别
此任务是指识别文本中具有特定意义的实体,是NLP中一项非常基础的任务。以OntoNote4NER为例,给出单词令牌和对应的标签,其中不同的数字代表不同实体类型。
(d)语言建模
基于上下文预测下一个单词称为语言建模,即基于单词概率评估大模型的表征能力。困惑度通常用于评估词向量模型。
(e)语法评估
此类任务本质上是文本二分类任务,通过模型判断一句话是否符合正确语法。在BLiMP和SLING数据集中,提供了含有错误语法现象的句子和正确句子组成的语句对,此时也可用困惑度指标进行评估。
3.2 推理能力
(a)数学,逻辑推理
此类数据集包括大量的数学和科学推理问题,从小学到本科生水平及奥林匹克数学问题。除了计算或选择正确答案外,这些任务还要求LLM完全理解数学单词。在另一种形式中,需要模型输出问题的推理过程,例如NaturalProofs数据集给出定理陈述并需要输出证明过程。
(b)常识,知识推理
除了数学问题,大模型还必须了解人文、社科,科学知识,事实验证。例如,MMLU涵盖了初等数学、美国历史、计算机科学、法律等问题,难度覆盖高中到专家水平。SIQA用于评估对日常事件和情况的社会影响进行推理的能力。
(c)文本推理
相比于上述两类推理任务,在文本理解推理数据集中,除了问题内容,还包含一段文字或对话原文,大模型理解输入信息并选择正确答案。因此,需要借助大模型的知识储备而不在输入中提供任何提示的数据集,可称为闭卷问答,而文本推理则可称为开卷问答。StoryCloze数据集被广泛使用,它提供故事情节及结尾选项,由模型充分理解故事后选择最佳结局。C3是一个包含对话和长文本语料库的中文阅读推理数据集,用于推理可以从文本中获得的潜在信息。
3.3 文本生成
(a)对话应答质量
此类任务需要和大模型之间进行对话,从而考察大模型应答文本的准确性和真实性。例如,ARC-DA是知识性问答数据,包括问题和参考答案,可以通过文本比对判断大模型的输出是否正确且全面。WoW数据集的数据来自维基百科,包含了各种主题,通过多轮对话数据来评估回答的质量。TruthfulQA用于幻觉检测,不希望模型输出不真实或无信息的答案。
(b)翻译
翻译任务需要模型输出翻译后的文本,此类任务下的数据集均包含原句和翻译后的参考答案。其中,语料库由多个域下的书面语言(如Flores-101)和非正式对话文本(如DiaBLa)组成。
(c)摘要生成
大模型理解文档内容并总结摘要的任务称为摘要生成。此类数据集的语料来源广泛,例如新闻文章,语言学家总结的日程生活对话,政府报告等,各段文本对应的摘要为文章标题或由专家手动标注。此外,WikiLingua数据集可用来评估18种语言下的摘要生成能力。
(d)表格理解
此分类下仅有一个数据集ToTTo,将表格用自然语言描述作为输入,包括高亮显示的单元格,表格位置和对应的表元数据。它要求模型给出对表格一句话的描述,与ToTTo中的参考描述做对比。此数据集的主题涵盖体育、国家、表演艺术、交通和娱乐等。
(e)约束文本生成
约束文本生成是指给定三元组或一些实体名称,由模型将其组合生成一个连贯的句子来描述日常场景。例如输入[ “ski”, “mountain”, “skier” ],参考输出为"Skier skis down the mountain"。
3.4 代码生成
语言大模型在发展的过程中,逐渐具备了代码能力。在代码生成任务中,输入给定的函数功能,由模型编写代码,最后测试通过样例数目来评估代码的优劣。HumanEval是由OpenAI开发的广泛用于代码生成的基准测试数据集。它涵盖了从简单的字符串操作到复杂的算法设计的多种编程任务。每个任务都包括一个函数签名、注释、主体和几个测试样例。ODEX是一个开源的多语言代码数据集,语言描述包括英语,西班牙语,日语和俄语。而DS-1000则专注于数据科学领域的代码,包括sklearn,pytorch,pandas等开源框架的使用样例。
3.5 言语理解
(a)完形填空
在完形填空任务中,要求模型根据叙事段落,上下文语义关系,为问题中缺失的词选择合适的答案,此类型数据集为选择题形式。
(b)阅读理解
阅读理解任务需要模型通读文章内容后做出相应的题目,不同于文本推理的是,在理解文本后并不需要进行推理,而是直接在文本中选择正确答案。此类数据集包括三类编排形式,分别为要求模型预测答案在文本中的起始与结束位置坐标,或直接筛选文本中的文字进行作答,或按照题目给的选项做选择题。
(c)词义消歧
确定一个多义词在特定上下文中的确切含义是一项常见的任务,需要大模型在正确理解上下文后才能给出回答,是词级别的言语理解。Wic是典型的词义消歧数据集,需要模型判断指定词语在两句话中含义是否相同。WNLI和WSC考察模型能否正确识别文本中代词所指代的名词。
3.6可靠性
(a)鲁棒性
鲁棒性考察模型能否应对输入中的扰动。TextFlint在一些现有数据集上实施多种扰动变换过程,例如实体替换,修改时态等。在评估过程中,模型根据扰动前后的数据分别生成结果,指标变化程度越小则模型的鲁棒性越强。
(b)偏见与毒性
此类评估数据集考验模型对性取向,种族歧视,宗教,社会偏见等的鉴定能力。CrowS-Pairs给出偏见和非偏见组成的句子对,由模型对这些句子分类,或通过计算困惑度来判断模型更倾向于认可有无偏见的句子。Civil Comments和Wikipedia Toxicity从新闻评论或社区论坛中搜集语料,并提供对应的偏见标签,由模型进行预测。BBQ提出含偏见的问题与选项,由模型进行选择。
(c)安全性
安全性评测用于评价模型是否具有攻击性,涵盖仇恨言论、犯罪违法、隐私、伦理道德等维度。例如,Safety-Prompts是由清华大学开发的一套系统的大模型中文安全评测框架,给出指令并对每个指令生成一条安全回复,由模型对回复的安全性进行评估。
4.评价指标
下面我们针对六类指标进行简要介绍,并结合上述数据集描述其应用场景。
4.1 accuracy
Accuracy是指预测正确的结果占总样本的百分比。precision和recall是分类问题中更细粒度的指标,可以有效观察各类别和多分类任务下的预测效果。以某一个特定类别为基准,precision表示在预测为该类的样本中被预测正确的个数,recall表示原本为此类别的样本中,有多少被正确预测。此类指标用于可以直接将预测值和正确答案进行匹配的任务中,通常为选择题或输出为列表形式的题目。
4.2 BLEU
将参考文本记为参考,模型生成记为候选。候选中出现在参考中的词语个数,和候选的总词语个数相除得到BLEU。后出现BLEU n-gram变体,n-gram指的是连续的单词个数,通常取1 至4。BLEU-1衡量单词级别的准确性,更高阶的BLEU则可以衡量句子的流畅性。该指标侧重精确率,常用在文本生成中的翻译任务中。
4.3 ROUGE
ROUGE指标也用于文本比对,与BLEU不同的是,ROUGE更关注召回率,即用candidate中出现在reference中的词语个数,和reference中总词语个数相除计算得到。ROUGE的变体包括ROUGE-L,ROUGE-W,ROUGE-S等,常用在除翻译外的其他文本生成任务中。
4.4 Pass@k
Pass@k是代码生成中的核心指标,原始的计算方法为模型在生成k个回答中正确答案的概率。其中,通过了全部测试用例的代码称为正确答案。在实际的应用中,为降低方差,也可使用改进版的无偏估计pass@k,常用k值包括1,10,100等。
4.5 PPL
困惑度用来度量一个概率分布或概率模型预测样本的好坏程度,由交叉熵公式进一步推导得到。当模型对某句话给出较低困惑度时,代表认可该句话。PPL常用于CrowS-Pairs数据集或语言建模中。其计算过程不需要标签,当有参考答案时,用ROUGE或BLEU更好。
4.6人类
人类评估是一个主观性较强的方法,当任务不具备严格的标准答案时都可以使用,包括文本生成,对话应答等。公式化的评估指标有时并不能完整准确的反应文本生成的效果,甚至和人类评估结果产生巨大差异。人类评估具体过程为召集多名专家共同为一个答案进行评价,再通过某种方法计算得到综合得分。
5.总结与讨论
本文提供了一个语言大模型评估数据集综述,将数据集按照评估能力层面分为六大类,并对六种主要评估指标进行概述。希望通过本论文的总结,帮助研究人员有效选择数据集和评价指标,对大语言模型进行更加全面的评估,从而进一步推动模型能力迭代以及工程落地。
尽管近年来已有大量的评测数据集发布,但探索空间仍然很大,在这里我们将集中讨论几点突出方向。(1)英文数据集偏多,中文等其他低资源语料偏少,且对应任务不全面。(2)已有数据集中,数据来源和内容可能存在重复。(3)不同类型的数据集数量明显不平衡,有些任务需求大但公用数据集数量少。且随着大模型能力不断提高,有更多其他领域的高质量评估数据集期待被提出。(4)评测数据资源丰富,使用方法和领域各不相同,这使得各大模型的评价报告不再具有严格的可比性。能否建立更通用且权威的综合评测数据库,对明确语言大模型的发展目标至关重要。(5)在更高的层次上,统一评估指标进行标准化测量是必要的,便于精准比较各大模型的性能。(6)部分数据集可能作为预训练和微调过程中的语料,在实际大模型评估过程中应考虑此事实带来的影响。
Citation
@article{datasets,
title={A comprehensive Survey of Datasets for Large language model evaluation},
author={Yuting Lu and },
journal={},
year={2023}
}