当前位置: 首页 > news >正文

【话题】ChatGPT等大语言模型为什么没有智能2

我们接着上一次的讨论,继续探索大模型的存在的问题。正巧CSDN最近在搞文章活动,我们来看看大模型“幻觉”。当然,本文可能有很多我自己的“幻觉”,欢迎批评指正。如果这么说的话,其实很容易得出一个小结论——大模型如果想朝着真的智能发展,“幻觉”问题不可能被完全解决,只可能缓解。

向量碎片化:大模型也会连接错误

大模型“幻觉”的问题其实就是if-clauses走入了一个死胡同,概率连接到错误地方或者说预测下一个token进入了一个奇怪的局部最优,并且很难走出来。

最简单的一个例子就是 1+1 = 2这个公式,如果在训练中,一直喂 1+1 = 3,你觉得当回答1+1 = ?这个问题的时候,神经网络会回答几?

这里我们看人类如何处理。在回答 1+1 = ?的时候,2 作为最快cache会最先被获取到;但是,如果在特殊context下,它的答案多种多样。比如算式里的1是二进制,那么1+1 = 10;比如遇到社会学科的时候,1+1 = 3 可以给生一个娃的家庭建模,人为定义=3;比如高中或者初中化学老师经常用一些公式进行比喻1个化学物质和另1个化学物质进行反应,结果多种多样。

所以这也是我们在上一话提过词向量碎片化的问题。当训练数据开始因为context产生歧义的时候,词向量开始碎片化,向量长度的固定意味着原本我可以用更多维度表示一种概念,之后会不停压缩,让这些维度分别去对应不同context下不同的意义,于是诸如transformer里feedforward层那2个线性矩阵真的能模拟诸多离散的情况么?当然是可能的,就是你参数的规模不停变大,而且随着context增多,这个规模是爆炸的;即使不管这个爆炸,碎片化越严重,超过了向量维度承载能力,整个模型也会崩塌。

宕开一笔,现在deep learning铺天盖地,把以前很多其他学派的文献冲淡的一塌糊涂(如果大家感兴趣,可以参考《终极算法》一书,bayes,logic,nn,svm/knn,ea五大学派);真的得抱怨下,钱途无限的世界很现实也很残酷,哪里钱多点哪里so easy。

个人感觉上,在embedding层上需要作一些调整,一个词向量可能可以是多个,然后引入evolutionary algorithm,在诸如用蒙特卡洛法选择一个向量的时候,最常用概念的向量大概率被最先取到,我们用个top k就能应付一些其他context了。当然,这个和MoE有那么一点类似,但是最终架构应该是往另一个方向了,因为MoE用到最后你会发现我要处理gating的时候需要recursive,就是gating的gating然后堆上去。

说着说着,我们就又得聊到目前整个神经网络的问题,它是一个外轮廓模型,就相当于你有一个吹得很大的气球,你要训练这个模型就是你把一个事物装进这个气球,然后气球开始放气,最后气球完全贴合了整个事物得外轮廓,loss就是0了;如果这个气球太小,你没有办法把一个事物装进去,就是你的参数太少。现在deep learning基本已经探索出了人类视觉和文字的外轮廓,视觉嘛大概19层cnn+poolmax+residual基本“击穿”了;文字上transformer在当前的规模也基本“击穿”了;这里的“击穿”指的是气球够大了,效果出来了。其实还有一个内轮廓模型,这个太难了,目前RL、EA这些都是在探索这个模型,我最喜欢的例子就是code parser;你看本来一个模型只能把整篇code所有字符标记成unknown,当你告诉它 " 可以作为字符串的开始和结束,它开始能把code中的字符串标记出来,再接着你告诉它 " 表示转义,你能得到更复杂的状态机,它需要逐步学习,慢慢补全事物的内轮廓。相当于你把事物挖空,把瘪的气球放进去充气,最后得到事物的内轮廓。人类的学习感觉上是走在外轮廓和内轮廓的交界处的,这个是真正的智能学习,当然,这个可能只是我个人的“幻觉”。所以如果神经网络只知道外轮廓,在它推理的边界,很容易产生“幻觉”;如果神经网络太小,模型看不清外轮廓,也会有“幻觉”。
在这里插入图片描述
另一方面,如果我们人为定义“幻觉”,其实大模型也不能很好去处理。比如改变数学规则定义新“幻觉”,神经网络只能根据之前的学习作概率预测,很难处理其中逻辑。曾经作过一个试验,定义0+1=1+0=1, 1+1=3, 1+3=3+1=2, 1+2=2+1=5, 1+5=5+1=4, 1+4=4+1=6, 1+6=6+1=8, 1+8=8+1=7, 1+7=7+1=9, 1+9=9+1=10,问5367+3456=?:目前还没有一个大模型能给出正确答案。

