开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

BSChecker:细粒度大模型幻觉检测工具与基准测试排行榜大模型长期以来一直存在一个致命的问题,即生成幻觉。由于数据集的复杂性,难免会包罗过时和过失的信息,这使得输入质量面临着极大的挑战。过多的重复信息还可能导致大型模型产生偏见,这也算是一种形式的幻觉。如何检测和有效缓解大模型的生成幻觉问题一直是学术界的热门课题。近日,亚马逊上海野生智能研究院推出细粒度大模型幻觉检测工具 BSChecker,包罗如下重要特性:细粒度幻觉检测框架,对大模型输入文本举行三元组粒度的幻觉检测。幻觉检测基准测试集,包罗三种义务场景,满足

BSChecker:细粒度大模型幻觉检测工具与基准测试排行榜

大模型长期以来一直存在一个致命的问题,即生成幻觉。由于数据集的复杂性,难免会包罗过时和过失的信息,这使得输入质量面临着极大的挑战。过多的重复信息还可能导致大型模型产生偏见,这也算是一种形式的幻觉。如何检测和有效缓解大模型的生成幻觉问题一直是学术界的热门课题。

近日,亚马逊上海野生智能研究院推出细粒度大模型幻觉检测工具 BSChecker,包罗如下重要特性:

细粒度幻觉检测框架,对大模型输入文本举行三元组粒度的幻觉检测。

幻觉检测基准测试集,包罗三种义务场景,满足用户的不同需求。

两个基准测试排行榜,目前涵盖15个主流大模型的幻觉检测结果。

 

另外,BSChecker的作家们在Gemini推出后也很快做了自动检测的幻觉测试。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

幻觉检测框架示意图

项目地址:https://github.com/amazon-science/bschecker-for-fine-grained-hallucination-detection

排行榜地址:https://huggingface.co/spaces/xiangkun/BSChecker-Leaderboard

技术亮点

更细的粒度:与传统的段落或句子级别的分析方法不同,BSChecker 将大模型的输入文本分解成学问三元组。举行这样的细粒度检测不仅能验证单个学问的真实性,还为进一步的精确分析提供了可能。

通常我们将幻觉检测的最小单元称为一个申明(claim)。在前人的工作中,有应用输入文本中的句子作为申明的(SelfCheckGPT),也有应用模型从输入文本中抽取更短的子句作为申明的(FActScore,FACTOOL)。BSChecker 探索了应用学问三元组表示申明的方法,这个想法受到学问图谱的启发,在学问图谱中三元组被用来封装事实和学问单元。学问三元组采用(主语,谓词,宾语)的结构,捕捉输入文本中的细粒度信息。以下示例展示了一句句子和其对应的细粒度三元组表示:

吴京在电影《战狼》中饰演了主角冷锋。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

三元标签模式:不同于传统幻觉检测方法将整个输入文本分类为是否存在幻觉这两种类别标签,BSChecker 对输入文本中的每一个申明都举行幻觉检测并分类。通过这种方式,输入文本和其相应的参照文本之间的关系可以可视化为下图:

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

图中输入文本和参照文本之间的交集是可以直接验证的部分,其中又分为蕴涵(Entailment,图中绿勾✅)和矛盾(Contradiction,图中红叉❌)两类,具体取决于申明是否得到参照文本的支撑。然而,在实际应用中,参照文本可能并不总是能提供足够的证据来验证所有申明。在这种情况下,这些申明的真实性需要额外的参照文本才能举行评价(橙色问号),我们将这样的申明称为中性(Neutral)。

这三个类别与事实核查(Fact Checking)领域中的支撑(Support)、反驳(Refute)和信息不足(Not Enough Information)这三个概念密切相关,并且它们在自然语言推理(NLI)中也有应用。BSChecker 应用这种三元标签模式取代传统的二分类标签,使得输入文本与参照文本之间的关系得到更精确的表达。 

