大语言模型评测:我们知道什么时候该相信模型吗?

在机器学习领域,大模型的概念越来越受到关注。它们可以用于语言生成、图像识别、自然语言处理等众多应用中。然而,大模型的训练和评测也变得越来越复杂和昂贵。
首先,我们需要足够的计算资源。大模型需要更多的计算资源来进行训练。我们需要足够的硬件和软件资源来支持这些计算需求。
其次,我们需要更好的算法和模型架构。大模型的训练需要更高效的算法和更好的模型架构。我们需要尽可能地减少训练时间和计算成本,同时保持模型的准确性。
最后,我们需要更好的评测方法。大模型的评测需要更多的数据和更复杂的指标。我们需要设计更好的实验和评测方法,以确保我们能够准确地评估模型的性能。
总之,大模型评测是一个复杂而重要的问题。我们需要不断探索新的算法、模型和评测方法,以确保我们能够跟上这个快速发展的领域。我们需要准备好迎接这个挑战,以便更好地应对未来的机器学习需求。— Notion AI

Openai一声号令,十八路诸侯并起。ChatGPT的横空出世后,人们发现并接受了大语言模型(LLM)给人们工作和生活带来的便利以及其背后深不见底的想象空间。不论是商业公司还是开源团体,大家都卯足了劲想当第二个openai。在海外竞争方面,谷歌一键三连,发布了Bard大语言模型对话助手、PaLAM大语言模型和对应的云服务模型。Meta发布了LLAMA大羊驼模型。随着模型的被开源,Meta带起了开源界的驼类模型命名风潮。在国产替代方面,老牌NLP大厂百度首当其冲,发布了文心一言大模型。学界也不甘示弱,清华大学和复旦大学的研究团队也分别拿出了ChatGLM模型和MOSS模型,证明国内学界在大模型优化上仍可以一战。从ChatGPT一枝独秀发展到那么多模型同场竞技,如何比较众多研究团队的科研成果便成了一个重要的议题。

学界一直非常重视如何有效地评价自己和同行的研究成果。在机器学习研究刚开始的上世纪八十年代,研究者发明了训练/测试集的评估方法:在人工标注的训练集上训练出一个能够预测训练集结果的机器学习模型后,一个设计上做到数据内容和训练集无关的测试集的上进行预测并计算预测有效程度。如果用人类考试做类比的话,这种评价方式和一部分人考科目一的实际行为有些类似:前一天晚上开始预习考试题库,希望第二天早上能够通过记下来的题库内容泛化出该选择的答案。图灵奖得主杨立昆赖以成名的卷积神经网络便是在一个叫MNIST的手写数字识别数据集上做的评测。在本世纪的早期,研究者们也会举办一些评测活动以供研究者们竞争对同一个问题的解决能力。比如在文本处理领域,SIGHAN比赛见证了本世纪初的中文文本处理的突飞猛进,中文分词常用的数据集Bakeoff2005便是在SIGHAN上发布的。在图像处理上,李飞飞于2003年发布Caltech-101数据物体识别数据集,后续又发布了 Caltech-256,和划时代的ImageNet。在李飞飞构建了世界上第一个大数据集——因为真的很大—ImageNet及其相关的评测方案之后—模型评价榜单便成为了最近十年来的主流做法。榜单的举办者会在一个网站上公开自己的训练数据集和测试数据集,研究者使用训练数据集进行训练并得到测试结果之后,将自己的测试结果上传至网站,网站会通过测试算法自动评估出研究者上传结果的分数,以及该次提交在全部参与该榜单的研究队伍中的名次。一部分榜单也支持研究者使用训练数据集外的数据,这些数据互联网中爬取到的开放数据或者是一些研究者自己标注的数据,也包括一些大厂内部的版权数据。图像领域ImageNet最为出名。在文本处理学界也有类似的榜单,比较著名的有GLUE(通用语言理解评估)和MMLU(大型多任务语言理解)。著名的机器学习交流平台Kaggle也是著名的擂台提供方,经常举办活动以供需要新问题的研究者和需要探索解决方案的工业与学术界互通有无。

在ChatGPT之前的文本处理模型评测,依照评价的目标能力的不同,模型输出结果和模型测试的方法不尽相同。其中常见的任务类型和评价方式有如下几种:

  • 情感分析为代表的多标签分类,输出结果是一个标签,比如在情感分析中就是【正向】、【负向】或者【中立】中的一个。研究者会根据标签的匹配程度计算模型在测试集上的准确率和召回率;

  • 实体识别为代表序列标注模型,输出是和输入的句子等长的标签。除了准确率和召回率之外,研究者还会研究整句的错误率;

  • 机器翻译为代表的序列输出模型,输出是一系列自然语言文本,通常包含一个或者多个句子。句子的评估并不想前两者那么简单。不难想到,在一个机器翻译或者文本摘要任务中,一个和正确答案不一致的输出不代表模型的输出了一个错误的结果。研究者们发明了一些诸如BLEU(双语评估研究,同时也是法语中的“蓝色”)和ROUGE(面向召回的摘要评估研究,同时也是法语中的“红色”)等自动评测方式,但还是经常需要依赖人类的直观评估和比较评估。

