[机器学习算法]BP神经网络原理简介
M-P神经元模型神经元接收到来自个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收的总输入值将于神经元的阈值进行比较,然后通过“激活函数”处理以产生神经元的输出。感知机与多层网络感知机由两层神经元组成,输入层接收外界输入信号后传递给输出层,输出层是M-P神经元。感知机能容易地实现与、或、非运算。感知机只能解决线性可分问题。要解决非线性可分问...
M-P神经元模型
神经元接收到来自个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收的总输入值将于神经元的阈值进行比较,然后通过“激活函数”处理以产生神经元的输出。
感知机与多层网络
感知机由两层神经元组成,输入层接收外界输入信号后传递给输出层,输出层是M-P神经元。
感知机能容易地实现与、或、非运算。
感知机只能解决线性可分问题。要解决非线性可分问题需要使用多层功能神经元。输出层和输入层之间的一层神经元,被称为隐藏层,其中隐藏层和输出层神经元都是拥有激活函数的功能神经元。
多层前馈神经网络
1、每层神经元与下一层神经元全互连
2、神经元之间不存在同层连接
3、神经元之间不存在隐层连接
神经网路学习的内容
1、连接权
2、阈值
误差逆传播算法(BP算法)
给定训练集,即输入示例由
个属性描述,输出
维实值向量。
下面给出具体的一个例子:
其中输出层第个神经元的阈值用
表示,隐藏层第
个神经元的阈值用
表示。
1、模型评价
均方误差:
2、模型参数
输入层到隐藏层的个权值、隐藏层到输出层的
个权值、
个隐藏神经元的阈值、
个输出层神经元的阈值。
3、参数估计方法
任意参数的更新估计式为:
BP神经网络基于梯度下降,以目标的负梯度方向对参数进行调整,对误差,给定学习率
,以
为例,有:
4、学习率
学习率,控制着算法每一轮迭代的更新步长,若太大则容易震荡,若太小则收敛速度又过慢。
5、目标函数
BP算法的目标函数是最小化训练集上的累计误差。
防止BP神经网络过拟合的方法
1、early stopping:
将数据分成训练集和测试集,训练集用来计算梯度、更新连接权和阈值,验证集用于估计误差,当训练集误差降低但测试集误差升高则停止更新。
2、正则化:
在目标函数中添加描述神经网络复杂度的部分。
更多推荐
所有评论(0)