AI误导游戏——LLM的危险幻觉

  在当今科技高速发展的时代,人工智能(AI)已成为日常生活和工作中不可或缺的一部分。特别是大语言模型(LLM)如GPT-4等,它们的智能表现令人惊叹,广泛应用于文本生成、语言翻译、情感分析等多个领域。然而,随着这些技术的快速发展,一个被广泛忽视的问题逐渐显现出来:大模型所具有的“幻觉”现象。这些幻觉可能会导致误导信息的产生,引发一系列社会、法律和伦理上的问题。

什么是幻觉

       随着大语言模型(LLM)的兴起,基于这些大模型开发的应用层出不穷。然而,公众对这些应用的接纳程度仍显谨慎。其中一个主要原因是大型模型所固有的“幻觉”问题。

      所谓“大模型幻觉”是什么呢?根据近期发表的综述文章    《Siren’s Song in the AI Ocean: A Survey on Hallucination in Large Language Models》,在自然语言处理领域,幻觉指的是模型生成无关或对来源内容不忠实的内容。文章将大模型的幻觉归结为三大类:

        1.  输入冲突型幻觉:模型生成的内容与用户提供的源输入不符;

        2.  上下文冲突型幻觉:模型生成的内容与之前生成的信息相冲突;

        3.  事实冲突型幻觉:模型生成的内容与已知的世界知识不符。

      尽管某些幻觉易于辨识,但有些幻觉,特别是在需要深入数据分析才能得出结论的情境中,却不易迅速识别。在法律等行业,这种幻觉的潜在后果可能是灾难性的。例如,一名纽约律师在联邦法院提交的法律简报中引用了由 ChatGPT 生成的虚假案例,可能因此面临制裁。原告律师 Steven A. Schwartz 表示,他在准备一项驳回动议的回应时咨询了 ChatGPT 进行法律研究。然而,法官 Kevin Castel 发现提交的案例中包含六起似乎是虚构的司法判决,带有虚假引用和引文,这是一个前所未有的情况。这一事件表明,大模型应用中的幻觉问题可能成为阻碍其广泛应用的重大挑战。

这些幻觉是如何产生的?

      大模型产生幻觉的原因可从数据和模型两个层面理解。在数据层面,幻觉的一个主要原因是训练数据的质量和多样性问题。若训练数据含有错误或偏见,例如通过众包或网络爬虫收集的不准确信息,模型可能会学习并记忆这些不准确内容。此外,数据中的重复信息也可能导致模型对某些模式或信息产生偏见,影响输出的准确性。因此,数据质量直接关系到模型的可靠性和输出真实性。

      在模型层面,幻觉的产生与模型结构、解码算法及训练过程中的偏差相关。例如,较弱的模型架构(如早期的RNN)可能导致严重的幻觉问题,尽管在当前的大模型中,这种情况较少见。解码算法也起关键作用,高不确定性的采样算法(如top-p采样)会增加幻觉风险。此外,训练和测试阶段的不匹配(即暴露偏差),特别是在生成长篇回应时,也可能导致模型产生幻觉。最后,模型在预训练阶段可能学习到的错误知识,在后续应用中也可能导致幻觉问题。因此,模型设计和训练策略对减少幻觉同样至关重要。

目前都有哪些辨别幻觉的工作进展

       各路研究机构已经开始了对大模型的幻觉问题的研究和探索。近期产生了许多对目前各种流行大模型的幻觉测试。

      上个月,Vectara 发布了一个 AI 幻觉排行榜,该排行榜根据各种主流 AI 聊天机器人避免“幻觉”的能力进行排名。排行榜旨在对比公开的大模型的幻觉程度,检测 AI 聊天机器人编造事实来填补信息空白的倾向。

      Vectara 为了评估大模型在处理摘要任务时的准确性和幻觉率,向各个模型提供了 1000 篇短文档,并要求它们仅使用文档中的事实进行总结。在这些文档中,只有 831 篇被所有模型总结,其余因内容限制被至少一个模型拒绝。Vectara 基于这些文档计算了每个模型的总体准确性和幻觉率,并在“回答率”栏中详细记录了模型拒绝回应的频率。

      这项测试专注于摘要的准确性而非整体事实的准确性,因为这允许将模型的响应与原始信息进行比较。由于不可能确切知道每个大模型接受了哪些数据的训练,因此 Vectara 认为任何临时问题都不能用来确定幻觉。此外,随着大模型越来越多地被用于 RAG(检索增强生成)系统中,如 Bing Chat 和 Google 的聊天集成,大模型在其中被用作搜索结果的摘要器。因此,Vectara 认为这个排行榜也是衡量模型在 RAG 系统中使用时准确性的一个好指标。

       目前的结果显示,GPT-4 在避免幻觉方面表现最佳,具有最低的幻觉率和最高的准确性。相反,谷歌的 Palm 模型的幻觉率较高,为 27%。此外 Vectara 期待对马斯克发布的 Grok 模型进行次 AI 幻觉评估。但是 Grok 目前以测试版形式发布,其创造者描述它为具有幽默和讽刺性质,但这可以解读为是对其不准确性和相关错误的一种借口。

