人工神经网络是模拟人脑的神经网络,用以实现人工智能的机器学习技术。我们知道,人脑可以说是世界上最复杂最精妙的系统之一,它由千亿计的神经元细胞组成。各个神经细胞相互链接,彼此之间传递电信号。从而造就了人类高于其他物种的思维能力。科学家受到人脑神经元的启发从而提出了人工神经网络的设想,使得人工智能的实现不再遥不可及。
关键部件: 树突 & 胞体 & 轴突
显而易见,这个简单的阶跃函数在输入信号大于T(阙值)时才会产生输出信号1(被激发),而较小的输入时输出为0(被抑制);我们称这样的函数为激活函数。当然,激活函数不会就只有这么一种。常用的还有sigmoid函数:
函数图像:
可以发现,sigmoid函数相对于阶跃函数而言更加平滑,自然,接近现实。我们的神经网络也将采用它。 如此一来,我们的单个神经元模型就成型了:
参数含义:
为输出信号
为权重值,表示各个输入信号对输出结果的影响力大小。对于为何引入权值可以做如下思考:你去相亲,你对未来对象的考量主要有身高,长相,身材,文化程度等,但遇到样样都好的概率实在是太底了,所以你决定适当放宽某些要求。比如如果学历高就可以降低身材长相的要求。这表示你比较注重伴侣的文化程度。因此,对方的文化程度对你的择偶有着重要的影响,其所占权重就会比较高。
后将所得的值传给激活函数Sigmoid即:
观察函数图不难发现,Sigmoid函数将加权求和的输入映射到0~1的值域内输出。
介绍完单个神经元的功能,如果把这些小部件组合起来,就成了所谓的人工神经网络。 层次结构:
链接方式:
参数释义:
信号的前向传播: 前面我们介绍了单个人工神经元对信号的处理。但是现在网络中有多个神经元,我们当然不愿意对每一个神经元节点都进行编码计算,因此我们将其简化为矩阵运算。
这里需要注意的是,输入层到隐藏层的链接权重矩阵与隐藏层到输出成的链接权重矩阵是不同的矩阵。但是计算过程是一致的,因此同理可得:
网络的最终输出为:
到此,我们已经了解了神经网络中信号的前向传播机制,但是目前这个网络模型远远达不到我们的要求,它除了单纯的传播信号什么事情也做不了。显然后续我们得为其添加反馈机制,使其能够具有学习能力。