BP神经网络

人工神经网络(Atificial Neural Networks,ANNs)是人工智能方法的一种,它通过研究人脑的组成机理和思维方式,将许多神经单元按照相应法则彼此互相连接形成复杂的网络系统,模拟人脑结构和工作模式,使得机器具有类似人类的智能。ANNs能够自动调整各个网络神经元之间的连接权值,具有强大的自学习能力和高度非线性拟合能力。

1  数学模型

神经元是ANNs的基本处理单元,对于任一个神经元,其基本模型如图6.1。其中有个输入分量,每个分量通过权值与该神经元相连,则输入矩阵、权值矩阵和输出满足下式: 

式中,为神经元传递函数,通常分为阈值型、线性型和S型等。

阈值型传递函数为

      线性型传递函数为

S型传递函数为

2  BP神经网络

将多个神经元连接起来,即为神经网络。ANNs通常分为前馈神经网络和反馈神经网络,最常用的是BP(Back Propagation)神经网络。BP神经网络是一种误差反向传播的前馈神经网络,其结构示意如图6.2,包含输入层、隐含层和输出层。对于输入层和输出层,其节点数(即神经元数)分别与输入变量个数和输出变量个数一致;隐含层的节点数过少会导致网络精度不满足要求,过多会导致学习过程复杂,耗时长,因此需要不断试验找到合适的值。

假定输入样本为,输入层节点数为,隐含层节点数为,传递函数为,隐含层的输入和输出变量为和,输入层与隐含层连接权值矩阵为,输出层节点数为,传递函数为,输出层的输入与输出变量为和,

  1. 隐含层与输出层连接权值矩阵为,目标输出为。

隐含层中第个节点的输入和输出为

输出层中第个节点的输入和输出为

输出变量与目标值之间的误差为

采用梯度下降法对权值进行优化,保证中误差最小:

式中,为输入层第个节点与隐含层第个节点之间的权值调整值,为隐含层第个节点与输出层第个节点之间的权值调整值,为学习率。

BP神经网络隐含层采用S型传递函数,输出层采用线性传递函数。选定输入和输出样本后,定义隐含层节点数及学习率,通过不断迭代,使得系统误差达到最优,从而得到最优解对应的权值矩阵。

你可能感兴趣的:(人工智能)