激活规则是什么?神经元根据输入决定自己状态的规则
激活规则(Activity Rule),在一些中文资料中也称为激励函数或活动规则,是指神经网络中规定每个神经元如何根据它接收到的输入来更新自己的激活状态的规则。它回答的问题是:一个神经元在收到来自其他神经元的信号之后,应该变成什么状态、输出什么值。
神经网络的三个要素
在描述一个神经网络模型时,人们常常把它分成三个方面来说明:网络的结构,也就是神经元如何连接,有多少层、每层有多少个神经元、哪些神经元之间有连接;激活规则,也就是每个神经元如何根据输入计算自己的输出,这是网络在“运行”时,也就是进行推断时所遵循的规则,它通常在比较短的时间尺度上起作用;学习规则,也就是网络如何根据数据调整连接的权重,这是网络在“学习”时所遵循的规则,通常在较长的时间尺度上起作用,比如反向传播、赫布学习规则。剑桥大学的 David MacKay 在他的教材《信息论、推理与学习算法》中就采用了这样的划分方式。
激活规则包括什么
一个典型的激活规则通常包括两个步骤。第一步,组合输入:神经元把来自其他神经元的输入按照连接的权重进行加权求和,再加上一个偏置,得到一个总的输入,有时也叫“激活值”。第二步,计算输出:把这个总的输入送入一个激活函数,得到神经元的输出。激活函数可以是阶跃函数,输入超过阈值就输出 1,否则输出 0,这是最早的人工神经元模型和感知机所使用的;可以是 Sigmoid、Tanh 这样平滑的挤压函数;也可以是今天深度学习中最常用的 ReLU 函数等。对于随机的神经网络,激活规则可能不是确定的:神经元以一定的概率取某个状态,比如在玻尔兹曼机中,总输入越大,神经元处于激活状态的概率越高。
更新的顺序
对于存在反馈连接的网络,激活规则还需要规定神经元更新状态的顺序。同步更新:在每一步中,所有的神经元同时根据上一步的状态进行更新。异步更新:每次只随机选择一个或几个神经元进行更新,其他的神经元保持不变。在 Hopfield 网络中,更新的方式会影响网络的行为:采用异步更新时,可以证明网络的“能量”会不断下降,最终稳定在某个状态,这个稳定状态就对应着网络存储的某一个记忆。这使得 Hopfield 网络可以用来实现联想记忆:给它一个残缺或带噪声的模式,网络按照激活规则反复更新,最终会回到最接近的那个已存储的完整模式。
在前馈网络中
对于普通的前馈神经网络,比如多层感知机、卷积神经网络,信息只从输入层单向地传到输出层,激活规则就简化为前向传播的过程:从第一层开始,逐层地计算每个神经元的加权和并经过激活函数,把结果传给下一层,直到输出层。在这种情况下,人们更常直接谈论“激活函数”,而较少使用“激活规则”这个说法。