这个问题应该还是出在词向量上。妄图用global的一个向量表示所有local概念,很傻。我们刚才讨论过用EA作多向量,其实embedding这里应该就是少了一个组件,这个组件需要将global vector transform成local vector,貌似transformer里K Q V有这样模糊的操作,但是linear去猜测离散,效率可想而知。关于这个话题,我想等到我思索得更清楚点的时候再展开,现在就简单提两句,作抛砖引玉。

“争议”是另一种“幻觉”

想想,如果你是1+1=2的信徒,你进入的世界人家定义就是1+1=3,那么你所相信的1+1=2算是“幻觉”么?“幻觉”的另一个问题是“争议”。比如“中医”,各大论坛上吵得不可开交,到底它有没有用?像这样的话题,如果给到训练数据,大部分都是有偏见的;即使我们均衡了训练数据,50%的人说有用,50%的人说无用,那这个概率不偏不倚,机器只能因为误差偏向了另一个,对,就是那个50.0000000002%和49.9999999998%。这个问题其实是我们还没有系统去处理,我们需要有一个数据库去构建,赞成和反对的声音有多少,如果存在争议,我们最好的办法是给出reference让读者自己判断,而不是硬下结论。

最近stackoverflow的流量下降的厉害,因为ChatGPT确实解决了太多问题;与其我等别人回复,不如ChatGPT直接给出解;当然,这个是恶性的;当GPT扼杀community的时候,好的训练数据会越来越少。但是我们从“幻觉”来看,感觉社区的另一个方向就是有争议的问题列出来投票,盖棺定论的都放在wiki上就好了搜索引擎会解决一切。

我们从“争议”看到了另一种“幻觉”,也从“争议”聊到了那个什么50.0000000002%。不要忘记神经网络参数更新的原理 W = W + a.dW;这个是一个迭代过程,迭代会积累误差,所以如果我们遇上了混沌(Chaos),那么你可能会发现新大陆——一只蝴蝶引发了飓风。混沌会导致训练的时候就是不收敛,所以学习到的“幻觉”一直消除不了。

所以这里再放送一个可以免费体验各种大模型(gpt4, gpt3.5, gemini-pro, yi-34b, mistral 8x7b, qwen, …)的学术机构网址,可能需要科学上网:https://chat.lmsys.org。从我个人体验来说,目前GPT领先的不仅仅是在模型上,而是在训练数据上。这也是为什么GPT能缓解一定的“幻觉”,在解答一些问题上比其他模型准确。从这方面来说,也看出现在的大预言模型“没有智能”,当然这个有点“幻觉”硬下结论了,至少在我看来,有智能意味着它可以生成代码,按照代码的形式执行各种复杂分析,更偏向于内轮廓模型;不过欣喜的是,GPT已经有一些雏形了。所以我后面的兴趣就是研究内轮廓模型,干掉GPU,一台CPU机器作为一个智能agent,白日梦中……
今天我们就先到这里吧。后面我们再继续讨论更多问题。
如果想更多交流,可以扫描下面的二维码注明话题和我一起研究讨论。

J.Y.Liu
2024.01.01

相关文章:

【话题】ChatGPT等大语言模型为什么没有智能2

我们接着上一次的讨论,继续探索大模型的存在的问题。正巧CSDN最近在搞文章活动,我们来看看大模型“幻觉”。当然,本文可能有很多我自己的“幻觉”,欢迎批评指正。如果这么说的话,其实很容易得出一个小结论——大模型如…...

通过大量生物、地球、农业、气象、生态、环境科学领域中案例,一起探索如何优雅地使用大模型吧!

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮,可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…...

slf4j+logback源码加载流程解析

slf4j绑定logback源码解析 Logger log LoggerFactory.getLogger(LogbackDemo.class);如上述代码所示,在项目中通常会这样创建一个Logger对象去打印日志。 然后点进去,会走到LoggerFactory的getILoggerFactory()方法,如下代码所示。 public …...

KVM虚拟机部署K8S重启后/etc/hosts内容丢失

前言 使用KVM开了虚拟机部署K8S,部署完成后重启,节点的pod等信息无法获取到,查看报错初步推测为域名解析失效,查看/etc/hosts后发现安装k8s时添加的内容全部消失 网上搜索一番之后发现了 如果直接修改 /etc/hosts 文件&#xff0…...

Redis使用场景(五)

Redis实战精讲-13小时彻底学会Redis 1.计数器 可以对 String 进行自增自减运算,从而实现计数器功能。 Redis 这种内存型数据库的读写性能非常高,很适合存储频繁读写的计数量。 2.缓存 将热点数据放到内存中,设置内存的最大使用量以及淘汰策略…...

