从通用图灵机开始讲起
图灵机一开始就是一个“模仿机器 (Imitation Machine)”,这是图灵自己给它起的名字。它告诉我们:计算的本质就是模仿,用有限的原语去模拟无限的可能。
那么问题来了:计算机是否真的“懂”计算?
这个问题听上去很傻,但其实今天全世界几十万人都在问一个同质的问题,“AI 真的懂翻译吗?AI 真的懂推理吗?AI 真的懂写作文吗?”要回答这个问题,我们得回到 1930 年代,去问一声伟大的图灵。
真正的”计算机“
我儿子正在学习加减法,我给他买了一个算盘。算盘有 100 个珠子,简单得不得了。什么叫 3+2?你在第一行拨 3 颗珠子,在第二行拨 2 颗珠子,然后从第一行开始数:1,2,3,4,5;于是 3+2=5,加法完成。这个算盘就是一种计算工具,它直接映射了数与物理结构的关系。
算盘还算简单,我们再说一个更复杂的工具:差分机 (Difference Engine)。这是英国科学家查尔斯·巴贝奇在 19 世纪设计的自动化数学机器。简单来说,它是一台多项式求值机。只要输入多项式的初始值,机器每转动一轮,就会自动输出一个新的数值。比如给它一个函数 F(x)=x²+4,它会依次计算 F(1)=5,F(2)=8,F(3)=13,F(4)=20……一直运转下去。更关键的是,它的底层逻辑其实完全基于加法和减法。
差分机一号需要 25,000 个零件,重达 4 吨,可以处理到第六阶差分,最高存储 16 位数。虽然最终只完成了七分之一,但它的精密程度让当时的人们叹为观止,至今仍被认为是人类进入科技时代的重要起点。
想象一下,如果蒸汽时代沿着这个方向一直发展下去,也许在某个平行宇宙里,一个高度发达的“蒸汽朋克文明”里,所有的数学运算都会由类似差分机的蒸汽计算机来完成。
平行宇宙,蒸汽朋克
想象一下,如果蒸汽时代沿着这个方向一直发展下去,也许在某个平行宇宙里,一个高度发达的“蒸汽朋克文明”里,所有的数学运算都会由类似差分机的蒸汽计算机来完成。那里的工程师会不停改进齿轮与杠杆,制造更大、更快的机械巨兽,负责加法、乘法、多项式求值,甚至天文航算。他们的世界或许会像一座座轰鸣的工厂,每一道蒸汽阀门和齿轮组都承载着人类对“计算”的映射。
但是,这个文明的局限也很明显:每一种运算,都需要一台对应的机器。加法机只能加,乘法机只能乘,差分机只能做多项式展开。社会必须靠一座座庞大的专用机堆叠起来,才能维持运算的需求。这就是“映射机”的宿命:硬件本身就是函数,物理结构直接写死了计算逻辑。
为什么?我们这个宇宙做对了什么?因为我们有图灵。
模仿 vs. 映射
在图灵机以前,人类制造的“专用机”在硬件层面遵循的其实是映射 (mapping)逻辑,而不是模仿 (imitation)。最直观的例子就是我儿子的算盘。每一颗珠子都真实地映射了一个数字,他现在做的 100 以内加减法,每一道题、每一个数字,都直接对应算盘中的某颗珠子。算盘、机械加法器、乘法机、开平方根机——这些机器的零件、齿轮、滑珠,都是对某种数学运算的物理映射。比如 19 世纪的巴贝奇差分机,它庞大的齿轮组旋转角度,直接对应了多项式的系数和结果。再比如早期的机械表或自动机,齿轮和摆锤的结构直接对应时间的推进。在这些机器里,结构本身就是算法:你想要加法,就去造一个“加法结构”;你想要平方根,就必须再造一个“开方结构”。
图灵的伟大之处正在于此。他没有延续“一个运算一台机器”的映射思路,而是提出了模仿机 (The Imitation Machine) 的概念。在 1936 年的论文《On Computable Numbers》中,艾伦·图灵最初把通用图灵机命名为“模仿机器”。它的本质是:一台机器只要能解释另一台机器的描述,并逐步复制它的运算过程,就能完成所有可计算的任务。换句话说,模仿机器就是今天我们所说的通用图灵机 (Universal Turing Machine, UTM)。
这一思想带来了一次巨大的压缩突破:无限多样的计算任务,都可以统一到有限的原语——读、写、移动、状态转移。结果是划时代的:现代计算机由此诞生,人类第一次统一了“什么是计算”。我们再也不需要为每一种运算单独制造一台硬件机,而是只需要一台通用机,所有差异都交给“描述串”去表达,这就是软件的起点。
图灵机之所以叫“模仿机器”,是因为它不再把计算写死在齿轮里,而是通过有限原语模仿任意计算过程。
映射只能一机一能,模仿才是一机通用。
所以,计算到底是不是在计算?模仿计算算不算计算。你一直在模仿计算。
那么预测下一个token呢?模仿的逻辑推理,模仿的写作,模仿的翻译,算不算在翻译?
通用性的开始:找到一套最小原语 + 一条可通用的纸带。
我们再次回到 1936 年的图灵时代。那是一个数学已经相当发达的年代,逻辑学、数论、形式系统在图书馆里堆积成山,却依然碎片化、彼此隔绝。真正的突破,来自于一个跨世纪的思想节点:艾伦·图灵发现,所有这些复杂、庞杂的计算过程,其实都能被还原成极其有限的几个动作。
他定义了一台抽象的机器,它所做的事情只有四种:
读:读取纸带上的符号
写:在纸带上写入新的符号
移动:将读写头向左或向右移动一格
状态转移:根据规则切换机器的内部状态
就这四个动作,构成了计算的最小原语集合。
图灵由此证明:再复杂的算法,再庞大的形式化推理,乃至一个图书馆的所有计算规则,都可以被压缩到这四个原语的组合中去。压缩效应因此诞生:一切计算机、算法和任务,归根结底都只是这四种动作的不同排列与组合。
从这一刻开始,人类第一次有了精确的定义:什么是“可计算” (精确一点:所有递归可计算函数都能被图灵机执行)。任何可以被描述为这四个动作有限步骤的过程,就是计算;任何超出这四个动作所能模拟的,就不在计算的边界之内。
这就是通用性的起点。从一台模仿机开始,人类进入了计算纪元(具体实现还需要冯诺伊曼结构)。
所以呢?我扯了那么多我到底想说啥?!
我想说,另一套最小原语+一条可通用的纸带 又出现了!那就是LLM。
最小原语:LLM 把所有语言任务归约到单一机制:预测下一个 token。
通用纸带:自然语言 + 大语料 = 输入一段 prompt,即可模拟任意语言任务。
从此定义了:什么是“可被模型化的语言意义”。
(2/N)
点击图片查看原图
点击图片查看原图