一个激烈的辩论正在进行中,争论焦点是LLM(大型语言模型),比如ChatGPT和Bard中那些让人毛骨悚然地类似人类的回答,他们是否真正“理解”我们的问题和他们提供的回答,还是只是在机械地应付。
一方面,许多非从业者和一些研究人员认为LLM确实理解,并且在人工智能的广泛测试中甚至表现出了人工通用智能的火花,以至于这些人工智能在“一系列测试中比(大多数)人类”表现更好。(毕竟,危言耸听是一种非常有效的营销策略。)另一方面,每天与LLM的局限性搏斗的AI从业者则敦促在得出这些看似过早结论时要保持谨慎,并有力地将LLM与骗子的工作方式进行了比较。
我真的,真的讨厌像“他们理解”vs“他们不理解”这样的二分法,因为二分法总是过于简化事物,制造的热气远远超过了光明。历史在系统地战胜我们和我们的对错争论,因为最终两个立场都被证明是错误的,同时又都有部分正确。
所以,这场“它是否真的理解”辩论中最重要的部分无疑不是“谁的观点是‘正确’”。从辩论中可以学到的重要内容是什么让LLM的表现与“真正的”(人类的)理解不同。这将导致对LLM在实践中的局限性有更深入的理解,并可能提供有用的想法,使LLM(和其他人工智能系统)变得更好、更可靠和更易于管理。而这种新的人工智能/人类对比也可能让我们更多地了解人类的理解能力。
作为一个认知科学家,我发现知识图谱及其他与LLM本身相关的因素在理解LLM是否真正理解任何东西以及如何理解方面起着非常重要的作用。但首先,考虑一下不带有知识图谱的LLM。
字符串操作是独立于“理解”且不同的。
早期的诸如ChatGPT之类的LLM版本仅仅是在庞大的规模上进行字符串操作。它们以这样的方式对来自互联网(和其他)内容的字符串序列进行建模,以便成功预测下一个最佳字符串延续,形成语法正确且(在很大程度上)相关并可理解的回复。这无疑是计算语言学的突破性进展。
然而,我们可以对字符串(或其他刺激,如图像、声音、手势等,我将它们都简称为“字符串”)以多种不同的方式进行操作,而不需要关注或对它们可能关联的概念或含义有丝毫了解。我们可以拼接和复制它们,测量它们的长度,将它们发送给朋友,为它们设定不同的颜色,将它们切割成可重复使用的部分,打乱它们的顺序,检查它们的频率和年龄,模拟它们的共现或非共现,对它们进行分类等等。我们可以对字符串进行无数种不涉及理解的操作。关于字符串的研究不仅很常见,而且很有趣(至少对于分析性的语言学家和AI工程师来说),这样我们就能更好地专注并详细记录它们的模式。
例1. 遗憾的是,我不会读蒙古语,无论是现代准凯尔克语、传统胡敦文字符还是转写文字形式。一点也不会。毫无头绪。但愿我能。这是胡敦文字的一个样本。很酷,对吧?你应该从上到下、再从左到右阅读。
即使我不理解它们,我仍然可以轻松处理Hudum文本中的空格分隔字符串序列:复制它们、计数它们、分发给我的经理、创建新的序列等等。如果我投入时间,我可以找到字符串A通常后跟字符B、C或D的模式。一旦我找到足够多的模式,我就可以自己生成一些看起来非常正常的Hudum字符串序列。这基本上就是早期LLM所做的事情,规模宏大。
例2,“英文”化学文章和蒙古文一样神秘,对我来说至少是这样。我知道标题中的一些单词,像这样:
α-亚甲基内酯的立体电子效应与三级膦的反应及其在有机催化中的应用
但我对作者在谈论什么一无所知。(试试阅读文章本身吧!https://pubs.acs.org/doi/10.1021/acs.joc.3c01223 )即便如此,我可以以许多不同的方式操作这些字符串,现在我比在蒙古文本中有更多线索来帮助我,但我仍然不能说自己真正理解多少。
同样地,如果我投入时间,我可以找到模式并生产一些非常巧妙且看起来正常的“化学文”字符串,就像那些毫无意义的博客标题生成器会毫不费力地产生数十个标题,即使是关于“tilkit glaxxers”这种无聊话题的。但是我肯定还是无法理解这些“化学文”的大多数字符串!LLM在多种语言上基于回收已见字符串的方式非常擅长这种生成。
例3-现在考虑一个经典且更为正常(对我们而言)的字符串集,来自一项研究人类阅读理解的实验。一组参与者阅读下面的文本,并在事后从记忆中描述他们对情况的理解。这些字符串平淡无奇,语法正确,是日常句子,没有不熟悉的词汇或不常见的句式。因此,作为读者,我们有更多的信息、更多的线索来构建对文本的理解,比我们试图理解蒙古语片段或化学文章标题时的信息要多得多。理解这段文本应该很轻松。
如果气球爆炸,声音就无法传播,因为一切都离正确的地板太远了。由于大多数建筑物往往有良好的隔热设施,关闭的窗户也会阻止声音传播。由于整个过程依赖稳定的电流流动,电线中断也会引发问题。当然,人类可以大喊,但人的声音不够响亮,无法传得那么远。另一个问题是乐器上的琴弦可能断了,这样就不能伴奏了。显然,最理想的情况是距离较近,这样潜在问题就较少。通过面对面的接触,出现问题的可能性也较小。
但是,几乎每个阅读过此文本的人都认为它令人困惑、毫无意义或不连贯,并表示他们无法理解它,即使他们了解所有的词汇并熟悉所有的句式。研究人员在此研究之后的30多年里发现了许多类似令人困惑的文本和情境,其中字符串和其他刺激并不足以理解。
这个案例很有意思,因为在这里我们可以以比以前更复杂的方式处理这些字符串,而且这些方法可以利用我们对语法和语义的知识。但即使如此,普遍共识是,对于这段文本,我们仍然无法达到通常所说的"理解"。
这些是哲学家约翰·塞尔的着名(并且广泛讨论的)1980年的"中文房间论证"的具体例子。他提出的关键观点,以及我在这里想要关注的,就是把字符串传来传去并不等同于理解,也不足以理解。因此,事实上,尽管chatGPT的早期版本可以很好地处理字符串,但它们并不理解任何东西,甚至近似程度也不行。
那么,缺少了什么要素呢?
在所有这些例子中都缺少了某些重要的要素,这些要素使我们认为存在着“真正”的理解,超越了单纯的字符串操作。那是什么?
当我尝试阅读蒙古文(或化学文章)时,即使我能够熟练地组成一系列漂亮的蒙古字符串,我不能将这些字符串与其他事物联系起来,只能与其他字符串联系起来。我根本没有培养出将蒙古字符串与其他事物联系起来的技能或知识(我也无法将其与其他事物联系起来)。
所以,缺少的是我自己内在的东西,而不是字符串中缺少了什么。理解与我对字符串的操作有关。
要理解字符串,我需要能够将它们与世界上的事物(而不是字符串)或我所了解的事物系统地联系起来。在很多研究人类理解的努力中,比如语言学、认识论、符号学和认知心理学等,这正是我们为几个世纪以来对理解的概念化的方式。
将字符串系统地与世界上的事物或我们头脑中的概念联系起来,赋予字符串(或像素、手势或声波)意义,构成了理解。
这种长期以来对理解的概念化表明,人类和人工智能可以通过至少两种方式将惰性字符串转化为认知充盈、有意义的符号。赋予字符串意义并创建理解的这些方法常常被称为“植入”。
基于直接经验的立足点:将字符串与世界中的物体相关联。
我们可以将字符串与某种感官运动经验相关联,例如一系列视觉输入(“掉落”),像素块组成的数组(“Fido”),棒球投手对特定投掷方式所记住的肩膀位置(“滑球”),音高的变化(“小三度”)或节奏(“切分音”)等等。这种立足点有助于解释我们无法有效概念化或描述的经历,比如一朵大丽花的气味或山竹的味道,以及我们从中学到的东西。
我无法将类似“Ногоон”的蒙古字符串与世界中的任何事物相关联,尽管蒙古语读写能力的人能够立刻而轻松地将该字符串与与rgb (0, 128, 0) 相对应的生理感觉联系起来,而在英语中我们称之为“绿色”。这种“字符串-物体映射”基本上就是语义专家所称的“引用”,几乎被普遍认为是意义或理解的关键组成部分,即使它不涉及明确的概念。
字符串在感官运动输入中的这种立足是最近在使用人工智能生成图像标签以及根据书面指令生成图像、视频、音乐和动作方面取得的实践进展的基础。但是,这种实际进展同时也构成了一个重要的理论进步,更接近于人类的理解:人工智能正像人类一样通过感官运动立足将字符串“朱红”理解为一系列RGB像素值。最近的LLM可以将字符串与可能存在于其环境中的事物进行立足,并跨多种模态进行这种操作,这是赋予字符串意义的重要方式之一。
对于人类和人工智能来说,我们通常认为这是一种非常有用但不完整的理解方式,因为我们对被称为“概念”的多个感官经历的概括非常重视。我们不愿意将不涉及概念的过程称为“理解”——这是立足字符串的第二种方式。
认知上的立足点:将字符串与概念相关联。
我们还可以通过将字符串与我们所了解或猜测的事物相关联来进行立足。我不理解“loon”或“teal”是什么意思,除了说它们是某种水鸟。只有当我对水鸟有足够的领域知识时,这才有所帮助。我目前只能将这些字符串在我零零星星的世界知识中进行弱化的立足。而像(英语中的)“mergansers”或(蒙古语中的)“нугас”这样的字符串对我来说几乎没什么用处。
当我试图理解“无色的绿色思想在疯狂地睡眠”,或者“扭曲的贴边鱼在筏上旋转和翻滚”,或者甚至是“Би 4 сарлагтай” (蒙古语),我很容易察觉到将这些字符串连接到连贯的概念结构的困难。将字符串(或其他刺激)映射到概念(以及字符串序列到概念结构的映射)与语义专家所称的“意义”密切相关,被普遍认为是意义或理解的另一个关键组成部分。
为了使基础成为可能,系统需要同时具备字符串和知识。在人工智能中,知识图谱和本体论使得在概念知识上系统地实现了字符串的基础。字符串在概念和知识中的基础是近期实际进展的基础,提高了LLMs的准确性和性能。但这些实际进展也构成了一个重大理论进步,更接近人类理解的一步:人工智能将字符串“vermillion”理解为知识图谱中的一个特定概念(以及定义该概念的“领域”),类似于人类所做的。例如,人工智能将字符串“Jack Nicholson”理解为与Wikidata中节点Q39792相关的事实集合。对于特定的人工智能,这些事实(或概念领域)是“定义”或“Jack Nicholson”概念的组成部分。
通过将字符串和其他刺激与世界中的事物和我们头脑中的概念(以知识图谱的形式进行转录和存储)相关联,人工智能执行的过程现在与人类理解非常相似,理解在人工智能中不再是一个模糊的隐喻,而是一个精确的模型,人类理解的简化副本,详细的人类理解模拟。
当我们对人类和人工智能应用相同的理解标准时,我们会发现这两种理解过程变得难以区分。
当然,人类的理解和认知还有更多,远比此处讨论的要多得多。基于基础的认知强调感知运动输入与概念之间的关系,这是对于在新环境中学习的自主机器人非常重要的领域,但我们在这里没有讨论。"热(情绪)"认知关注情绪如何调节感知和推理,在预测和应对人类在紧张情境中的输入方面将变得有用。当然,理解和认知在不同文化之间存在差异,因此“透视(换位)”和“跨文化认知”是理解的其他方面,最终将成为个性化和辅导系统的关键要素。
知识图谱在使最新一代LLMs能够系统地将字符串、感知运动输入和概念相关联方面发挥了核心作用。知识图谱让我们离能够理解得非常像人类一样的人工智能更近了一步。
__________
PS: 看一下下面的图像。然后再次阅读一遍气球的文字(上面的文字)。这就是这个实验的第二组参与者所做的。你可能会注意到,突然之间 - 一旦我们从图像中获取信息作为“基础” - 同样一组字符串似乎变得完全正常并且易于理解!
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。