你肯定刷到过“AI即将自我进化成神”的帖子,但没人告诉你,控制论早在四十年前就给出了一个残酷的数学判决!
为什么AI越聪明,反而越危险?递归自我改进的稳定性困局,藏着一个反直觉的真相:进步速度不取决于算力,而取决于你能多快拿到可信的“现实反馈”。
递归自我改进被寄予厚望,但控制论的小增益定理与Rohrs反例揭示,自我改进回路的增益一旦超过安全边界,系统就会在看似平稳后突然崩溃。真正的瓶颈是现实世界互动的摩擦,稳定才是速度上限。
你以为的智能爆炸,其实是个音频啸叫问题
想象你站在一个礼堂里,手里拿着麦克风,对面是一排音响,你把音量推高,声音从音响出来又被麦克风收回去,再放大,再出来,再收回去,三秒钟之内,整个房间就会被一阵刺耳的尖啸淹没。控制工程师管这叫“反馈回路增益超过了一”,用大白话说就是:每一圈循环,系统不仅没收敛,反而把上一圈的输出放大了更多倍,能量像滚雪球一样失控。
递归自我改进在数学结构上,跟这个啸叫回路是一模一样的。
一个AI模型评估自己,找出短板,生成改进方案,重写自己的代码或参数,变强之后再用更强的能力去评估、修改、再变强。每一圈循环,系统都在拿“自己对自己的评估”当作行动依据,而这个评估的可靠性,取决于它对自己有多了解,然而恰恰在它对自身认知最薄弱的区域,它优化得最猛,陷得最深。
控制论里有一个叫小增益定理的结论,它说得很直白:反馈回路要保持稳定,环路中各个环节的放大倍数的乘积必须严格小于一。把这个定理翻译到递归自我改进的场景里,增益就是“每单位可信证据能支撑多大的改动”。证据扎实,小改动换来稳步提升,增益低,回路稳定;证据稀薄,却想一步登天,增益就飙上去了,回路开始振荡。
事情没那么简单!整个递归自我改进的叙事魅力,恰恰在于高增益,一次评估就能带来巨大跃迁,像坐上火箭。但控制理论告诉你,高增益和高稳定性在数学上就是一对死对头。
那些“先稳后炸”的系统,藏着最危险的秘密
上世纪八十年代,自适应控制是工程界最火的方向之一。工程师们设计出一种控制器,它能在线修改自己对被控对象的数学模型,边跑边学,听上去跟今天的自我改进AI如出一辙。到八十年代初,学术界已经拿出了不少“全局稳定性证明”,白纸黑字,数学上无懈可击。
然后麻省理工学院的研究者Rohrs站了出来,做了一组仿真实验。
他拿那些被证明“绝对稳定”的自适应控制策略,去控制一些在假设条件上做了“轻微但现实”偏离的对象,比如真实系统里总会有一些高频的、建模时被忽略的动态特性。结果呢?系统直接失控了。原本在理想模型下表现完美的控制器,面对一点点“没被写进模型里的现实”,就崩溃了。
这就怪了!数学证明明明说稳定,怎么一碰真实世界就炸?
因为证明的前提条件被悄悄破坏了。你造了一个控制器,它的自我模型是你手里那张地图,但真实地形上有一块你没标注的悬崖。控制器越是卖力地按照地图去“优化”,就越快地把系统推下悬崖。
更让人后背发凉的是这类系统崩溃的方式。它不会在你按下启动键的那一刻就爆炸,它先跑得很好,甚至非常好,连续几天、几周,一切指标都完美。然后,在某个你完全不觉得会有问题的时刻,它突然开始剧烈振荡,行为变得不可预测,而更诡异的是,它有时候闹一阵子之后,又自己安静下来了,好像什么都没发生过。
这就是“突发振荡”现象。它意味着你没法通过短期观察来判断一个自我改进系统是否安全,跑了很久不出问题,不代表它稳定,可能只是在积累误差。
系统的盲区,恰好是它最自信的地方
问题的根源,控制理论给了一个精确的名字:持续激励丧失。
在自适应控制里,持续激励指的是输入信号必须持续包含足够丰富的频率成分,才能让系统持续地“看清”被控对象的真实特性。一旦输入信号变得单一、重复、缺乏变化,系统就会停止学习,但它的参数并不会乖乖停在原地,而是会沿着一个“不受约束的方向”慢慢漂移。它自己感觉一切正常,因为误差信号看起来很小,但它对真实世界的理解正在一点一点偏离。
你把这个逻辑套到AI的自我改进上,会发现严丝合缝的对位。
AI模型在它训练数据覆盖的范围内表现优秀,一旦碰到分布之外的场景,它的自我评估就会失灵。而自我改进的回路结构决定了:模型拿自己的判断当反馈信号,它对自己最不了解的领域,恰恰最可能给出过度自信的评分;它越是对某个方向缺少真实经验,就越倾向于在那个方向做出激进修改,因为它的自我模型在那个区域几乎是一片空白,空白意味着没有约束,没有约束意味着修改可以无限大。
演化用了三十八亿年,文明用了几千年,它们的共同特征是什么?慢。相对于反馈信号的速度,它们慢得几乎静止。每一代基因变异要等一代个体繁殖,每一条社会制度的调整要等一代人验证后果,没有任何一个单一主体同时掌握“修改权力”和“评估权力”。
踩下刹车,比踩油门更需要技术
Rohrs的反例之后,自适应控制领域花了整整十年,把研究重心从“追求最高性能”转向了“把鲁棒性嵌进算法里”。这场转向的代价是明确的:放弃一部分峰值性能,换取更大的稳定裕度。
这套思路可以直接搬过来,管住递归自我改进的失控风险。
第一件事,把误差压到噪声地板以下时,停止继续调整。每次修改都意味着系统离开已验证的安全状态,如果当前误差已经小到跟测量噪声差不多,继续调整带来的“提升”大概率是幻觉,而系统承担的风险却是实实在在的。
第二件事,给参数系上绳子。不要允许单次修改无限远离最近一次经过完整验证的检查点。这条绳子可以是一组距离约束,也可以是一个可信先验的锚定,作用是让系统永远有一个“已知安全”的退路可以回去。
第三件事,把跑满分的测试集当成坏掉的传感器。一个基准测试如果被刷到了满分,说明它已经分辨不出真正的能力提升了,继续拿它当反馈信号,等于对着一个死掉的仪表盘调方向。
证据的速度,就是智能的速度上限
回到那个最核心的问题:递归自我改进到底能跑多快?
答案取决于你能多快地生成“可信的、可验证的证据”来证明某一次改动确实是进步。算力可以堆,参数可以扩,训练可以并行,但“这个改动在真实世界中确实有效”这个判断,你没办法压缩到零时间。它需要跟现实接触,需要等待后果展开,需要经历足够多样的场景来暴露那些被忽略的动态。
有人会说,仿真可以加速这个过程。可以生成海量模拟场景,快速筛选改动方案。
但是仿真存在一个根本性的陷阱:仿真环境本身就是你写出来的,你写进去的假设决定了仿真的边界,而真实世界的复杂性永远溢出任何仿真的范围。你在仿真里跑通了一万遍,不代表第一万零一次面对真实世界时不会崩。
还有一个反直觉的判断:一个“看起来在飞速自我改进”的系统,它的实际稳定裕度可能已经薄得像纸。它反馈回路的增益在变大,而增益越大,稳定边界越窄,微小的扰动就越可能触发振荡。速度和安全在这件事上的关系,不是可以同时优化的两个目标,而是一个直接对抗的权衡。
系统的改动速度受限于证据生成速度,证据来自现实接触,现实接触有物理摩擦,这个摩擦不因为算力增加而减小。所以稳定才是速度上限。
那个还没被回答的问题
有一组实验数据至今没有让人完全消化:在无外部验证的递归推理循环中,信息变化量在最初几轮迭代后迅速衰减,模型表面上还在“反思”,实际上只是在用自己的输出喂养自己,信息熵持续收缩,看起来越来越自信,但实质上什么都没学到。当研究人员在第三轮迭代时插入一个极简的外部验证步骤——只做一次——信息变化量立刻回升了百分之二十八,并且在后续迭代中保持非零。
一次验证,只做一次,就能把系统从死循环里拽出来。
但这里有一个巨大的空白:那次验证的“正确率”是多少?如果验证本身有百分之五的错误率,递归若干轮之后,这百分之五的噪声会被系统放大成什么?如果验证在第三轮有效,那在第十轮插入还有效吗?没有人知道。
这个数据缺口指向一个比“能不能自我改进”更棘手的问题:在递归回路里,验证信号的微小瑕疵会被积累和放大到什么程度,以及是否存在一个迭代轮次的临界点,过了那个点,再好的验证也拉不回来。这个问题没有答案,但它可能才是决定递归自我改进最终形态的关键变量。