BNN学习笔记2

神经网络入门学习——神经网络的构造

完成日期:2018.04.24


构造一个神经网络

生物体内每个生物神经元有不同的作用,当这些不同种类的神经元依据某种结构联系起来时,就成为神经网络。我们模仿人类大脑,把人工神经网络看成是一种运算模型,由大量的节点(或称神经元)相互连接构成。每个节点代表一种特定的输出函数。每两个节点间的连接都代表一个通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出根据网络的连接方式,权重值和激励函数的不同而不同。

1、线性不可分

我们已经使用感知机解决了逻辑与AND和逻辑或OR的运算问题,可是发现感知机无法解决逻辑异或XOR的问题,因为逻辑异或XOR是线性不可分的。
那么什么是线性不可分呢?
线性可分就是可以用一条直线来区分两类事物
线性不可分就是无法用一条直线区分两类事物
这里写图片描述
如图,AND和OR是线性可分的,而XOR是线性不可分的。
因此在解决XOR的问题是,需要在感知机(神经网络)后再加多一层。

2、多层神经网络

(1)感知机:感知机是一种双层神经网络,一层为输入层(以上我们简化为输入刺激,也就是输入节点不参与计算),另一层具有计算单元,可以通过监督学习建立模式判别的能力。
(2)多层神经网络(也叫前馈神经网络):把由输入的信号源、隐层以及输出组成的层叫作多层神经网络,一个重要的特征是上一层输出只能是下一层的输入,不可跨层链接。
特点:前馈网络的各神经元接收前一级输入,并输出到下一级,无反馈。
节点:输入节点,输出节点。
(3)计算单元:可有任意一个输入,但只有一个输出,输出可耦合到任意多个其他节点的输入。
(4):可见层——输入和输出节点;隐层——中间层。

3、解决XOR问题(解决线性不可分)——利用BP算法调整参数

使用一个两层神经网络可以记忆异或XOR运算,如图:
这里写图片描述
第一层上侧的神经元有净输入:2p1 + 2p2 - 1
它的净输入/输出与p1、p2的关系如图:

p1/p2 0 1
0 -1 step(-1)=0 1 step(1)=1
1 1 step(1)=1 3 step(3)=1

第一层下侧的神经元有净输入:-2p1 - 2p2 + 3
它的净输入/输出与p1、p2的关系如图:

p1/p2 0 1
0 3 step(3)=1 1 step(1)=1
1 1 step(1)=1 -1 step(-1)=0

最后,由输出神经元对两个神经元的数据进行整合,这里使用逻辑与操作,这样就能实现逻辑异或XOR的记忆了。

猜你喜欢

转载自blog.csdn.net/fyinh_/article/details/80063105