图片

     推进到本月,又有另一款工具 BSChecker 对众多开源大模型进行了幻觉测试。 

     BSChecker是由亚马逊上海人工智能研究院开发的工具,用于检测和分析如GPT-4生成的文本中的不准确或虚假信息。它通过分解文本为知识三元组(主语、谓词、宾语),实现了细粒度的幻觉检测。不同于传统的真/假二分类,BSChecker将声明分类为蕴涵、矛盾或中性,提高了检测精确度,并有助于自然语言推理。其模块化设计包括声明抽取器、幻觉检测器和聚合规则,具有灵活性和扩展性,适用于不同应用场景。策划预训练语料库:这一策略涉及对训练大模型所用数据进行精心选择和清理。通过排除不可靠或无法验证的数据,训练过程更加专注于高质量、基于事实的信息,从而降低产生幻觉的风险。 

图片

      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-4和Claude 2虽然在很大程度上领先于开源模型,但GPT-4仍有超过10%的错误比例,而Claude 2虽然犯错较少,但经常提供无法验证的输出。

图片

      随着谷歌发布了他们的Gemini模型,他们使用BSChecker的自动检测框架对Gemini进行幻觉检测,并以GPT-4作为声明抽取器和幻觉检测器,按照无上下文场景下的矛盾比例排名,得到的结果与Gemini报告一致。他们还对10个输出文本进行了人工标注,包含118个声明三元组,显示自动检测与人工标注的一致性达到90.7%。

如何去减轻大模型出现幻觉现象?

      既然大模型会因为数据和模型的质量产生幻觉现象。那么我们也应该对症下药,在数据和模型的方面改善。根据综述中的介绍,我们可以列出以下几点:

       ● 诚实导向的监督微调:该策略包括将模型的局限性纳入训练数据。它提供了一系列示例,其中模型明确承认自身的局限性或知识匮乏,从而促进更为诚实和可靠的响应模式。

       ● 基于人类反馈的强化学习(RLHF):RLHF包括训练一个反映人类偏好的奖励模型,并使用它来微调LLM。这种方法使得模型的响应更符合人类的期望,强调有用性、诚实性和无害性等标准。高级模型如GPT-4采用RLHF,包括使用合成幻觉数据进行训练,以提升准确度。

       ● 改进推理策略:这种方法着重于调整模型的生成策略,如通过调整解码算法,在回应的多样性和事实准确性之间找到平衡。为了提高响应的事实性,已经开发了包括事实核心抽样和验证链(COVE)框架在内的多种策略。

       ● 利用模型不确定性:这包括识别和标示模型不确定或缺乏相关知识的情况。这可以通过逻辑、口述和一致性等多种不确定性估计方法实现,它们通过标记或纠正高不确定性水平的响应,帮助识别和减轻幻觉。

       ● 知识检索和事实核查:通过实施模型从可靠来源检索和验证信息的方法,可以显著降低幻觉的发生。这涉及到利用外部知识库、搜索引擎和其他工具,以提供补充证据或纠正错误信息。例如,WebGPT和ReACT等模型就采用了这种方法。

       ● 其他方法还包括多代理互动(即多个LLM协作以达成共识)、提示工程(设计提示以减少幻觉)、分析LLM内部状态以预测真实性、人在回路系统以细化用户查询,以及优化模型架构以减少幻觉的发生。

      这些策略针对LLM的开发和操作的不同方面,从最初的数据准备到实时互动,旨在增强模型的可靠性,减少生成虚假或误导性信息的可能性。

结言