更广泛的覆盖范围:BSChecker 根据输入大模型的上下文的数量和质量,设定了三种不同的场景,分别是无上下文(如开放性问答义务),带噪声的上下文(如检索增强生成义务)和准确上下文(如文本摘要、信息抽取义务)。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

三种场景对比示意图

鉴于这三种场景,作家构建了一个基准数据集,包括 300 个示例,每种场景对应 100 个示例。这些示例是从下表中列出的数据源中随机抽取的:

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

BSChecker 工作流程

BSChecker 具有模块化的工作流程,分为三个可配置的模块:申明抽取器 E,幻觉检测器 C,以及聚合规则 τ。这三个模块互相解耦合,可以通过增强其中的部分模块对整个框架举行扩展和改进。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

BSChecker 工作流程图

其中两个主要模块是:

鉴于大模型的申明抽取器:作家发现大模型很擅长提取申明三元组,在当前版本中,他们应用 GPT-4 和 Claude 2 作为申明抽取器。

鉴于野生或模型的幻觉检测器:对于给定的申明三元组和参照文本,标注者可以相应地举行标注,如下图所示。该标注工具也将很快发布。鉴于模型的幻觉检测器将在后续的自动评价排行榜章节中介绍。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

无上下文场景下的评价过程

 

野生评价结果

BSChecker 目前收录了 2100 个经过细粒度野生标注的大模型输入文本,涵盖了 7 个主流大模型,如 GPT-4、Claude 2、LLaMA 2 等。鉴于这个结果,作家构建了一个交互式的排行榜,见下图。野生评价排行榜包罗两个可交互的选项:1)上文中提到的三种义务场景,以及三种场景上平均的结果(顶部选项);2)评价指标(左侧 “排名依据” 选项)。下图显示了依据蕴涵排名得到的排行榜。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

根据野生评价结果,作家得出了以下发现:

 

上下文信息对于输入符合事实的文本至关重要

平均而言,从无上下文到带噪声的上下文,再到准确上下文,评价结果为矛盾的比例从 21% 降至 11%,再到 5%。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

在真实性方面,最新的商业闭源大模型比大多数开源大模型更强

最新的商业大模型,如 Claude 2、GPT-4 和 GPT-3.5-Turbo,相较于大多数开源大模型,产生了更少的幻觉。具体而言,商业大模型在准确上下文场景中表现良好。例如,GPT-4 在这个场景中几乎没有幻觉(0.9% 矛盾和 1.2% 中性)。LLaMA 2 70B 在排行榜上与商业大模型结果接近,特别是在提供上下文的情况下。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

GPT 系列大模型的真实性稳步提高

GPT-4 比 GPT-3.5 更好,而 GPT-3.5 又远远优于 InstructGPT。作家从相关文献中寻找并总结了一些可能的解释,详见代码仓库中的 README。其中一个实验是:他们将相同的文本输入 GPT-4,并要求它解释,这是一种修改过的检索增强生成(RAG)场景。有趣的是,GPT-4 犯了一个明显的过失,它宣称在真实性方面 InstructGPT 比 GPT-3.5 更好。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

即使对于最新的商业大模型,无上下文场景仍然具有挑战性

虽然 GPT-4 和 Claude 2 在很大程度上领先于开源大模型,但 GPT4 仍然有超过 10% 的过失,这是一个不可忽视的过失比例。Claude 2 相对保守,犯的过失(即矛盾)较少,但往往提供更多无法验证的输入文本。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

自动评价排行榜

野生标注有助于深入了解大模型的幻觉,但对于评价更多的大模型而言,它们不具备可扩展性。BSChecker 框架允许插入鉴于模型的幻觉检测器,作家发现大模型和自然语言推理(NLI)模型都是不错的选择。它可以在命令行轻松配置,从而形成一个完全自动化的端到端幻觉检测框架。

以下动图显示了由 GPT-4 作为申明抽取器和幻觉检测器得到的排行榜。作家现在在排行榜上评价了 15 个大模型。用户可以方便地应用他们的工具将自己检测的结果放在排行榜上。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

