神经网络之父 Geoff Hinton 推翻毕生心血「反向传播演算法」:打掉重来,AI 才有未来!(2)

为什么 Hinton 觉得「不需要所有数据都标签」,用意何在?

你可以这样想像,人类每天无时无刻不在接受讯息,遇到的「题目」各式各样;但是我们的「答案」很少,我们可能看过各种各样的人,各种各样的动物。但实际上,可能一生中,别人给你指出「这是猫」的次数屈指可数。

可仅仅是那一两次的提示(相当于一两个标签),你就能在一生中记得这些概念。甚至别人从不曾告诉这是猫,你也知道这应该不是狗或者其他你知道的动物。这种「没有答案」的学习被称为「无监督学习」,但目前机器学习在「无监督学习」方面进展很少。

但是,在我们把这一重要能力丢掉之前,先从更通用的角度看一下目标函数的目的。目标函数是对自动化内部模型预测所处环境的准确率的评估。任何智能自动化的目的都是构建准确率高的内部模型。但是,模型和它一直或持续所处的环境之间不需要任何评估。也就是说, 自动化不需要执行反向传播进行学习。自动化可以通过其他途径改善其内部模型。

无监督学习
其他途径就是「想像力」(imagination)或「做梦」(dreaming),不用立刻把预测与事实对比然后更新参数。今天最接近的体现就是生成对抗网络(GAN)。 GAN 包括两个网络:生成器和鉴别器。你可以把鉴别器当作使用目标函数的神经网络,即它可以用现实验证内部生成器网络。生成器自动化创造近似现实。 GAN 网络使用反向传播,执行无监督学习。因此,无监督学习可能不需要目标函数,但它或许仍然需要反向传播。

看待无监督学习的另一种方式是,某种程度上,它是一种元学习。系统不需要监督训练数据的一种可能原因是人工神经网络算法已经开发出自己的最佳内部模型。也就是说,仍然存在一定程度的监督,只不过在学习算法中更加隐晦。学习算法如何具备这种能力尚不可知。

总之,现在判断我们是否可以抛弃反向传播还为时尚早。我们当然可以使用没有那么严格的反向传播(即合成梯度或其他启发)。但是,逐步学习(或称爬山法)仍然是必要的。我当然对找到驳斥逐步学习或爬山法的研究很感兴趣。这实际上可以类比为宇宙的运行,具体来说就是热力学的第二定律。再具体点就是熵一直在提高。讯息引擎将降低熵,以交换所处环境中的熵提高。因此,没有一种方法可以完全避免梯度,除非存在「永动信息机器」(perpetual motion information machine)。

Geoffrey Hinton 提出新概念「capsule」
Hinton 与他的 Google 同事 Sara Sabour 和 Nicholas Frosst 共同完成的论文《Dynamic Routing Between Capsules》已被 NIPS 2017 大会接收,他们在研究中提出的 capsule 概念正是 Hinton 对于未来人工智能形态的探索。不可否认的是,在无监督学习的道路上,我们还有很长的一段路要走。

反向传播的推导过程
神经网络在权重的变化和目标函数的变化之间不再是线性关系。在特定层级的任何扰动(perturbation)将会在连续层级中进一步变化。那么,我们该如何计算神经网络中所有权重的梯度,从而进一步使用梯度下降法(最速下降法)呢?这也就是我们为什么要使用反向传播算法的地方。反向传播算法的核心即对整个网络所有可能的路径重复使用链式法则。反向传播算法真正强大的地方在于它是动态规划的, 我们可以重复使用中间结果计算梯度下降。因为它是通过神经网络由后向前传播误差,并优化每一个神经节点之间的权重,所以这种算法就称之为反向传播算法(backpropagation algorithm)。实际上神经网络反向传播与前向传播有紧密的联系,只不过反向传播算法不是通过神经网络由前向后传播数据,而是由后向前传播误差。

大多数反向传播算法的解释都是直接从一般理论推导开始,但是如果从手动计算梯度开始,那么就能很自然地推导出反向传播算法本身。虽然下面的推导部分较长,但我们认为从数学基本理论开始是最好的方式来了解反向传播算法。

下文由单路径神经网络开始,进而推广到存在多层和多个神经元的神经网络,最后再推导出一般的反向传播算法。

发表评论

电子邮件地址不会被公开。 必填项已用*标注