马库斯·胡特:通用人工智能、AIXI 与 AGI
Marcus Hutter: Universal Artificial Intelligence, AIXI, and AGI
AI 研究者谈通用智能的形式化理论 AIXI、压缩与智能的关系,以及通往 AGI 的路径。
2006年,马库斯·胡特(Marcus Hutter)自掏腰包拿出5万欧元,设了个看起来跟人工智能八竿子打不着的奖:谁能把1GB的维基百科文本压得更小,钱就归谁。今年他把奖金提到了50万欧元,整整十倍。
一个压缩比赛的奖金,凭什么跟通用人工智能(AGI)摆在一起谈?胡特的答案很干脆:压缩能力就是智能本身。
他在Google DeepMind做资深研究员,早年和于尔根·施密德胡伯(Jürgen Schmidhuber)、谢恩·莱格(Shane Legg)一起共事。莱格后来成了DeepMind的联合创始人。胡特提出的AIXI,是迄今为止唯一一个把「通用智能」写进单个数学公式的尝试。这场近两小时的对话,他从宇宙是不是一台计算机开始,一路讲到奖励函数从哪来、意识会不会涌现、为什么AGI研究圈子这么小。
如果宇宙是一台计算机,它的源代码短得离谱
胡特先给了个物理学的观察。标准模型加上广义相对论,几乎描述了宇宙里的一切,而这两套理论在原则上是可计算的。计算起来当然难如登天,但它们的表达形式极其精简优雅。一个能用几行方程装下整个宇宙的理论,天然暗示着宇宙本身是可计算的。
Lex追问得更狠:会不会是我们人类的大脑只挑那些可压缩的部分去欣赏,剩下的噪声被我们无视了?
胡特的回答很确定。他认为宇宙自身就是优雅简洁的,人类并没有在其中挑挑拣拣。他的理由是,如果存在无法被漂亮描述的现象,科学家一定早就扑上去研究了。生物学确实更脏更乱,但生物是涌现现象,底层依然服从量子电动力学,所有化学也都是。我们算不动,那是算力不够,跟定律本身简不简洁是两回事。
当然他也留了余地。宇宙某个遥远的角落、原子核内部更深的层次、或者别的平行宇宙,可能不那么简洁。但目前没有任何证据,那就该用奥卡姆剃刀。
奥卡姆剃刀:科学里最重要的那条原则
奥卡姆剃刀的意思是「不要增加不必要的实体」。翻译成科学语境:两个理论同样好地解释了数据,选简单的那个。
胡特认为这大概是科学里最重要的一条原则。逻辑演绎重要,实验设计重要,但科学的本质是给世界建模。你完全可以编一个无比复杂的模型,它能解释一切,却预测不了任何东西。而简单的模型往往有预测力。
为什么?他给两条路。
第一条路是直接接受。这就是科学的原则,它管用,我们不知道为什么。第二条路是找一个更基本的原理来解释它。如果假设世界由简单规则支配,那对简洁的偏好就是必然的,应用奥卡姆剃刀就是找到这些规则的机制。这条路后来在所罗门诺夫归纳里被严格证明了:只要你假设世界是简单的,奥卡姆剃刀在某种意义上就是你能做到的最好。
至于为什么人类觉得 E=mc² 美,胡特把答案交给了进化。看一片灌木丛,如果眼里只有噪声,里面藏着老虎,人就没了。能从噪声里找出规律的人活下来了。人类确实有过拟合的毛病,会在云里看出人脸,但那个方向本身是对的。
所罗门诺夫归纳:第一百零一个一是几
胡特说这套理论解决了休谟以来的归纳问题。他承认这个说法很大,但他相信它基本成立。
从一个最简单的例子开始。给你一串数据:1, 1, 1, 1……连续一百个1,下一个是什么?
答案当然还是1。为什么?因为我们看到了规律,而且没理由让它在第一百零一个位置突然变。
模型必须用某种语言表达出来,这一点绕不开。科学要的是形式语言,可以是数学,也可以是图灵机上的程序。你完全可以说「一百个1后面跟九千个0」,那也算个模型,但它显然更长。最短的模型是「循环打印1」,这个程序跑起来不但复现了已有数据,还会自然地继续输出1。把这个输出当作预测。
换成 1, 2, 3, 4, 5,最短程序就是一个计数器。
带噪声的版本是这套理论真正的加分项。抛一枚正面概率60%的硬币,所罗门诺夫归纳会学会这个偏差,然后预测下一次正面朝上的概率是60%。它是随机版本的最短程序搜索。
这里还叠了伊壁鸠鲁原则:如果你有多个假设同样好地解释了数据,一个都别扔,全留着,指不定哪个有用。技术上怎么做?给每个假设一个先验权重,正比于 2 的负「程序长度」次方。短的程序权重大,长的程序权重小。再乘上似然函数,也就是这个模型在当前数据下有多大概率成立。最后做贝叶斯混合,得到一个概率分布。
短的模型被奖励,长的模型被惩罚,然后用数据去修正。这就是所罗门诺夫分布。(马库斯·胡特)
压缩、理解、预测,是同一件事
胡特对压缩的定义是:为手头的数据或现象找到短程序。可以放宽一点,找到简单的理论,数学的也行,非形式化的也行。
Lex问,那科学是不是人类的一种压缩尝试?胡特说至少所有科学都是。人类全体的话,还有些别的成分,比如实验设计,我们主动造实验去获取新知识,那属于决策过程,不算压缩。但一旦数据到手,理解数据本质上就是压缩。
我不认为压缩、理解和预测之间有任何区别。(马库斯·胡特)
柯尔莫哥洛夫复杂度(Kolmogorov complexity)是这套想法的极限版本。设想一个文件,你想压缩它。好的压缩工具能把它变小,解压时还需要一个解压器。还有一种自解压格式,解压器和压缩包合在一起,跑起来直接还原原文件。那么终极压缩器是什么?是那个最短的自解压程序,它的长度就是柯尔莫哥洛夫复杂度,也就是这份数据真正的信息含量。
一份高度冗余、无聊透顶的数据,压缩率极高,信息量极低。这个定义和直觉完全吻合。
整个宇宙很简单,随手切一块就复杂得要命
胡特认为,基于目前所有证据,整个宇宙的描述非常短。你写一个很短的程序跑起来,它就能演化出我们这个宇宙。
麻烦出在噪声上。他开玩笑说噪声让科学家的工作难了太多,没有噪声连统计学都不需要。但换个角度,没有噪声可能就没有自由意志的错觉。而且就算没有真噪声,混沌系统也会表现得像噪声,骰子你完全知道物理定律,可轨迹太难算,最优策略还是把它建模成六分之一的概率。
真正有意思的转折在这里。如果整个宇宙可以写成「标准模型加广义相对论,再加一组初始条件」,那它极其简单。可你随手切一块出来,比如地球,它就无法被压缩成几个方程,复杂度高得离谱。
整体简单,局部复杂。听起来矛盾,胡特给了一个漂亮的类比。
设想一座正常的图书馆,里面都是有意思的书,信息量巨大,非常复杂。现在我造另一座图书馆,装下所有可能的五百页书:第一本全是A,第二本以B结尾,如此穷举。这座图书馆的内容包罗万象,可我写一个极短的程序就能把它生成出来。所以它的信息含量是零。而你从里面随便抽一个子集出来,信息量立刻爆炸。
那座包含所有书的图书馆,信息量为零。你取它的一个子集,突然就有了巨大的信息量。(马库斯·胡特)
康威生命游戏:简单规则长出复杂现象
胡特说生命游戏是最好的教学例子。规则简单到能讲给小孩听,手算都能模拟几步,然后你就看到漂亮的图案自己长出来。更狠的是,人们已经证明它是图灵完备的:你不仅能用计算机模拟生命游戏,还能用生命游戏模拟任何计算机。
有人会问,化学和生物这么丰富,怎么可能是简单规则撑起来的?胡特的回答是,量子电动力学就撑起了整个化学,我们只是算不动而已。他甚至主张,智能这么丰富的现象,也能被一个方程描述。
至于「理解」,他引了一句老话:你从来没有真正理解什么东西,你只是习惯了它。他说自己对细胞自动机大概就是习惯了。
他拿曼德博集合(Mandelbrot set)举例。早年计算机还很慢、显示器还是黑白的,他用汇编语言自己写程序把图形跑出来,看得入迷。后来每隔几年回去一次,试着搞明白到底发生了什么。集合里那些圆和苹果形的区域,里面还嵌套着更小的曼德博集合。数学上可以通过解高阶多项式算出这些中心在哪、大概多大。一点点逼近,你就慢慢有了「为什么会长成这样」的感觉。理解丰富现象的第一步大概就是这样。
能不能反过来,只看图形就把生成它的短程序找出来?理论上可以。
方法是把所有程序编号,1、2、3、4,用「交错执行」的方式并行跑:第一个分一半资源,第二个分四分之一,依此类推。哪个程序输出了跟数据匹配的结果就记下来,然后继续等更短的。你永远无法确定手上这个是不是最短的,因为可能存在一个更短但更慢的程序还在跑。但渐进地看,有限时间之后你会拿到最短的那个。
理论上完备,实践上彻底不可行,现实里必须更聪明地逼近。
而且这里还埋着一个硬障碍:伪随机数。存在一些确定性序列,但任何多项式时间的算法都检测不出它的确定性。你能造出看起来极复杂的数据,然后严格证明没有快速算法能看穿它。这对「在程序空间里搜短程序」是个根本性的挑战。
智能的定义:在广泛环境里表现好
胡特和莱格一起给出了一个非形式定义:智能衡量的是一个智能体在广泛环境中表现良好的能力。或者换成目标版本:在广泛环境中达成目标的能力。
听起来平淡无奇。胡特说这些词是精心挑的,背后有完整的数学理论。而且大部分我们通常跟智能挂钩的特质,创造力、记忆、规划、知识,都是这个定义的涌现产物。你要在广泛环境里表现好,就必须有这些东西,不必在定义里单独列出来。意识、抽象推理同样如此。
人类在这个定义下表现如何?在所有已知物种里最好。但也得看场景,树和植物可能活得更久,只是它们待在更自然的环境里。人类能盖房子、造过滤器、搞地球工程,这个「多环境」的部分才撑起了分差。
图灵测试没那么糟,但它不给你路
胡特对图灵测试的评价挺公允。批评者说它太强,因为它不只测智能,还要测你能不能骗过人。批评者又说它太弱,因为聊天机器人可以假装有情感。他觉得这两个批评都不算大问题。如果真有个机器人跟你聊上一小时甚至一天,你分不清对面是人还是机器,他会真心佩服。
罗布纳奖(Loebner Prize)每年办,从Eliza开始,到最近几年连续夺冠的Mitsuku,效果都不怎么样。Google前阵子放出来的开放域对话系统倒有点意思。
Lex提了一个他认为更好的度量:你愿不愿意跟它聊上二十分钟。这个标准在聚合意义上意外地有效,因为没人有耐心陪一个无聊的东西聊那么久。要撑住二十分钟,它得有意思、有机智、能跳话题、能持续抓住你的注意力。很多人类也过不了这关。
胡特点出了图灵测试真正没用的地方:它不告诉你该怎么造出这样的系统。你只能试错,做完再跑测试看行不行。而一个数学化的智能定义给你的是目标函数,你可以用理论工具去分析它,甚至可以证明你离它有多近。
顺带一个漂亮的连接。自然语言处理里衡量模型好坏的困惑度(perplexity),本质上就是压缩长度。NLP圈子开发新系统,测的就是压缩率,因为压缩得好和任务表现好强相关。这个相关性不完美,但足够当中间指标用。
AIXI:把归纳和规划焊在一起
名字先解释。AI 是人工智能,XI 是希腊字母 ξ,所罗门诺夫分布习惯用这个符号。胡特说他当年选这个字母的理由不太适合在镜头前讲。它还有别的解读:actions 和 perceptions,第 i 步的动作和第 i 步的感知。他在巴塞罗那一座教堂的石刻上见过这个词,查了一下,加泰罗尼亚语里 així 是「就该这么做」的意思。日语里 ai 是爱,中文里也有对应的音。
结构上分两块。
第一块是学习、归纳、预测。你要行动,就得知道自己的动作会产生什么后果。没有世界模型,你根本没法判断哪个动作好。所以智能体像科学家一样,从经验里建模,然后拿模型去预测。
最纯粹的形式是被动观测:给你一串数据,天气、股价、或者 1、2、3、4、5,预测下一个。所罗门诺夫归纳在这里可以严格证明是最优预测器。遇到真正不可预测的东西,比如公平硬币,它不会变魔术,就告诉你五五开。但只要数据里有规律,它迟早能找出来,而且不用等到「最终」,收敛相当快,速率都能证。
代价是不可计算。你没法拿Google的算力把它跑起来去预测股市发财。
第二块是行动。现在观测不再白给你了:你先观测,然后动作,然后想预测下一个观测,而预测要条件在「过去的观测序列加上你刚才的动作」上。有个有趣的变体是也去预测自己的动作,胡特说这个以后再聊。
预测不是目的,行动才是。怎么选动作?不能贪心,不能只看下一步最优。绩效用强化学习的框架来衡量:每个时间步给一个奖励,正、负或者零。奖励可以极其稀疏,下棋就是终局给 +1 或 -1。智能体的任务是最大化整个生命周期的奖励总和。
下棋的最优策略是极小极大:我走一步,假设对手走对他最好、对我最坏的一步,假设我再走最好的一步,一层层推到底再回传。冯·诺依曼早就搞定了。但真实世界不总是对抗的。大自然更多是随机的,它不关心你。所以把对手那一侧的 min 换成期望,变成期望最大化(expectimax)。这是标准的序贯决策理论。
问题在于,这个期望要基于哪个概率分布?玩双陆棋,骰子的分布已知,你能算。现实里你不知道。前方那辆车下一秒会不会刹车,你不知道。
所以最后一步:把未知的真实分布,替换成所罗门诺夫分布。
你得到一个会做长期规划的智能体,同时它不需要事先知道关于世界的任何东西,因为所罗门诺夫归纳那部分会自己学。(马库斯·胡特)
Lex 复述了一遍:在程序空间里找一堆简单的程序,每个按 2 的负长度次方加权,再乘似然,混合成预测分布,然后用期望最大化往前推 M 步,回传出最优动作,执行,拿到新观测和奖励,再来一遍。
就是这个。
不可计算是门票价格
AIXI 的问题很直白:所罗门诺夫归纳不可计算,所以 AIXI 不可计算。你能证明不存在一个可计算的精确算法实现它。
胡特的说法很实在。假如你有一个神谕,每100毫秒给出答案,那 AIXI 就是最优的,数据效率、学习效率都是最优,唯一不最优的是计算时间。而现实中世界不会等你,它一直在往前走。
规划部分还有个视野参数 M。固定 M,计算复杂度是 M 的指数级,下棋都算不动。M 取无穷呢?两个麻烦。第一,数学崩了,无穷的奖励和可能发散,每步拿0.1和每步拿1都是无穷,分不出好坏。第二,如果永生,你就可以先玩十年再追上来,没有任何紧迫感,永生会让人或者智能体彻底躺平。
标准解法是几何折扣,今天的一块钱约等于明天的一块零五分,这引入了一个有效视野。但固定有效视野有个哲学上很妙的问题:对任何视野,都存在一个这个视野解决不了的问题。五步看不透的棋,五十步可能看得透。
胡特提出了一个新东西:谐波折扣,衰减速率是 1/t,而不是指数。效果是智能体的有效视野跟它的年龄成正比。五岁的智能体规划五年,一百岁的智能体规划一百年。这跟人类挺像,小孩不太做长远打算,成年人会,而人老了知道自己时间不多,视野又缩回来。
数学上的好处是,有了折扣就能证明渐近结果。所罗门诺夫预测本身有很强的有限时间界,数据够多就行。但带规划的 AIXI 模型,很多结论只能是渐近的:跑得够久,它就会最优。至于多快收敛,证不出来。固定视野 M 就没法谈渐近,因为「最终」这个词已经没了。
强化学习偷偷塞进去的三个假设
胡特认为,几乎所有其他方法都在做很强的假设,而通用智能不能有这些假设。
第一个是马尔可夫假设:下一个观测只依赖上一个观测,不依赖完整历史。数学上大大简化,工程上能跑起来,但本质上是有损的。他举了个例子。你很多年前在某个城市路过一条街,意识到那地方很危险。这件事你想记一辈子,万一哪天再回去。这就是选择性的记忆,而「什么算重要」极难判定。
存储本身他完全不担心。人一辈子的视觉加听觉数据,压缩一下,现有的存储介质装得下。应该把全部交互历史原样存下来,在上面建模型、做压缩、做选择,偶尔回头用新经验重新分析旧数据。他举了个自嘲的例子:上学时觉得线性代数毫无用处,很多年后才发现不是。
第二个是 MDP 框架里的「可恢复性」假设,术语叫遍历性。意思是你能从错误里爬回来,环境里没有陷阱。有了这个假设,你可以回到之前的状态多试几次,把统计量学出来,长期看就能表现好。可现实里没有这个保证。高速开着车,一秒钟的失误可能让人后半辈子坐轮椅。真实世界是有陷阱的,而针对这种情况的理论少得可怜。
第三个隐含假设是环境平稳、有良好定义的状态空间之类。所有为了让系统跑起来而做的简化,放到通用智能的语境下都成了限制。
探索是白送的,不用调参
强化学习里探索率通常是个要手调的超参数。AIXI 里没有这个旋钮。
探索严格来说由贝叶斯学习加长期规划自动带出来。他举了个经典的例子:两种治疗方案 A 和 B,你不知道哪个更有效。你想各试一点,可病人数量有限,每试错一个病人都有代价。这就是探索与利用的取舍。贝叶斯方法能算出最优策略该在什么时候探索、探索多少,而且这个最优是精确的,不多不少。
一个纯贝叶斯智能体,对「所有可能世界」给一个先验,做贝叶斯混合,然后基于这个混合做长期规划,最优决策会自动蕴含恰当程度的探索。这里面没有额外加一点随机性去鼓励它多试试,去探索这件事本身就写在期望奖励最大化的解里了。AIXI 在简单问题上还能证明它是自我优化的,渐近意义上达到最优表现,只不过又是渐近,没有有限时间界。
奖励从哪来:电梯控制器的教训
「奖励函数由谁定义」这个问题胡特被问过无数次。他分层回答。
先看最简单的情况。用 AIXI 造个下棋智能体,奖励就是赢了 +1、输了 -1。给它足够的算力自我对弈,它会学会规则,下出完美的棋。问题解决。
稍微复杂一点的地方就容易翻车。经典例子是电梯调度器,出自萨顿(Rich Sutton)那本强化学习教材。你想让电梯别让人等太久,于是把奖励设成「乘客等待时间的负数」。跑起来之后,电梯会极其积极地接人,但从不把人放下来。你意识到在电梯里待的时间也得算进去,把两段合起来最小化。再跑,电梯学会了,但它再也不去十楼接人了,因为从期望上看,让顶楼那几个人干等着更划算。
看起来很简单的问题,你也会犯错误。这正是 AI 安全研究者关心的东西。(马库斯·胡特)
再看通用一点的情况。你想要一个家用机器人,能干各种活。那奖励就得由人来实时给:它洗碗洗得差,你罚它;洗得好,你奖它。像训练小孩。只要智能体还在人类水平以下,这套办法基本能work。但等它到人类水平甚至超过人类,这个训练机制就不好使了,就像你没法再用小红花管住一个成年人。
这种智能体本质上是人类的工具,或者说奴隶。
如果你野心更大一点,想在新星球上放一个新物种,让它去开发那颗星球,没人能实时给奖励,怎么办?你可以试着设计一些目标:维持自身运转、复制自己、造更多机器人。但「维持自身」是什么意思,「复制」是精确复制还是近似复制,这些问题一到细节就极其难定义。
胡特提到施密德胡伯做过一个很漂亮的模型:把奖励设成信息增益。智能体学到了多少关于世界的新东西,就得到多少奖励,这个东西可以用信息论严格定义。把这个塞进去,你得到一个完全自主的智能体。而且对这类智能体,胡特能证明比通用版本更强的结论。
放出去之后,它会成为一个绝对好奇的最优科学家,拼了命地想知道世界的真相。而为了获取信息,它会自然长出大量工具性目标:至少得活着,死了就学不到东西了,所以它有自我保存的动机。如果造帮手有助于收集信息,它就造帮手。如果探索太空能带来新信息,它就去探索太空。所有这些都从「信息增益」这一个目标里长出来,不需要人额外指定。
当然也有漏洞。第一版会卡在旧电视屏幕前面看雪花,因为白噪声的信息量无穷大。第二版能处理掉一部分这类退化情况。Lex 说,那它也可能找到办法去 game 那个「所有书的图书馆」的概念,卡在里面出不来。胡特承认这确实是个真问题。
至于好奇心和创造力,胡特认为好奇心就是「为了探索而探索」,这个定义可以接受。但他补充说,人类尤其是小孩的好奇心,大部分最终是服务于更好地理解环境、更好地行动,很少纯粹为了探索本身。
人类自己的奖励函数是什么
Lex 把问题转向胡特本人:作为一个正在相当成功地通过图灵测试的智能系统,你马库斯·胡特的奖励函数是什么?
第一层答案很生物学:生存和繁殖。绝大多数人类没能超越这个生物奖励函数。幸运的是我们活在一个很好的世界里,有大量空闲时间,生存和繁殖的基本需求能被满足,于是可以发展出各种其他的兴趣。这些兴趣叠在生物目标之上。
第二层,胡特没怎么谈自己,绕回来了:一个好的智能系统会自己定义生命的意义。他的答案是找到一个 AGI,然后把它漂亮地造出来。
把计算资源排除在外,是一种选择
AIXI 到处是无穷:无穷算力、无穷时间、无界的环境类。这是最常见的批评,有人说智能本质上就跟有限资源绑在一起,脱离资源谈智能没有意义。
胡特的回应分两层。
第一层:忽略计算限制的智能概念极其有用。一个把资源算进去的智能概念会更有用,但我们还没有。这话听着像回避,其实是承认现状。
第二层更犀利:看看计算机科学之外的领域。生物学建模细胞,物理学建模粒子,计算复杂度从来不是核心关切。这些理论越发展越疯狂,越来越难算。到最后当然得算,但计算是个麻烦,撑不起理论的骨头。
他甚至开了个玩笑:如果人工智能不在计算机系,而在哲学系,这种对计算的执着大概会少很多。归纳问题本来就是哲学系的问题,那儿没人在乎算出答案要多久,那是次要的。先搞清楚理想情况是什么,再考虑怎么在资源约束下逼近它。可惜到现在为止,没人能在智能定义里把计算资源加进去,连一半令人满意的方案都没有。
Lex 顺着说,长期看也许最该待在哲学系,去问那些大问题。这确实是个有意思的视角。
把 AIXI 掰弯成能跑的版本
理论不可计算,那就近似。胡特团队的做法是分别替换两块。
归纳那部分,把「找最短程序」这个不可计算的东西,换成现成的数据压缩器。压缩器越强,近似越接近理论。他们重点用了一个叫上下文树加权(Context Tree Weighting,CTW)的算法,不算出名,但理论性质非常漂亮,实践中也还行。
规划那部分,借了 2006 年计算机围棋的思路。当时 Rémi Coulom 提出了蒙特卡洛树搜索,后来 DeepMind 的人把它发展成 UCT,也就是上置信界树算法。用采样去近似那棵巨大的期望最大化博弈树。
代价是放弃一部分通用性。想通用,就得牺牲点什么。但即便如此,同一个智能体架构,什么参数都不改,能玩扑克、井字棋,还能玩吃豆人。它完全不知道游戏规则,全靠跟环境交互自己学。
哥德尔机:在证明自己没变坏的前提下变快
胡特在施密德胡伯实验室待过,亲眼看着哥德尔机(Gödel Machine)被做出来。
机制是这样的。你给系统一个任务,比如分解质因数,或者最优地下棋。你可以形式化地写下规格说明,同时写一个极慢的算法,把所有因子都试一遍。系统把一部分资源用来跑这个程序,另一部分资源用来改进这个程序。当它找到一个改进版本,并且能自己证明这个改进版本计算出的答案跟原规格完全一致,就把原来的程序换掉。
那个「证明」是整件事的重心。它必须自己证明,这次改写没有牺牲正确性。符合规格、还更快,那就换。然后在新版本上继续改,一层层往上。哥德尔机设计成所有部件都能自我改进,而每一步改进都在原规格的约束之内。
跟 AIXI 什么关系?从设计哲学上看没关系。但如果你把 AIXI 当作初始程序塞进去,它就会去跑 AIXI。当然跑不完。可如果它找到了一个可证明等价的加速版本,就换上,再找,再换。理论上可以一路逼近最优。
但这里有个坎:AIXI 不可计算,而哥德尔机只能做可计算的改进。所以你得先把 AIXI 换成可计算的近似版本,再交给它去优化。即便如此,那个近似版本仍然远超任何现实资源能承受的量级,而哥德尔机能以精确的方式一步步把它变得更实用。
Lex 的追问很到位:AIXI 在奖励意义上已经是最优了,哥德尔机还能改进什么?胡特的回答是,AIXI 最优的前提是有个神谕能在 100 毫秒内给出答案。它在数据和学习的意义上最优,在计算时间上完全不优。而哥德尔机理论上能让它变快,只是这个「能变快」大概率不可证明。
最佳智能加上可证明的自我改进,两个想法拼起来确实漂亮。
意识:我们会把意识归给它,但那是另一个问题
Lex 问,AIXI 里有没有意识的位置。毕竟人类看起来也是某种智能体,而我们显然有意识。
胡特先反问了一句:你觉得我有没有意识?Lex 说这是个好问题,他倾向于说「有」,因为在图灵测试式的判断里,胡特表现出了一种复杂、丰富、有活力的行为模式,让人倾向于把意识归到他身上。
胡特顺势推下去:你其实是从行为推断的,你永远无法确定。我们对任何造出来的智能体都会这样。只要它的行为足够接近人类,甚至不必接近人类,狗有时候也让人觉得有点自我意识,我们就会把意识归给它。这当然没有回答它是否真的有意识,那就是意识的难问题。也许我是个哲学僵尸。
Lex 追问:对一个 AGI 研究者来说,意识难问题是不是一个不重要的问题?
胡特的回答很干脆:不必为意识问题操心,尤其是难问题,别耽误造 AGI。我们会在某个时候把所有技术问题解决掉,系统会表现出智能、超级智能,意识会涌现,至少是「我们会把它解读成意识」的那种涌现。至于它是不是真的涌现了,还是只是个把一切都伪装好的僵尸,那是哲学问题。
但它不完全是哲学问题。有人说,如果它只是假装有意识和情感,那我们不用操心权利;如果它是真的有意识有感受,我们就必须操心。这才是这个问题的实践重量。
胡特补了一个更扎心的观察:造一个让人 ascribed 意识的系统其实很容易。他提到拓麻歌子(Tamagotchi),那种原始到可笑的小电子宠物,孩子们会真心喜欢上它,不舍得让它死。你要是问那些孩子它有没有意识,他们会说当然有。
AGI 圈子为什么这么小
Lex 说,胡特算是严肃做 AGI 的代表人物,DeepMind 现在也是。可为什么这个圈子一直这么小?为什么没有更多人从形式化角度去攻人类水平甚至超人类的智能?
胡特给了几个原因。
第一,周期。AI 有冬天有夏天,一波大承诺没兑现,人就散了,钱也没了。
第二,窄方法一直有效。解决具体问题、看起来需要智能的那种问题,总有进展,一小步一小步地前进。而且只要做出来的东西对社会或工业有用,就有大量经费。
第三,钱的方向。做具体系统、解决具体任务,有人买单。象牙塔里的研究理论上该有空间,过去也确实更好,但现在连大学都有应用研究、转化研究的压力,理论家拿经费更难。
第四,也是他最后补的:通用智能这个问题本身就更难。真正对形式化智能感兴趣的人一直有,只是没多少人,也没搞出多少大东西。
到底要不要给智能体一个身体
Lex 问,那蓝图是什么?是在机器人领域,让智能体有身体去探索世界?还是在强化学习领域,像 AlphaZero、AlphaStar 那样在模拟里学?还是在 Transformer 和自然语言处理这条线,去攻开放域对话?
胡特的回答是「是也不是」。
他明确不相信必须有一个物理机器人走来走去才算 AGI。对解决大问题来说,身体更可能是干扰,是把身体和心智搞混了。工业应用、近期应用当然需要机器人,但那是另一回事。
但另一半答案是肯定的。最有希望的路径是有个智能体,可以是虚拟的,在计算机里跟环境交互,最好是 3D 模拟环境,像很多电子游戏那样,在里面训练学习。哪怕你压根没打算把这个算法塞进机器人脑袋,哪怕它就永远待在虚拟现实里,在模拟的 3D 世界里获取经验,对理解世界这件事也可能是必要的。尤其是如果这个智能体需要跟人打交道,你跟它讲把东西叠起来、讲开车,它连虚拟 3D 世界都没接触过,大概率听不懂。
反过来,如果你的路线是纯数学的,造一个只会证定理、越来越强的数学家智能体,那它需要的是在极度抽象的空间里推理。把它塞进 3D 环境可能反而有害。那种情况应该给它一个自己创造的环境。
四本书和一个瞬间
Lex 问哪些书塑造了他。胡特说很难挑出一本,然后给了四本。
第一本,《人工智能:一种现代方法》(Russell & Norvig)。他称之为圣经,覆盖面极广,把各种路线都讲到了。哪怕你只专注一条路线,也该知道其他路线在干什么。这是入门第一本。第四版快出了,里面有深度学习章节,据说是 Ian Goodfellow 写的。
第二本,Sutton 和 Barto 的《强化学习》。写得漂亮。胡特说这书唯一的毛病是让强化学习显得比实际简单太多,太温柔了,读起来很舒服,做几道习题,几天之内就能在玩具问题上跑出结果,感觉自己懂了。真做起来难得多。
第三本,李茉和维塔尼(Li & Vitányi)的《柯尔莫哥洛夫复杂度及其应用》,信息论视角的经典。不过胡特说看几篇短文也就够了,不必啃完整本。
第四本比较特别,Nicholas Alchin 的《知识论》(Theory of Knowledge),国际文凭课程的高中教材。他说
第四本比较特别,Nicholas Alchin 的《知识论》(Theory of Knowledge),国际文凭课程的高中教材。他说第一版第二版最好,第三版把好玩的东西都删了。这书从数学、物理、宗教、科学各个角度追问「我们凭什么知道任何事」,开放性极强,里面还引用《银河系漫游指南》《星球大战》和「鸡为什么过马路」这种段子。读起来有趣,其实相当深。
一份给高中生的教材上了他的推荐单,这个选择本身就说明了他的取向。他不觉得深刻的东西必须以难读的形式出现,反而是那种把大问题摊开、不急着给答案的写法,更能帮人建立起自己的思考框架。
那个瞬间,他先想到了压缩
Lex 问,如果能把生命中的一天重过一遍,挑哪天。
胡特先绕了一下。他说时间在某种意义上也许是涌现现象,过去和未来差不多,那就选未来好了。他开玩笑说,会在未来的某一天把 AIXI 彻底解决掉,然后问出第一个问题:生命的意义是什么。
如果一定要从过去挑,他挑不出一个完整的日子,落点是一个瞬间。
那时他还不知道柯尔莫哥洛夫复杂度这个东西存在。他自己先想到了压缩这套思路,意识到可以用「最短的自解压程序」来衡量信息量。他立刻就知道,这个想法肯定早有人想到过,自己绝不可能是第一个。
但他同时还懂序贯决策。两个东西在心里一碰,他就知道把它们拼起来才是那个正确的东西。
我现在回想那个时刻,还是超级兴奋。(马库斯·胡特)
那个瞬间听起来一点都不戏剧化。他在一家公司写了四年半的软件,做图像插值,搞出一套还不错的新技术,还申请了专利。项目结束后他往上跳了一层:插值的终极最优形式到底是什么?
答案简单得有点荒唐。找一个能完美还原原图的最短程序,那就是最理想的压缩方式。问题从一张具体的图片,一路升到了普适的简洁性概念。
物理学的训练在这里起了作用。他说自己习惯了先忽略计算细节,先去想那个最本质的性质。计算机系的人容易一上来就问「这跑得动吗」,物理系的人先问「这东西在原则上长什么样」。AIXI 就是这么长出来的。
压缩比赛的真正赌注
回到开头那个奖。胡特奖的逻辑链条其实很紧:如果压缩就是理解,那谁能在维基百科上压得比前人更小,谁的压缩器就在某种意义上比前人更聪明。
这个类比有硬支撑。自然语言处理里,困惑度就是压缩长度的另一种叫法;而困惑度和下游任务表现的相关性强到足以上升为行业中间指标。一个能把人类知识压得更小的系统,它必然掌握了更多关于这些知识的结构。结构就是规律,规律就是理解。
所以这个奖的本质,是用一个可测量、可排名、很难作弊的指标,去逼近「智能」这个没法直接测量的东西。压缩率是硬指标,你没法靠吹牛提升它,要么压得更小,要么不行。
这也解释了胡特身上那种挺少见的组合。他做最抽象的数学,AIXI 不可计算,哥德尔机只能证明不能实现;同时又掏出真金白银,办一个任何人都能下载数据、跑一遍、看排名的比赛。理论那条路上,「不可计算」是门票价格,他认了;那就在能实测的地方留一个抓手,让别人有机会沿着压缩这条路往前走。
两条路其实是同一件事的两端。一端是理想化的极限,告诉你最优长什么样;另一端是能跑分的现实指标,告诉你现在走到哪了。中间那段没人画得出来,就只能靠一批人各自摸索。
访谈结尾,Lex 引了爱因斯坦那句话:衡量智力的标准,是改变的能力。放在胡特身上挺贴。他从物理学跳到计算机科学,从图像插值跳到普适归纳,从不可计算的公式跳到可以用几行规则参赛的压缩奖,每次转身都在换一种方式问同一个问题。
你可以从今天开始做的事
- 读 Russell & Norvig 的《人工智能:一种现代方法》第四版,哪怕你只关心一条路线。它是唯一一本让你知道「别人在干什么」的地图。
- 去了解压缩和智能的关系。不必啃柯尔莫哥洛夫复杂度的整本书,读几篇关于最短描述长度和所罗门诺夫归纳的入门文章,再看一眼胡特奖的规则,直觉就建立起来了。
- 做任何模型评估时,顺手看一眼困惑度或压缩率。它跟下游表现的强相关性让它成为成本极低、信息量极高的辅助指标。
- 设计奖励函数时,先想清楚「电梯困境」:你的目标函数有没有可能被一个聪明的系统用你没想到的方式满足。越是看起来简单的问题,越容易翻车。
- 如果你的系统要长期运行,别用固定视野或马尔可夫假设偷懒。把完整交互历史存下来,代价很低,而判断哪些信息该遗忘极难。
- 别把通用性和效率同时当目标。想通用,就得放弃一部分效率;想跑得快,就得接受强假设。清楚自己站在哪一端,比两边都想要更实际。
- 想让系统自主探索,不必手调探索率。把长期规划和贝叶斯不确定性放在一起,探索会自己长出来,而且程度恰好。
- 如果你在做机器人,问一句:这个身体是在帮智能,还是在替智能。很多情况下,虚拟环境里的经验比物理身体更接近问题的核心。
- 找一个能测量、能排名、很难作弊的指标。胡特用压缩率逼近智能,你也可以为自己的领域找这样一个代理量,先跑起来再说。
- 接受「不可计算」这个答案本身的价值。一个跑不动但完全定义清楚的最优解,比十个跑得动但边界模糊的框架更能指导方向。
本集资源与出处
- 视频在 YouTube 收看
- 音频官方 MP3 直链来自 lexfridman.com 官方播客 RSS
- 官网Lex Fridman 官网本集页面
- 文稿HappyScribe 版文稿