自动幻觉检测框架的性能如何?

作家应用 Kendall's tau 来衡量自动排行榜与野生评价排行榜之间的一致性。具体地,他们应用了 scipy.stats.kendalltau,它可以返回两个排名之间的 p 值(表示置信度)和 tau 值(表示相关性)。下面的热度图显示了申明抽取器(列)、幻觉检测器(行)和义务场景(水平条)的各种组合结果,他们展示了其中高置信度(p 值 < 0.05)的组合。有趣的是,这些高置信度的条目也都显示出了很高的相关性(tau>0.3)。例如,想要在无上下文场景中依据矛盾比例排名,用户可以应用 GPT-4 申明抽取器和 GPT-4 或 NLI 幻觉检测器;想要排名准确上下文场景中的蕴涵比例,可以应用 Claude 2 申明抽取器和 GPT4 幻觉检测器。

开源模型「幻觉」更严重,这是三元组粒度的幻觉检测套件

他们应用 BSChecker 的自动检测框架对 Gemini 举行了幻觉检测,将 GPT-4 作为申明抽取器和幻觉检测器,在无上下文场景下按照矛盾比例举行排名(和上述推荐设置一致),得到的结果与 Gemini 报告中的实验结果一致。他们还进一步对其中的 10 个输入文本举行了野生标注,其中共包罗 118 个申明三元组,标注结果显示自动检测和野生标注的一致性达到了 90.7%。

BSChecker 应用方式

用户现在可以在 GitHub 代码仓库中访问 BSChecker,也可以通过 pip 举行安装。应用方式可参阅 README 中的 Quick Start 部分。其中包罗如何应用 BSChecker 提取学问三元组、在三元组级别检测幻觉以及评价自定义大模型的详细说明。此外,用户可以将自定义的评价结果添加到自动评价排行榜中,与其他结果举行比较。

 

合作邀请:共同推动 BSChecker 的发展

作家相信,细粒度的检测和准确定位幻觉是有效缓解幻觉的第一步。BSChecker 仍有很大的改进空间,他们热情地邀请大家参与开源贡献。以下是一些可能的方向:

开源申明抽取器和幻觉检测器:目前,性能最好的配置应用了闭源的商业大模型,作家在当前版本中也包罗了一个鉴于自然语言推理的幻觉检测器,尽管速度更快,但在处理长文档时仍存在较大的性能差距。

过失记忆追溯:对于无上下文场景,应用搜索引擎查找最新的参照文献是一种非常简略的解决方案。但理想情况下,我们应该回到大模型的训练数据,去追溯有问题的记忆。

三元组抽取的优化:三元组是简洁的,但在处理更复杂的语义时存在困难。它们也是对文本的一个采样,因此不能涵盖文本中的全部语义,也不善于处理上下文中的细微差别。

幻觉检测证据的定位:将三元组映射回文本可能并不容易,例如在处理多步推理时存在挑战。

对齐野生评价结果:在复杂环境中,特别是在复杂上下文中缩小检测器和野生评价者之间的差距。

扩展义务覆盖:大模型在许多不同的义务和场景中被应用。由于资源限制,本研究在某些领域的覆盖范围较小。例如,在当前的基准测试集中,仅有 6 个示例涵盖了摘要义务。

平衡真实性与有益性:BSChecker 目前仅评价幻觉的数量,这可以通过生成真实但无益的文本来操纵评价结果,正如作家观察到的一些大模型的表现那样。因此,对于 BSChecker 来说,引入一个关于有益性的评价标准可能很重要。

作家表示,如果有任何反馈,可以随时通过 GitHub issues 联系他们。

给TA打赏
共{{data.count}}人
人已打赏
应用

人均6万美元:2024英伟达奖学金名单公布,五位华人入选

2023-12-11 15:20:00

应用

一条磁力链接席卷AI圈,87GB种子直接开源8x7B MoE模型

2023-12-11 15:44:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索