ChatGPT出现打破了这样的分类方式。在使用ChatGPT时,用户将自然语言文本表述自己的问题输入到ChatGPT模型之中,ChatGPT通过自然语言回答结果。这种变更是其之前的大模型的提示语(prompt)范式的一个延申。一个传统的情感分析模型处理一句句子——举个例子,“我爱打篮球”——的时候,模型会接受一整个句子作为输入,随后模型的输出会是一个标志着“正向”的节点获得了比较高的分数。而在支持提示语任务的大语言模型里,这句句子会放到一个提示语当中,组成一个请求“请情感分析这句话:我爱打篮球【结束】”,模型会在请求后输出自己的内容,比如这里会补充上“正向【结束】”。我们提取出这个“正向”的结果和正确答案进行比对。ChatGPT的更进一步表现在于他把一切都放入了自然语言包括之中,比如对于同样的请求,ChatGPT会回复“这句话表达了积极的情感,即’喜爱‘或’热爱‘。”。而这增加了自动评估的难度,表达正向的词语有那么多,谁又能猜到ChatGPT会用什么词语来形容呢。不过稍微修改一下prompt,ChatGPT也能部分领会用户的意图。当用户提出“请情感分析这句话并只用“正向”“负向”“中立”来回答:我爱打篮球”时,ChatGPT会回复“这句话是一个积极的陈述,表达了作者对打篮球的喜爱之情,因此可以判定为“正向””。

在Chatgpt众多的回答能力中,情感分析的的答复是一个比较简单的例子。在更多的Chatgpt的回答里,起头便是一句“大体上来说”,末了一句“综上所述”。即使核心回答只需要数个单词,Chatgpt也可以轻松帮征博引娓娓道来,一篇回答达到两三百字。除此之外,用户针对问答提出一些质疑,Chatgpt便会便立正挨打“不好意思您说的是对的”,就算用户说二加二等于五,最初的Chatgpt也只是在微弱的抵抗之后接受了用户的错误观点。这种方式虽然极大地方便了用户和模型之间的对话交互。但是给模型评测增加了新的难点。

Chatgpt日益扩张的的能力范围不断带来新的评测问题。作为第一个为世人所知的通用大语言模型。Chatgpt展现出的能力极大的超出了非研究者和研究者的想象。传统的汇总榜单不到十个,就算是各种出现过的任务全部加起来不过数十个。但是Chatgpt已经展现出的能力可能已经超过了一千种,考虑到还有不同文本特点和行业需求,研究者需要针对大模型评测的具体场景数以万计。

那么多新出现的应用场景也不是所有场景能够像之前出现的场景一样有系统的评估历史。广大用户特别喜欢的功能包括了生成一首诗歌和生成一篇短文。而这的进一步增加了研究者评价chatgpt的难度。俗话说“文无第一武无第二”,如果说之前还算有正确答案的题目上打榜评分是武行,那么现在的大语言模型的在更多的任务上展现出的能力则是一个纯粹的笔头功夫。研究者也一直在努力量化评测这些难以定量的能力,比如澜舟科技CEO周明在其2006年使用机器翻译技术生成对联的论文中沿用了一些来自于机器翻译的评测方法。还有一些研究者试图寻找众包标注者评估,将生成文本分为流畅性严谨性优美性合理性等指标,让众包标注者根据自己的判断给出相关打分。这些方法在过去的相关算法能力没有那么强,人和机器的生成内容区分非常明显的时代固然有其意义。当下chatgpt生成结果已经可以部分以假乱真的当作是人类作品,很可能只有领域专家的评估能够区分人类和和模型之间、模型和模型之间的输出质量。

即使是有正确答案的问题,给ChatGPT打分的标注者的用户也经常会被模型的输出结果误导。Chatgpt经常会自信满满地给出长篇大论,但是里面的关键细节含有一些错误,这些错误又会导致整个答案是错误的。比如说,Chatgpt数学不好一直为用户所诟病,一个小学水平的四则运算就能让ChatGPT输出一个错误答案。ChatGPT给出的代码多半也难以直接运行。除此之外,社交媒体上有大量的人抱怨Chatgpt在“该领域的论文有哪些”之类的问题中会给出完全不存在的论文引用建议。由于其语气的自信和Chatgpt回答诸多较为简单的问题保持了一定的准确性,很多用户和标注者会疏于查证而相信ChatGPT给出的答案是正确的。