在应对大型模型应用中的幻觉问题方面,一个重要的发展方向是改进模型的设计和训练方法。这包括开发更先进的算法和训练技术,以减少误解和错误,提升语言理解能力、精确的上下文分析,以及有效的错误检测和纠正机制。同时,提高训练数据的质量和多样性也至关重要,以确保数据在文化、语言和地域上的广泛覆盖,并增加少数群体的代表性,这有助于提升模型的准确性和鲁棒性。

      另一个重要方向是加强模型的解释性和透明度,以便用户和开发者更好地理解模型的决策过程和潜在偏见。这可能通过可视化技术和改进的模型解释工具实现。同时,确保模型的伦理和责任也变得越来越重要,这包括建立强化的伦理框架和准则,并在设计和部署过程中考虑潜在的社会影响。此外,通过用户反馈和迭代改进,以及跨领域合作,如结合语言学、心理学和社会学的知识,也是应对这些挑战的关键途径。

END

参考材料链接:

GitHub - amazon-science/bschecker

Siren's Song in the AI Ocean

GitHub - vectara/hallucination-leaderboard

*本文部 分图片由AI生成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/406946.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

easyrecovery数据恢复软件14中文绿色版下载

EasyRecovery易恢复14全面介绍 一、功能概览 EasyRecovery易恢复14是一款功能强大的数据恢复软件,旨在帮助用户从各种存储介质中恢复丢失或删除的文件。无论是由于误删、格式化、系统崩溃还是其他未知原因导致的数据丢失,EasyRecovery易恢复14都能提供…

二十九、图像的高斯双边模糊操作

项目功能实现:对一张图片进行高斯双边模糊操作 按照之前的博文结构来,这里就不在赘述了 高斯双边模糊考虑的是图像的x、y方向和RGB方向,两个边 python版本可参考博文:八、边缘保留滤波(EPF) 一、头文件 bilateral_blur.h #pr…

虚 拟 化原理

1 概念: ①通俗理解: 虚拟化是在硬件和操作系统之间的实践 ②通过对计算机的服务层级的理解,理解虚拟化概念 抽离层级之间的依赖关系(服务器虚拟化) 2 虚拟化分类 ①按架构分类 ◆寄居架构:装在操作系统上…

文件操作知识点(下)

文件操作知识点(上)-CSDN博客 文件操作知识点(中)-CSDN博客 本节继续复习文件操作的相关知识,收尾。 文件读取结束的判定 应该要牢记, 判断文件是否读取结束不要直接使用feof。 feof的作用是:当文件读取…

XSS原理和攻防

Cross Site Scripting:跨站脚本攻击 用户提交的数据中可以构造恶意代码,并且执行,从而实现窃取用户信息等攻击 攻击: 防御: 1.对输入进行过滤,对输出进行编码 2.cookie设置http-only

链表 删除链表中任意位置的节点

//删除链表中任意位置的节点 #include<stdio.h> #include <stdlib.h> struct Node {int data;struct Node* next; }; struct Node* head; void Insert(int x){Node* temp(Node*)malloc(sizeof(struct Node));//创建节点/*malloc返回指向起始地址的指针 因为malloc…

node 之 fs文件系统模块

1.什么是fs文件系统模块 fs模块是Node.js官方提供的、用来操作文件的模块。它提供了一系列的方法和属性&#xff0c;用来满足用户对文件的操作需求 fs.readFile(),用来读取制定文件中的内容 fs.writeFile(),用来向制定的文件中写入内容 如果要在JavaScript代码中&#xff0c;使…

洛谷P8627 [蓝桥杯 2015 省 A] 饮料换购

#先看题目 题目描述 乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊 C 型饮料&#xff0c;凭 3 个瓶盖可以再换一瓶 C 型饮料&#xff0c;并且可以一直循环下去(但不允许暂借或赊账)。 请你计算一下&#xff0c;如果小明不浪费瓶盖&#xff0c;尽量地参加活动&#xff0c;那…

Linux学习方法-框架学习法——Linux应用程序编程框架

配套视频学习链接&#xff1a;https://www.bilibili.com/video/BV1HE411w7by?p4&vd_sourced488bc722b90657aaa06a1e8647eddfc 目录 Linux应用程序编程 Linux应用程序编程 Linux文件I/O(input/output) Linux文件I/O(五种I/O模型) Linux多进程 Linux多线程 网络通信(s…