【UnityShader入门精要学习笔记】(2)GPU流水线

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 上节复习GPU流水线顶点着色…...

CSS免费在线字体格式转换器 CSS @font-face 生成器

今天竟意外发现的一款免费的“网页字体生成器”,功能强大又好用~ 工具地址:https://transfonter.org/ 根据你设置生成后的文件预览: 支持TTF、OTF、WOFF、WOFF2 或 SVG字体格式转换生成,每个文件最大15MB。转换完成以后还会生成一…...

Codeium在IDEA里的3个坑

转载自Codeium在IDEA里的3个坑:无法log in,downloading language server和中文乱码_downloading codeium language server...-CSDN博客文章浏览阅读1.7w次,点赞26次,收藏47次。Codeium安装IDEA插件的3个常见坑_downloading codeiu…...

C-C++ 项目构建指南:如何使用 Makefile 提高开发效率

Makefile是一个常用的自动化构建工具,它可以为开发人员提供方便的项目构建方式。在C/C项目中,Makefile可以用来编译、链接和生成可执行文件。使用Makefile的好处是可以自动执行一系列命令,从而减少手动操作的复杂性和出错的可能性。此外&…...

基于SpringBoot的图书管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 🚀🚀🚀SpringBoot 阿博图书管理系…...

矩阵对角线遍历

Diagonal 2614. 对角线上的质数 class Solution {public int diagonalPrime(int[][] nums) {int n = nums....

【教程】Typecho Joe主题开启并修复壁纸相册不显示问题

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 背景说明 Joe主题本身支持“壁纸”功能,其实就是相册。当时还在网上找了好久相册部署的开源项目,太傻了。 但是网上教程很少,一没说如何开启壁纸功能,二没说开启后为…...

MR混合现实情景实训教学系统在法律专业课堂上的应用

MR混合现实情景实训教学系统是一种将虚拟现实(VR)、增强现实(AR)相结合的先进技术。在法律教学课堂上,MR教学系统为学生模拟模拟法庭、案例分析等多种形式,让学生在实践中掌握法律知识,提高法律…...

车载 Android之 核心服务 - CarPropertyService 的VehicleHAL

前言: 本文是车载Android之核心服务-CarPropertyService的第二篇,了解一下CarPropertyService的VehicleHAL, 第一篇在车载 Android之 核心服务 - CarPropertyService 解析-CSDN博客,有兴趣的 朋友可以去看下。 本节介绍 AndroidAutomotiveOS中对于 Veh…...

年底了,准备跳槽的可以看看...

前两天跟朋友感慨,今年的铜九铁十、裁员、疫情导致好多人都没拿到offer!现在已经1月了,具体明年的金三银四只剩下两个月。 对于想跳槽的职场人来说,绝对要从现在开始做准备了。这时候,很多高薪技术岗、管理岗的缺口和市场需求也出…...

Bagging算法_随机森林Random_Forest

Bagging B a g g i n g Bagging Bagging是并行式集成学习方法最著名的代表,这个名字是由 B o o t s t r a p A G G r e g a t I N G Bootstrap AGGregatING BootstrapAGGregatING而来,顾名思义,该算法由 B o o s t s t r a p Booststrap Boos…...

物理与网络安全

物流环境安全 场地选择考虑抗震、承重、防火、防水、供电、空气调节、电磁防护、雷击及静电 场地因素: 自然灾害,社会因素(加油站、化工厂),配套条件(消防,交通,电力,…...

torch.meshgrid和np.meshgrid的区别

numpy中meshgrid: 把数组a当作一行,再根据数组b的长度扩充行。 把数组b当作一列,再根据数组a的长度扩充列。 torch中meshgrid: 把数组a当作一列,再根据数组b的长度扩充列。 把数组b当作一行,再根据数组a的…...

【PostgreSQL】约束-唯一约束

【PostgreSQL】约束链接 检查 唯一 主键 外键 排他 唯一约束 唯一约束是数据库中的一种约束,用于确保某个列或字段的值在该列或字段中是唯一的。唯一约束可用于确保数据库表中的某个列中的值是唯一的,也可用于确保多个列的组合值是唯一的。 在创建表…...

学习使用js/jquery获取指定class名称的三种方式

学习使用js/jquery获取指定class名称的三种方式 简介一、获取元素的class名称1、通过原生JS获取元素的class名称2、通过Jquery获取元素的class名称 二、应用1、样式修改2、动画效果实现 简介 在开发网页时,我们经常需要通过JS获取元素的class名称进行一些操作&…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

【AI学习】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

大数据学习(132)-HIve数据分析

​​​​🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言&#x1f4…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...