其实地上本没有路,走的人多了,也便成了路。
这是鲁迅先生《故乡》一文的最后一句话。不过我们今天并不是要做阅读理解,而是借此一窥学习的本质。我们要谈的学习不是读书学习里狭义的学习,而是指物理和哲学中这种更广义的学习。虽然更广义,但其中的一般性规律依然适用于狭义的情景。
上回我们说到计算是粒子在时空里的特殊编排和模式,它是物理和数学意义上的function,计算的过程就是该动力学物理系统自然演进的过程。所以很自然我们可以想到,学习就是一种计算结构会自己形成这种物质编排,从而越来越好地计算出我们期盼的结果。
程序员把加法运算编写进计算机不是学习,因为该计算编排不是计算机自己形成的,而是我们人类程序员编写的;但是我们用火柴棒教孩子加法后他们知道如何举一反三就是学习,因为他们小脑袋瓜里自己形成了某种计算编排。
其实在我们的日常生活中我们经常能看到所谓有学习能力的事物。鲁迅先生笔下的路就是这样的存在。你也许见过草坪上一条被踩秃的道儿,或者在登山过程中发现前人踩过的痕迹。这些就是路,一个记录着从起点到终点地理信息的物理系统——人类可以配合双足运动在这个物理系统里完成从起点到终点这个 function。而且往往,路的演化和产生也是起点到终点间的最优解涌现的过程。这是一种自然界能看见的学习。
一个可以学习的物理系统应具备两个条件,一个是需要有上篇「计算」章节里提到的灵活性适中的用以做任意运算的物质,而另一个就是系统中具有可塑的物质成分。换句话说,一个学习体必需同时具备计算体和可塑性记忆体的性质。路和人构成的系统中,人提供了计算的部分,环境提供了可塑的部分。在上篇中,我们已经了解过计算体和记忆体,但可塑性还没有说。
可塑性是指物理系统因外力随着时间而改变其形态的能力。上篇在记忆体和计算体的例子里,我都提到了神经网络,事实上神经网络除了能够记忆和计算,还同时具有可塑性。不仅如此,它还无比高效。这也解释了为什么最近几年人工智能和机器学习领域中,神经网络这么受研究者们推崇。下面我们一一说明。
可塑的学习体
这要从加拿大心理学家 Donald Hebb 说起,他在 1949 年的著作《The Organization of Behavior: A Neuropsychological Theory》中提出,如果附近的神经元经常同时激活,这些神经元会慢慢学会彼此捆绑,从而一个被激活,捆绑的神经元也会被激活。在这个理论框架中,我们可以提取出几个关键点:
「经常被同时激活,所以学会彼此捆绑」这个行为其实就是可塑性的表现。
「捆绑」行为可以被理解成神经元 a 和 b 相互认同,而不捆绑就是不认同。这也就是我们在计算篇里说的:作为计算素需要同时具备「是」与「否」的逻辑。
「经常被同时激活,所以学会彼此捆绑」揭示了学习的「奥义」——学习体必需经常暴露在被学习的信息下
神经元层面的「捆绑」学习过程并没有一个中心化的控制结构去掌控全程,学习发生在神经元的一一结对中。这一点看似无关紧要,但它是建模的关键信息。
后来 John Hopfield 在他 1982 年的论文里,以 Hebb 的神经元学习理论为基础,用计算机模拟了一个极其简化的神经元网络。模拟得到,将该网络反复置于某个状态,它可以学会那个状态。这里的「反复置于某个状态」正是我们说的关键点 3。