在学习一段时间后,开始有些知识有些遗忘,所以整理一下,作为自己的学习笔记,以及帮助其他人学习。其中,大部分参考自《老饼讲解-BP神经网络》,
目录
一、什么是BP神经网络
1.1.BP神经网络原理
bp神经网络全称为Back Propagation Neural Network,简称为BPNN
BP神经网络的原理就像下面的图一样,模仿人的大脑的原理,把看到的东西作为输入,然后经过大脑,最后作为输出。
1.2.BP神经网络结构
BP神经网络在这个思想下,构造了下面的数学模型:
它的数学表达式如下:
这是一个只有一个隐层的BP神经网络(加上输入层、输出层,称为三层BP神经网络),
BP神经网络也可以有多个隐层,多层的BP神经网络结构图如下:
多个隐层的BP神经网络的数学表达式进行套娃就可以了,
学习时先用三层的进行理解,因为三层的使用得较多。
二、BP神经网络如何训练
2.1.BP神经网络的误差函数
BP使用均方差函数来评估网络的误差,它的公式如下:
m,k分别是样本个数与输出变量个数。误差越小,说明模型越好。
2.2.梯度下降算法训练BP神经网络
BP神经网络可以使用梯度下降算法进行训练,梯度下降算法就是先初始化BP神经网络的参数w,b,然后不断地往负梯度方向调整,使得模型的误差越来越小ÿ