单一感知器模型

一个感知器接受几个二进制的输入,x1,x2,x_1,x_2,\cdots,并产生一个二进制的输出:人工神经元
在该模型中有三个输入,x1,x2,x2x_1,x_2,x_2,通常可以有更多或更少的输入。 引入权重 w1,w2,w_1,w_2,\cdots,表示各输入相应于输出的重要性参数。神经元的输出outputoutput,由分配权重后的总和jwjxj\sum_j{w_jx_j}小于或大于一些阈值来决定,其中阈值是实数,也是神经元的一个参数。因此一个感知器所做的事情就是:
人工神经元

多层感知器模型

下面这个模型具有三层感知器:
人工神经元
在这个网络中,第一层感知器通过权衡输入做出三个较为简单的决定,并将这些结果作为第二层感知器的输入;进而第二层的感知器通过权衡第一层的决策结果做出决定。在这种方式下,第二层中的感知器所做出的决策将比第一层的结果更为复杂与抽象,同样第三层感知器可以进行更为复杂的决策。通过这种方式,一个多层的感知器网络便能从事复杂的决策了。在该模型中,每个感知器都是单输出的,虽然看起来有多个箭头,但这只是方便说明一个感知器的输出被用于多个其他感知器的输入。下面给出两个符号简化:

  1. jwjxj\sum_j{w_jx_j}简记为点乘,即jwjxjwx\sum_j{w_jx_j}\equiv{w\cdot{x}},这里的wwxx分别表示权重向量和输入向量;
  2. 用感知器的偏置bb来表示阈值,即b=thresholdb=-threshold,则可将感知器的规则重写:
    人工神经元
    我们可以将偏置看作一种表示让感知器输出为1的容易程度,当偏置很大时,感知器输出为1是非常容易的,反之,若偏置是一个很小的负数,则很难输出为1。

感知器的逻辑功能

感知器不仅可以依据权重做出决策,还可以用于实现基本的逻辑功能,例如**“与”“或”“与非”**等等。例如下面的这个模型:
人工神经元
该感知器具有两个输入,每个输入的权重为-2,偏置为3,这样我们会有:

  1. 若输入为0000则输出为1,即(2)0+(2)0+3=3>0(-2)*0+(-2)*0+3=3>0
  2. 若输入为1111则输出为0,即(2)1+(2)1+3=1<0(-2)*1+(-2)*1+3=-1<0

这个感知器就实现了一个与非门!这表示我们可以用感知器来计算简单的逻辑功能,实际上感知器网络可以用来计算任何逻辑功能。

实例

我们可以用与非门构造一个电路,它能把两个二进制数x1x_1x2x_2相加。这需要计算按位求和(按位求和即按位异或,是一种逻辑运算指令,按位加运算不考虑进位,运算时相同为0,相异为1,例如101^110=011)得到x1x2x_1\oplus{x_2},同时当x1x_1x2x_2均为11时进位设为11,即进位正好是按位乘积x1x2x_1x_2
人工神经元将该模型中的与非门替换为上一小节的感知器,即具有两个输入且权重为3偏置为4的感知器,那么我们将得到这样的一个感知器网络:
人工神经元
需要注意的地方是最左边感知器的输出被两次用作了底部感知器的输入,实际上,这等价于将两个权重为-2的输入合并为一个权重为-4的输入,即:
人工神经元
其中未被标记的权重均为-2。实际上,我们还可以添加一个额外的感知器作为输入层:
人工神经元
其中
人工神经元
用于标记有一个输出但没有输入的感知器,实际上它不表示一个感知器没有输入,假设我们确实有一个没有输入的感知器,则加权和jwjxj\sum_j{w_jx_j}始终为0,因此感知器的输出完全依赖于偏置bb的取值,即依据bb输出一个固定的值,而我们希望感知器输出一个期望值,因此我们可以认为这种形式的感知器是输出期望值的特殊单元。

相关文章: