对于BP神经网络算法,由于之前一直没有应用到项目中,今日偶然之时 进行了学习,
这个算法的基本思路是这样的:不断地迭代优化网络权值,使得输入与输出之间的映射关系与所期望的映射关系一致,利用梯度下降的方法更新调整各层的权值,求目标函数的最小化。
1:初始化网络权值和神经元阈值(最简单的方法是随机初始化);
2:前向算法:这是bp神经网络的经典算法,主要过程是,按照公式一层层计算隐层神经元和输出神经元的Input和Output。
net=x1*w1 + x2*w2 + …..+xn*wn
tanh=(ex-e-x )/(ex+e-x )
Input H=tanh(net );
hidlayer 计算预测向量p=h*wi
3: 后向算法:将前向算法的计算结果,利用公式反向计算修正权值,将输出误差以某种形式通过隐藏层向输入层逐层反传,基于梯度下降法调整权值,
未完待续~~