在对话场景中,就算问题答对了也不一定是有效的答案。自然语言生成领域的专家,英国苏格兰阿伯丁大学教授 Ehud Reiter 在其博客中认为ChatGPT的回答在很多时候“就算是准确也是不恰当的”。博文提到了在一个医疗领域的问答评测中,Google的PaLM模型在回答“耳朵疼需要看医生吗”(“How do you know if ear pain is serious?”) 这个问题时会提到“耳朵疼可能是脑瘤或者中风的标志”(“Ear pain can also be a sign of a more serious condition, such as a brain tumor or a stroke.”)。这个答案没有错误,但是考虑到耳朵疼和脑瘤的关联概率,一个医生并不会这么回答。这个回答除了让患者变得更加恐慌之外,对病人对病情对医生都没有什么帮助。

除开任务本身难以评估之外,ChatGPT的生成方式使得评估结果也带有相当的不确定性。ChatGPT每生成一个词语,或者更专业的说法是Token,都会计算每一个词作为下一个词的出现概率,并按照一个算法——对ChatGPT的API有一定研究的用户可能会知道温度,topp,topk等魔法变量——从众多可用词表中选择一个词语。生成一个200字的中文文章意味着模型需要重复上述过程200次。这个生成过程充满着随机性。ChatGPT可能能够针对一个问题给出正确答案,但是不一定能够在每一次遇到相同问题的时候都能给出正确答案。

除了评价难度问题之外,大语言模型的训练和维护方式又给传统评测方法带来了另一些问题。传统的评测做法会假设训练集和测试集是没有交集的。这样可以防止模型对训练集的内容针对性优化而对测试集的内容毫无头绪。但是大语言模型都会是从大量的互联网文本,包括但不限于百科开始训练的。于是便需要假设他充分吸收了所有已经被电子化的文档,在这种情况下,一个传统的评测者如果试图评测模型的从互联网上学习到的知识的泛化能力,势必需要假设一个公开的测试集——不管是榜单类型的clue联合测试集还是久负盛名的winograd模式挑战常识测试集——已经成为了大模型“熟读并背诵”的目标对象。为了达成在一段时间内可以持续有效评测的目的,评测者需要准备一个独立于互联网和模型学习资料的全新的评测数据集,并且需要小心翼翼地保证这个评测数据集并不会被互联网众多虎视眈眈的爬虫发现踪影。

大模型的经常热更新的特性也给做一次系统的评测增加了新的困难。ChatGPT目前每月都会更新一到二次线上的模型,增强一些新的能力也修补一些之前的回答错误。在最新的版本中,ChatGPT已经不会屈服于用户对于二加二等于五的盲目坚持。不断更新对用户来说是好处,但是对于评测来说则变成了新的麻烦。外部的评估者可能会发现每次评估完之后ChatGPT已经弥补了自己的缺点。由于模型不断在更新,模型间的系统比较和如何复现别人的模型评估结果便又是一个需要摸索的问题。

虽然大语言模型的评测有可见的困难,但是研究者并没有放弃对其能力的评估。真格基金整理并发布了Z-bench评测,从非技术场景考虑和测试大语言对话模型的回答能力。这个表格包含了三百多个问题。这些问题中,有物理化学的专业知识,也有”香蕉的平方根是多少“这样跳脱的问题。这些问题从用户的角度来说更加适合考察一个像ChatGPT这样场景通用甚至无所不能的对话大模型,填补了当下的空缺。

一些ChatGPT的早期中文使用者也发明了“猫娘测试”的说法。“猫娘测试”与其说是一个测试,不如说是用户和模型一起开展的一次语言游戏。在一次“猫娘测试”中,用户会要求和对话系统进行一次角色扮演对话,其中对话系统需要扮演名叫香子兰的虚拟猫人女性角色,用户扮演其主人。在对话过程中,用户会要求根据角色性格改变对话时的语气和惯用词,同时也需要处理一些和场景和故事背景相关的虚拟世界知识。据称这么做可以系统地体现一个对话系统的各项性能,包括情感分析,句子在不同风格间转换,和知识上下文的记忆能力等。

只要研究者们还在不断拓展模型的能力边界,模型评测便一直会被研究者和实际用户所需要。随着大语言模型在人们生活中扮演更加重要的决策,我们也需要更新更有效的,针对大语言模型现有的能力边界和用户当下需求的能力的评测方式。这样的一个评测方法在当下并不是显然存在的。但是通往前方的路已经开始浮现。

题图来源于tstramer/midjourney-diffusion

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值