ChatGPT输出不稳定!| 如何评估ChatGPT回答复杂问题的能力(东南大学&开源)
引言
小的时候做计算题,老师不让用计算器;渐渐长大了写作文,老师不让用电脑;现在需要写论文/材料,学校禁止使用ChatGPT。从上面角度来考虑,未来它会成为我们的一种工具。那么ChatGPT是否可以取代传统KBQA模型呢,成为我们寻求复杂问题答案的工具呢?为此,今天给大家分享的这篇文章,从这个问题出发,提出了对ChatGPT的能力和局限性进行全面的评估方法。
背景介绍
ChatGPT在人机交互测试中展示了令人印象深刻的自然语言理解能力。因此,研究人员对了解大型语言模型(如ChatGPT)在现有NLP任务上的性能和局限性很感兴趣。有研究指出,语言模型可以作为知识库(知识库)来支持下游任务。 作为一个大型语言模型,ChatGPT通过利用自身知识展示了强大的问题回答能力。由于它覆盖了维基百科作为训练数据,并且其令人印象深刻的自然语言理解能力,为此,「ChatGPT是否可以取代传统的KBQA模型已经成为一个热门话题」。
在各种类型的KBQA任务中,复杂问题回答(基于kb的CQA)是一项具有挑战性的任务,它要求问题回答模型具有多级推理、属性比较、集合操作、组合复杂推理的能力,以回答复杂问题。
我们相信,评估ChatGPT使用自身知识回答复杂问题的能力,「可以帮助我们回答ChatGPT是否可以取代传统KBQA模型的问题」。本文评估从两个方面评估ChatGPT: 1)分析其对复杂问题的语义解析能力,2)测试其通过使用自身知识的组合推理过程回答问题的可靠性。
本文评估方法
在本文中,我们使用ChatGPT自身的知识作为知识库对CQA进行了全面的评估,并将其与其他类似的LLMs和现有的KBQA模型进行了比较。我们的评估框架包括两个主要步骤:
然后,「将测试目标分为三个部分:最小功能测试(MFT)、不变性测试(INV)和定向期望测试(DIR)」 。第一个反映了模型执行各种推理任务的准确性,第二个和第三个反映了推理的可靠性。为了在INV和DIR中获得更多可分析的结果,我们采用了思维链(CoT)方法来设计用于构建额外测试用例的提示模板。
具体实施方法
要建立这样一个评价框架,需要解决两大挑战:统一标注、生成答案匹配。
统一标注
「首先是多源数据集的统一标注」。由于发布时间的差异,现有的基于kb的CQA数据集使用不同形式的答案,仅提供问答对或额外的推理路径或SPARQL等。
为了实现统一标注,我们选择了以SPARQL为资源的KBQA数据集,使用SPARQL关键字来识别回答问题所需的潜在推理操作。利用问题文本和问题词的句法结构,实现了答案类型的自动识别,语言标签直接由多语言数据集提供。
生成答案匹配
其次,该任务涉及「将生成答案与回答短语匹配」。ChatGPT通常以包含相关信息的文本形式生成答案,而数据集则提供特定的答案短语。两者之间的差距使得传统的精确匹配(EM)难以直接实现精度。
实验结果
收集了6个英语和2个多语言数据集作为本次评价实验4的测试数据,规模约为19万个问题,其中涵盖13种语言的约1.2万个多语言问题。用作比较的LLMs包括GPT-3, gpt-35和FLAN-T5。我们还介绍了当前最先进的相关数据集作为比较,以补充评估ChatGPT在相关任务中的无监督表现。
「在单语言问题回答测试中」,ChatGPT在大多数结果上比可比模型表现得更好,但在回答数字或基于时间的答案时,其表现不是最好的。此外,当问题涉及多跳或星形事实推理时,其表现弱于GPT-3.5 v3。
「在核对表测试中」,发现ChatGPT在回答复杂问题时存在一定的局限性,包括:1。MTF的结果表明,它不擅长回答只涉及一种推理类型的问题。2. INV的结果表明,「与传统的KBQA模型相比,对于相似/几乎相同的输入,ChatGPT的输出不太稳定」。3.DIR显示ChatGPT并不总是为正确的提示提供积极的反馈。
「在修改后的测试样本中」,其输出的变化并不总是符合我们的预期。「使用一般的CoT(思维链)提示来指导ChatGPT逐步回答问题是有益的」,特别是在提高需要计数才能获得答案的问题的解决效果方面。
推荐阅读
[1] 「自然语言处理(NLP)」 你必须要知道的 “ 十二个国际顶级会议 ” !
[3] NLP不断突破界限,2023 十篇必读的顶级NLP论文!
论文&&源码
Paper:https://arxiv.org/pdf/2303.07992v1.pdf
Code:https://github.com/tan92hl/complex-question-answering-evaluation-of-chatgpt