废弃的手稿--供存档用
目录
- 前言
- 所有世界中最可能的世界
- 可以储存知识的人造小宇宙
- 词与物
- 我想和这个世界谈谈
1. 前言
据说有件事令人觉得悲伤,那就是蚂蚁不能测透蚁群的计划,神经元也不能理解大脑的决定;我们作为孤独个体,在时代和命运的狂风骇浪前脆弱得如风中的蒲公英。
然而真是如此吗?牛顿的伟大领悟告诉我们,天上规律和地上规律完全是同一套规律,在某种意义上恒星和苹果并无不同。是否我们可以提出一个更具野心的猜想:低能智慧体和高能智慧体的逻辑也是同一套,在某种意义上,一个人的思考与全人类的共同思考也并无不同?丘奇-图灵定理给了我们最初的信心,沃夫兰关于通用计算的讨论给了我们更大的支持。
在本文里,我们就要踏上这个充满野心的征途,讨论我们是否最终能对社会大脑一窥究竟,弄明白一个社区,一个国家在“想些什么”。
2. 所有世界中最可能的世界
2.1 一个玩具模型
让我们考虑一个简单的组合问题:手上有4个玩具球,每个球可以取1~4份能量,要求总能量为4份。一共有多少种不同的可能性?
让一个球独占4份能量,其他3个球都没有能量,这种情况就满足我们的条件,这种情况一共4种。
其他分配情况对应的情况如上表所示。nk代表具有k份能量的小球数。上表每一行在小球的能级分布上没有区别(例如,图1的四个小图在y轴上是没有区别的),统计力学里管这个叫宏观态。每一个宏观态都满足两个条件
![Eq.2.1.1](http://latex.codecogs.com/svg.latex?\sum_k n_k=4)
![Eq.2.1.2](http://latex.codecogs.com/svg.latex?\sum_k kn_k=4)
也就是说总小球数目和总能量数目固定,为事先给定的值。这是我们这个系统在具体分配之前就定好的。把表1中所有可能情况加起来等于35。假设每种情况分别对应着一个可能的世界(统计力学里叫微观态),那么如果我们遍历所有世界,遇到能量为0的小球的期望值为
![Eq.2.1.3](http://latex.codecogs.com/svg.latex?\bar n_0=\frac{4}{35}3+\frac{12}{35}2+\frac{6}{35}2+\frac{12}{35}1+\frac{1}{35}*0 \approx 1.71)
其中每一部分,前项为踏进这个世界的概率,后项为该世界里能量为0的小球的数量。
类似地,我们可以计算所有其他能量的小球出现次数为
![Eq.2.1.4](http://latex.codecogs.com/svg.latex?\bar n_1\approx 1.14, n_2\approx 0.69, n_3\approx 0.34, n_4\approx 0.11, n_5=0.)
把它们画出来,呈指数状快速下降。是不是长得很像玻尔兹曼分布?你看,我们已经证明了统计力学的基石了。
2.2 再来一个玩具模型
现在,我们考虑不同宏观态出现的概率是如何随着系统规模增大迅速拉开差距的。
假设系统中只有三种小球,分别携带0份,1份和2份能量。其数量分别是n0,n1,n2个,Eq.2.1.1和Eq.2.1.2写成
有
一般地,一个能级分布(宏观态)所对应的微观态数量t为
其中N是系统中粒子(玩具小球)的总数, nk是具有k份能量的小球数量。N!就是把N个粒子摆放成不同格局可以形成的排列总数。之所以要除以分母中的一堆nk阶乘,是因为在这个能级上的小球互换位置,形成nk!种摆放,对微观态是没有影响的。
让我们回到上一节的小球模型验证一下
类似地,t2=12, t3=6, t4=12, t4=1,验证无误。
这样,我们就可以把t写成关于n2的函数了:
![Eq.2.2.x][Eq.2.2.x]
[Eq.2.2.x]:http://latex.codecogs.com/svg.latex?t=f(n_2)=\frac{N!}{n_0!n_1!n_2!}=\frac{N!}{(N-U+2n_2)!(U-2n_2)!n_2!}
不失一般性地,我们假设U=N/2以消除U,令上式只剩下一个参数,我们就可以分析在N不同时n2与t的关系了。
上图横轴是n2/N,也就是具有两份能量的玩具球的比例。需要注意的是,因为n0, n1都是n2的线性函数,所以这个n2一旦确定,n0, n1也随之确定,换言之,整个系统的小球能量概率分布都完全确定了。
上图中曲线上的点对应一个系统的宏观态,我们发现,随着系统规模的扩大,平衡态(n2/N约等于0.12左右)迅速击败了其他宏观态,攫取了大部分的概率。注意这里的小球只有三个能级,小球总数最多只有500个,可以想象在真实的粒子系统中摩尔级(10^23)的小球数量在一个相当大的能量范围内分布时,平衡态是如何变得坚不可摧了。
2.3 认真点分析,好吗?
对于我们以上的分析,可能许多人,特别是学过统计力学课的人,会称赞道:
"什么鬼啊?"
现在,让我们动点真格的。也就是说,用各种奇怪的字母代替数字以显示我们的水平。现在我们的任务,是找出所有平行世界里最可能的那个世界,也就是说,对应着最多微观态的宏观态。
那么,如何才能让这个t值取最大呢?真实系统中的粒子数量极大,不可能像玩具模型一样把每一种可能性都算出来。我们对t进行变形,利用lnt是t的单调函数的性质,将t变形成lnt并且考虑,当lnt取极大值时,它的在每个能量级上的一阶微分等于0。利用Stirling公式
对Eq.2.2.2进行变化得到
![Eq.2.2.4][Eq.2.2.4]
[Eq.2.2.4]:http://latex.codecogs.com/svg.latex?ln(t)=NlnN-N-\sum_k(n_{k}ln(n){k}-n{k})
Eq.2.2.4对nk求导得到
![Eq.2.2.5][Eq.2.2.5]
[Eq.2.2.5]:http://latex.codecogs.com/svg.latex?d(lnt)=-\sum_{k}ln(n_k)dn_{k}=0
从Eq.2.1.1,Eq.2.1.2可以得到
![Eq.2.2.6](http://latex.codecogs.com/svg.latex?dN=\sum_k dn_k=0)
![Eq.2.2.7](http://latex.codecogs.com/svg.latex?dU=\sum_k kdn_k=0)
其中N、U分别是系统内总粒子数和总能量。
我们可以引入两个参数把Eq.2.2.5, Eq.2.2.6, 和Eq.2.2.7写在一起:
![Eq.2.2.8][Eq.2.2.8]
[Eq.2.2.8]:http://latex.codecogs.com/svg.latex?-\sum_k(ln(n_k)-\alpha-\beta{k})dn_k=0
于是有
![Eq.2.2.9][Eq.2.2.9]
[Eq.2.2.9]:http://latex.codecogs.com/svg.latex?ln(n_k)-\alpha-\beta{k}=0
即
![Eq.2.2.10](http://latex.codecogs.com/svg.latex?n_k=e^\alpha e^{\beta k})
这样,我们就已经得到了玻尔兹曼分布的基本形式,可将上式归一化成
![Eq.2.2.11](http://latex.codecogs.com/svg.latex?n_k=\frac{N}{Z} e^{\beta k})
其中Z是归一化项
![Eq.2.2.12](http://latex.codecogs.com/svg.latex?Z=\sum_k e^{\beta k})
beta<0控制着指数下降的速度。beta<0越小,粒子数随能级升高减少得越厉害。此时低能量状态比高能量状态更容易被抽到(?)。所以beta联系着系统总能量与系统的微观态数目关系。在实际物理系统中可以推得
![Eq.2.2.18](http://latex.codecogs.com/svg.latex?\beta =-\frac{1}{KT})
其中K是玻尔兹曼常数,T是温度。所以温度越高,beta<0越小,低能状态也就越容易被抽到。
2.4 小结
所谓的平衡态和稳定,是从宏观观测的角度而言。实际上粒子系统在正在快速地遍历着各种微观态,一点也不稳定,但是因为这个宏观态对应的微观态数目太多了,以至于在宇宙灭亡之前,我们也看不到系统出现与别的宏观态对应的微观态了。
3 可以储存知识的人造小宇宙
3.1 连接主义与符号主义的争论
人脑究竟如何推理和储存记忆,据说仍然没有定论。最近深度学习方法的盛行,使人工智能思潮里的连接主义在与符号主义的博弈中占了上风。
符号主义的基本思想是,智能就是对符号根据一定规则进行处理的能力,成果包括自动定理证明和符号计算(例如使用Mathematica解微积分方程)。对符号主义来说,计算的工作物质及其在计算过程中产生的变化是不值得关注的。
与符号主义这种高度抽象的思路很不同,连接主义对智能的理解是非常“形而下”的。以连接主义的典型代表人工神经网络为例,在学习过程中神经网络的连接结构不断变化,这就已经是智能本身了。
显然,符号主义与连接主义是互相看不上的。前者嫌弃后者不够深刻,后者嫌弃前者脱离实际。在这一节中,我们要关注一下连接主义,讨论神经网络,但不是从传统的Hopfiled网络开始讲述神经网络的沿革,而是采取一个非常不同寻常的视角:统计力学的视角。
看到这里,你应该已经猜到我要讨论玻尔兹曼机了。但是,即便你对神经网络和玻尔兹曼机有一定了解,我也请求你暂时忘记那些背景知识,让我们沿着上一章的思路继续思考。
3.2 玻尔兹曼小宇宙
根据上一章的推理,我们已经知道一个封闭的粒子系统,在满足总粒子数和总能量数不变的情况下,会抵达一个稳定状态或者最可能的状态。自然界大量存在着这样的系统,例如混合的一杯热水和一杯冷水,最终收敛在水温均匀的状态。
那么,我们能不能人工地制造出这样一个系统呢?我们考虑一个有N个粒子的系统,假设每个粒子可以与所有其他粒子互动,形成N(N-1)/2条连边。这就是我们的“人造小宇宙”。在小宇宙内,互动的规则是,每个粒子接受所有其他粒子通过连边传递的总能量,一旦总能量超过阈值theta_i,则继续在系统内传递能量,否者把能量耗散到外部世界去)。
对于这样一个系统,其能量可以被定义为:
![Eq.3.2.1][Eq.3.2.1]
[Eq.3.2.1]:http://latex.codecogs.com/svg.latex?E=-(\sum_{i<j}w_{ij},s_i,s_j+\sum_i\theta_i,s_i)
其中si或sj代表粒子所处的状态,可以是0或者1。wij代表两个粒子之间的权重。在初始状态下,可以取随机数。theta是粒子自带的阈值,粒子彼此之间不一样,但并不随时间变化,是个常数参数。
接下来,我们给这个小宇宙制定“物理规律”。与真实世界相反,我们是先决定这个宇宙的宏观态演化规律再反推到粒子的行为。
受真实粒子系统启发,我们要求这个系统经时间演化进入稳定态。且在这个过程中系统的概率与其能量存在如下关系:
![Eq.3.2.2](http://latex.codecogs.com/svg.latex?P_i =e^\frac{-E_i}{T})
也就是随着系统能量升高,其出现的概率指数下降,这个过程受一个类似于“温度”的参数控制。如何实现这点呢?这就要求我们做如下分析:
保持系统中其他粒子状态不变,任取一个粒子i从0激活成1,所带来的能量改变是:
![Eq.3.2.3][Eq.3.2.3]
[Eq.3.2.3]:http://latex.codecogs.com/svg.latex?\Delta{E_i}=E_\text{i=off}-E_\text{i=on}=\sum_jw_{ij},s_j+\theta_i
将Eq.3.2.2变形为
后带入Eq.3.2.3得
再考虑到一个粒子要么激活要么不激活,即
可从Eq.3.2.5得到
![Eq.3.2.7][Eq.3.2.7]
[Eq.3.2.7]:http://latex.codecogs.com/svg.latex?p_\text{i=on}=\frac{1}{1+\exp(-\frac{\Delta{E_i}}{T})}
回顾上述分析,我们通过写下两个条件,一个是对系统能量与概率之间关系的规定,一个是对系统能量在粒子层面的表达,从而巧妙地从系统的演化规律导出了粒子的激活概率。反过来说,只要粒子激活遵循Eq.3.2.7,我们就可以保证系统的最可能分布是玻尔兹曼分布,并且在模拟中朝这个方向演化。这就是为什么这个系统被称为玻尔兹曼机。