绝区陆--大语言模型的幻觉问题是如何推动科学创新

介绍
大型语言模型 (LLM)(例如 GPT-4、LLaMA-2、PaLM-2、Claude-2 等)已展示出为各种应用生成类似人类文本的出色能力。然而,LLM 的一个鲜为人知的方面是它们倾向于“产生幻觉”或生成不正确或没有根据的事实陈述。我不认为这仅仅是一个限制,我认为,如果得到正确引导,LLM 幻觉实际上可以帮助激发新的科学发现和编码创新。
让我来解释一下大语言模型幻觉的自由特性如何让他们能够建立人类大脑可能无法建立的横向联系。研究人员开始向大语言模型提出科学难题和问题,看看他们能想出什么非常规的解决方案。虽然大多数输出可能毫无意义,但一些想法可以提供有希望的新研究方向。
作为一名软件开发人员和工程师,我将特别关注如何促使大语言模型 (LLM) 集思广益,想出解决编码问题的创新方法。他们不受约束的幻想可能会产生新的算法、数据结构、架构和编程范例。我将提供大语言模型 (LLM) 在被要求解决复杂挑战时可能编写的富有想象力的代码示例。
大语言模型幻觉的力量
但首先,为什么 LLM 幻觉具有如此大的创造潜力?当 LLM 接受大量文本数据集的训练时,它们会发展出一种令人印象深刻的能力,能够以非常像人类的方式继续讨论任何主题的段落。然而,与人类不同,LLM 并不真正理解它们生成的内容。它们没有现实世界知识或常识的基础。
因此,大语言模型可以自信地讨论实际上并不存在的概念、人物、地点和事件。例如,GPT-4 可以令人信服地描述一个它完全虚构的国家的地理。细节似乎足够连贯,直到你意识到它没有任何事实依据。
对于大多数应用来说,这些事实幻觉是大语言模型的一大缺点。但一些研究人员正在探索大语言模型生成文本不受控制、不受约束的性质是否也能释放出不同寻常的创造力。正因为 GPT-4 不知道幻想和现实之间的区别,它的想象力是无限的。不受关于什么是可能的或科学有效的先入为主的观念的束缚,GPT-4 可以抛出人类会自我审查的非常规假设和解决方案。
当然,LLM 并不真正理解科学,在被要求解决复杂问题时,他们给出的大多是胡言乱语。但在这些混乱中,一些研究人员认为,偶尔也会有一些精彩的提示,它们可以表明人类专家可能没有考虑到的有前途的新研究方向。诀窍在于设计有效的提示,以有效地激发 LLM 的想象力,同时过滤掉那些让人产生幻觉的废话。在太狭窄(限制 LLM 的创造力)和太开放(引发胡言乱语)之间可能存在一个最佳的提示点。
幻覺創意代碼
作为一名开发人员和工程师,我特别兴奋于利用 LLM 幻觉来激发解决编码问题的创新方法的可能性。现有的程序合成技术可以自动化简单的编码,但它们利用了狭义约束内的模式识别。LLM 幻觉提供了一些新的东西:人类程序员可能永远不会想到的不同代码概念。
例如,假设我提示 GPT-4:“编写一种新型压缩算法的伪代码,以比 B 帧或 P 帧更有效地缩小视频文件大小。重点关注关键数据结构和逻辑流程。”
LLMs 并不真正了解视频压缩或编码最佳实践。但摆脱了先入为主的观念后,它可能会幻化出令人惊讶的创造性伪代码。也许它利用了一种非常规的预测模型。或者它想出了一种人类程序员不会想到的递归数据转换。同样,大多数输出可能毫无用处,但 LLMs 幻觉的绝对范围增加了偶然发现有希望的东西的机会。
与人类程序员不同,LLM 可以快速生成并测试心智模型,且不会有任何风险,这可能会带来富有成效的路径,而人类可能会过早地拒绝这些路径,因为它们太过不合常规。这种能力可以扩展到编码领域。我们可以促使 LLM 产生幻觉,想象出新颖的加密技术、更优雅的数据结构、更快的搜索/排序算法、创造性的 Web 框架或革命性的编程语言。
欺骗的风险
当然,如果我们过于依赖 LLM 幻觉,也会有风险。由于缺乏现实世界的基础,LLM 在讨论它实际上并不理解的概念时听起来很有说服力。如果我们将 GPT-4 中的每个幻觉代码想法都视为合理的,我们可能会浪费时间追逐海市蜃楼。
例如,在提示 GPT-4 提出一种新颖的加密货币系统后,它可能会使用奇特的加密和创造性的去中心化验证方法生成代码。从表面上看,其幻觉加密货币在技术上似乎很合理。但如果没有对分布式系统或经济学的扎实理解,GPT-4 的建议如果实施,很可能会失败。它的代码通过了“嗅探测试”,只是因为 GPT-4 的胡说八道能力太强了!
因此,尽管 GPT-4 不受约束的想象力具有创造潜力,但我们需要进行严格的筛选,以确定其众多幻觉想法中哪些值得进一步探索。对于科学发现,我们仍然需要通过实验仔细测试 LLM 假设的可行性。对于编码,我们需要实际尝试实现 GPT-4 算法和数据结构,以评估它们的实际性能和可扩展性。
大语言模型合作伙伴
我认为 LLM 最大的价值在于充当一个始终存在的自动化头脑风暴伙伴。我们可以给它提供源源不断的编码挑战和提示变化,以刺激其幻觉输出。在此过程中,LLM 可以激发我们独自无法获得的人类洞察力。
我们不应该将 LLM 视为可以处理问题的自主系统,而应该在 LLM 和人类专家之间建立紧密的反馈循环。我们提示 GPT-4,处理结果,识别有希望的部分,再次提示 GPT-4 完善某些概念,过滤并重复。这构建了新的混合人类-LLM 发现过程,我们才刚刚开始探索。
头脑风暴会议示例
场景:我是一家对冲基金的数据工程师,该基金采用复杂的机器学习算法来指导我们的交易策略。数据科学团队依靠我来汇总市场数据流、实施管道并在云端管理我们的大数据基础设施。
然而,我们当前的数据仓库和数据湖难以跟上来自市场、替代数据源和我们自己的投资组合分析的金融时间序列数据的爆炸式增长。我们的管道无法以足够快的速度提取和处理数据以进行机器学习训练。
我决定选择 GPT-4 大脑来获得满足算法金融对速度、多样性和数量需求的创造性数据架构理念。
头脑风暴会议 我:“GPT-4,我需要一个创新的大数据蓝图来处理大量、高速率的金融数据馈送,这些数据将动态地为交易模型提供信息。细节对时间非常敏感。概述一种完全针对速度和灵活性进行优化的方法。”
GPT-4:“这听起来像是云端 Lambda 架构的一个很棒的应用!结合流和批处理路径,我们可以实现低延迟提取,同时仍支持历史回测。”
Lambda 架构让我想起了领域驱动设计的事件源……也许我们可以围绕来自不同市场的事件流来构建它?
我:“很好,我喜欢 Lambda 的想法!既然金融围绕市场事件而展开,如果我们在事件流主干上构建它会怎么样?比如在不同的数据域(交易、订单、交易等)中遵循事件源模式。有什么创新建议吗?”
GPT-4:“喜欢事件源概念——它很自然!我们可以将所有市场数据视为来自不同领域的时间事件日志流。一些关键创新:
- 使用集成的 Apache Kafka 生态系统(Kafka、Kafka Connect、KSQL)进行事件提取、代理和流处理。
- 数据作为事件让我们能够利用事件驱动的微服务架构进行扩展和发展。
- 对于机器学习,Kafka 流式传输使实时/持续的模型训练保持反应能力。
- 使用 Kafka 时间窗口、时间戳、水印对事件流进行分区,以进行历史回溯测试。
- 随着事件模式的发展,实施 Kafka Schema Registry 进行集中验证和版本控制。”
GPT-4 详细介绍了这个事件流平台,我越来越兴奋了!它完美地契合了我们实时、基于时间轴的数据挑战,同时为批量/历史建模敞开了大门。我迫不及待地想把它充实成一个久经考验的金融数据网格,我们可以无限制地扩展。我们的战略家会喜欢这个的。
关键要点
总而言之,虽然大语言模型没有扎实的知识或推理能力,但它们不受约束的幻想倾向确实提供了不同寻常的创造潜力。通过在人类专家和大语言模型之间建立紧密的反馈回路,我们可以激发任何一方都无法独立实现的新发现。大语言模型提供丰富的想象力,而人类提供批判性分析。
我尤其热衷于鼓励大语言模型提出富有想象力的方法来解决棘手的编码难题。大语言模型摆脱了先入为主的观念,可能会想到人类无法想到的非传统算法、数据结构、架构和范例。它还允许通过生成大量伪代码来快速进行原型设计。
当然,我们需要严格筛选,以确定大语言模型的众多幻想想法中哪些在技术上是可行的,值得实施。只有一小部分可能被证明是可行的,但这些稀有的宝石可以开辟有前途的新研究方向。随着时间的推移,随着我们通过对哪些可行和哪些失败的反馈来建立大语言模型的知识库,信噪比可能会大幅提高。
因此,尽管大型语言模型幻觉显然存在缺点,但我相信我们只触及了其创造潜力的表面。通过建立紧密的人机-LLM 协作循环,我们可以突破发现的界限!
创作不易,觉得不错的话,点个赞吧!!!
相关文章:
绝区陆--大语言模型的幻觉问题是如何推动科学创新
介绍 大型语言模型 (LLM)(例如 GPT-4、LLaMA-2、PaLM-2、Claude-2 等)已展示出为各种应用生成类似人类文本的出色能力。然而,LLM 的一个鲜为人知的方面是它们倾向于“产生幻觉”或生成不正确或没有根据的事实陈述。我不认为这仅仅是一个限制…...
集训 Day 2 模拟赛总结
复盘 7:30 开题 想到几天前被普及组难度模拟赛支配的恐惧,下意识觉得题目很难 先看 T1,好像不是很难,魔改 Kruskal 应该就行 看 T2 ,感觉很神奇,看到多串匹配想到 AC 自动机,又想了想 NOIP …...
Linux系统(CentOS)安装Mysql5.7.x
安装准备: Linux系统(CentOS)添加防火墙、iptables的安装和配置 请访问地址:https://blog.csdn.net/esqabc/article/details/140209894 1,下载mysql安装文件(mysql-5.7.44为例) 选择Linux通用版本64位(L…...
YModem在Android上的实现
(一)参考文献 【安卓相关】蓝牙基于Ymodem协议发送bin文件,对硬件设备进行升级。 - 简书当Android BLE遇上YModem - 简书 (二)收发机制 基于我们具体的需求,在原有的基础上加了一下前后的处理。 * MY YMO…...
循环练习题
代码: public static void main(String[] args) { for (char c1a;c1<z;c1){System.out.print(" "c1); }System.out.println();for (char c2Z;c2>A;c2--){System.out.print(" "c2);}} 结果为:...
Seata解决分布式事务
我举的例子是:在网上购物时,我们支付后,订单微服务会更新订单状态,同时会远程调用购物车微服务清空购物车,和调用商品微服务完成商品库存减一。 我们曾经说的事务是只能在本微服务完成回滚,意思就是如果过…...
C语言编译报错error: expected specifier-qualifier-list before
C语言编译报错 error: storage class specified for parameter error: expected specifier-qualifier-list before 原因: 报错信息 "expected specifier-qualifier-list" 通常表示编译器期望在某个地方出现类型指定列表,但却没有找到。这通常…...
无缝协作:如何实现VMware与Ubuntu虚拟机的剪切板共享!
文章目录 📖 介绍 📖🏡 演示环境 🏡📒 剪贴板共享 📒📝 VMware设置📝 安装VMware Tools或open-vm-tools📝 验证剪贴板共享功能⚓️ 相关链接 🚓️📖 介绍 📖 无缝的剪贴板共享是提高工作效率的关键。在VMware和Ubuntu虚拟机的协同工作中,能够直接在宿…...
linux 进程堆栈分析
1.进程pid jsp -l | grep appName 或 ps -ef | grep appName 2.查看cpu top -c pidps -mp pid-o THREAD,tid,time / top -H -p pid #打印出进程对应的线程id及运行时间timeprintf %x\n 线程id3.查看gc jstat -gcutil | grep pid 500jstat -class pid4.查看进程日志 jsta…...
【续集】Java之父的退休之旅:从软件殿堂到多彩人生的探索
Java之父的退休之旅:从软件殿堂到多彩人生的探索-CSDN博客 四、科技领袖退休后的行业影响 4.1 传承与启迪 Gosling等科技领袖的退休,为行业内部年轻一代提供了更多的发展机会和成长空间。他们的退休不仅意味着权力和责任的交接,更是一种精…...
LVS+Nginx高可用集群---Nginx进阶与实战
1.Nginx中解决跨域问题 两个站点的域名不一样,就会有一个跨域问题。 跨域问题:了解同源策略:协议,域名,端口号都相同,只要有一个不相同那么就是非同源。 CORS全称Cross-Origin Resource Sharingÿ…...
Appium环境搭建,华为nova8鸿蒙系统(包括环境安装,环境配置)(一)
1.安装代码工具包 appium python client pip install appium-python-client 2.安装JDK 参考链接: antjmeterjenkins从0实现持续集成(Windows)-CSDN博客 3.下载并安卓SDK 下载地址:AndroidDevTools - Android开发工具 Android…...
【React】React18 Hooks 之 useReducer
目录 useReducer案例1:useReducer不带初始化函数案例2:useReducer带初始化函数注意事项1:dispatch函数不会改变正在运行的代码的状态注意事项2:获取dispatch函数触发后 JavaScript 变量的值注意事项3:触发了reducer&am…...
【cocos creator】2.4.x实现简单3d功能,点击选中,旋转,材质修改,透明材质
demo下载:(待审核) https://download.csdn.net/download/K86338236/89527924 const {ccclass, property } = cc._decorator;const enum box_color {NORMAL = 0,DASHED_LINE = 1,//虚线TRANSLUCENT = 2,//半透明 }@ccclass export default class main extends cc.Component {…...
Android EditText+ListPopupWindow实现可编辑的下拉列表
Android EditTextListPopupWindow实现可编辑的下拉列表 📖1. 可编辑的下拉列表✅步骤一:准备视图✅步骤二:封装显示方法✅步骤三:获取视图并监听 📖2. 扩展上下箭头✅步骤一:准备上下箭头icon图标✅步骤二&…...
dify/api/models/task.py文件中的数据表
源码位置:dify/api/models/task.py CeleryTask 表结构 字段英文名数据类型字段中文名字备注idIntegerID自增主键,任务ID序列task_idString任务ID唯一任务标识statusString状态默认值为 PENDINGresultPickleType结果可为空date_doneDateTime完成日期默认…...
hdu物联网硬件实验3 按键和中断
学院 班级 学号 姓名 日期 成绩 实验题目 按键和中断 实验目的 实现闪灯功能转换 硬件原理 无 关键代码及注释 /* Button Turns on and off a light emitting diode(LED) connected to digital pin 13, when pressing a pushbutton attached…...
pytorch通过 tensorboardX 调用 Tensorboard 进行可视化
示例 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader from torchvision import datasets, transformsfrom tensorboardX import SummaryWriter# 定义神经网络模型 class SimpleCNN(nn.Module):def __init__(self):…...
linux查看目录下的文件夹命令,find 查找某个目录,但是不包括这个目录本身?
linux查看目录下的文件夹命令,find 查找某个目录,但是不包括这个目录本身? Linux中查看目录下的文件夹的命令是使用ls命令。ls命令用于列出指定目录中的文件和文件夹。通过不同的选项可以实现显示详细信息、按照不同的排序方式以及使用不同的…...
单一设备上的 2 级自动驾驶:深入探究 Openpilot 的奥秘
Level 2 Autonomous Driving on a Single Device: Diving into the Devils of Openpilot 单一设备上的 2 级自动驾驶:深入探究 Openpilot 的奥秘 Abstract Equipped with a wide span of sensors, predominant autonomous driving solutions are becoming more m…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