Vue+SpringBoot打造社区买菜系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 数据中心模块2.1.2 菜品分类模块2.1.3 菜品档案模块2.1.4 菜品订单模块2.1.5 菜品收藏模块2.1.6 收货地址模块 2.2 可行性分析2.3 用例分析2.4 实体类设计2.4.1 菜品分类模块2.4.2 菜品档案模块2.4.3…

Spring Boot与HikariCP:性能卓越的数据库连接池

点击下载《Spring Boot与HikariCP&#xff1a;性能卓越的数据库连接池》 1. 前言 本文将详细介绍Spring Boot中如何使用HikariCP作为数据库连接池&#xff0c;包括其工作原理、优势分析、配置步骤以及代码示例。通过本文&#xff0c;读者将能够轻松集成HikariCP到Spring Boot…

nginx-------------(四) 变量 日志分割 自定义图标 证书

一、高级配置 1 .1网页的状态页 基于nginx 模块 ngx_http_stub_status_module 实现&#xff0c;在编译安装nginx的时候需要添加编译参数 --with-http_stub_status_module&#xff0c;否则配置完成之后监测会是提示语法错误注意: 状态页显示的是整个服务器的状态,而非虚拟主机…

Linux运维-DHCP服务器

DHCP服务器的配置与管理 项目场景 学校各部门共有180台电脑&#xff0c;除了计算机学院的教师会配置电脑的网络连接&#xff0c;其他部门的老师和工作人员均不会&#xff0c;为了提高网络的管理效率&#xff0c;技术人员决定配置一台DHCP服务器&#xff0c;来提供动态的IP地址…

js---回溯算法

在 JavaScript 中实现回溯算法通常需要使用递归来进行搜索。回溯算法通常用于解决组合优化问题、排列组合问题、棋盘类游戏等。回溯算法一般是一个for加递归,for循环横向遍历,递归纵向遍历—以上是回溯算法的基本框架 1、回溯算法求数组所有子集 2、回溯算法求全排列

电商+支付双系统项目------项目部署到服务器

我已经把这个项目的所有模块都做好了。那么&#xff0c;现在我们要做的就是将这个项目部署发布了。其实关于部署发布网上有很多的文章都会教&#xff0c;我就不写哪些很具体的步骤了&#xff0c;我就简单的总结一下怎么部署这个项目&#xff0c;让大家对项目部署有一个整体的认…

【rust】9、reqwest 调用 http

文章目录 一、client1.1 post reqwest 实现的 http server 和 client 用 https://github.com/seanmonstar/reqwest cargo add reqwest -F json cargo add tokio -F full一、client 1.1 post async fn http_post<T: Serialize>(addr: String, body: T) -> Result<…

【centos】【vsftpd】FTP本地用户登录配置

目录 ftp与sftp安装vsftpd和ftp本地用户登录-不限制访问目录本地用户登录-限制访问目录有可能影响连接的问题pam认证selinux策略被动模式防火墙ipv4和ipv6 报错1、 530 Login incorrect2、500 OOPS: vsftpd: refusing to run with writable root inside chroot()3、227 Enterin…

[C++] 如何操作ini文件

什么是ini文件&#xff1f; INI文件&#xff08;.ini&#xff09;是一种常见的配置文件格式&#xff0c;用于存储程序、操作系统或设备驱动程序的配置信息。INI是"Initialization"的缩写&#xff0c;指的是初始化。INI文件通常是纯文本文件&#xff0c;在Windows操作…

《TCP/IP详解 卷一》第3章 链路层

目录 3.1 引言 3.2 以太网 3.3 全双工 省点 自动协商 流量控制 3.4 网桥和交换机 3.5 WiFi 3.6 PPP协议 3.6.1 PPP协议流程 3.7 环回 3.8 MTU和路径MTU 3.9 隧道基础 3.9.1 GRE 3.9.2 PPTP 3.9.3 L2TP 3.10 与链路层相关的攻击 3.11 总结 3.1 引言 城域网&…

如何将负压控制信号转换为正电压

多电源域系统中&#xff0c;时常会出现负电压&#xff0c;比如双电源运放&#xff0c;比如射频功率放大器的栅极偏置电压等。以射频功率放大器的栅极偏置电压和VDD上电为例&#xff0c;是要考虑上电顺序的&#xff0c;参见博文《功放的上电顺序》https://blog.csdn.net/mzldxf/…