神经网络算法的研究与应用 数学建模小学期小组作业 理学院 信息与计算科学 2018年07月06日 学院: 专业: 组员: 日期:
1 算法相关概念 目录 2 算法流程 CONTENTS 3 算法实现及应用 4 MATLAB 相关
人工神经网络 是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。神经网络由大量的人工神经元联结进行计算。大多数情况下人工神经网络能在外界信息的基础上改变内部结构,是一种自适应系统,通俗的讲就是具备学习功能。
BP神经网络 反馈神经网络 RBF神经网络 自组织神经网络 感知器神经网络 线性神经网络
BP神经网络算法 反向传播(英语:Backpropagation,缩写为BP)是“误差反向传播”的简称,是用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。
生物神经元结构图 树 突 突触 输 入 输 出 细胞体 轴突 信息处理 传输
权重V 权重W X Y 输入层 输出层 隐含层 人工神经元网络
BP 算法主要阶段: 第1阶段:激励传播 1.(前向传播阶段)将训练输入送入网络以获得激励响应; 2.(反向传播阶段)将激励响应同训练输入对应的目标输出求差,从而获得隐层和输出层的响应误差。
BP 算法主要阶段: 第2阶段:权重更新 1.将输入激励和响应误差相乘,从而获得权重的梯度; 2.将这个梯度乘上一个比例并取反后加到权重上。 这个比例(百分比)将会影响到训练过程的速度和效果,因此成为“训练因子”。梯度的方向指明了误差扩大的方向,因此在更新权重的时候需要对其取反,从而减小权重引起的误差。 第 1 和第 2 阶段可以反复循环迭代,直到网络对输入的响应达到满意的预定的目标范围为止。
BP 算法流程图
1、激活函数 2、隐含层的输出 3、输出层的输出
4、误差的计算 5、权值的更新 6、偏置的更新
算法实现 算法链接
应用实例 Iris数据集 有一批Iris花,已知这批Iris花可分为3个品种,现需要对其进行分类。不同品种的Iris花的花萼长度、花萼宽度、花瓣长度、花瓣宽度会有差异。 我们现有一批已知品种的Iris花的花萼长度、花萼宽度、花瓣长度、花瓣宽度的数据。
MATLAB 神经网络相关工具箱 前向网络创建函数:newcf、newff 和 newfftd 激励函数:logsig、dlogsig、tansig、dtansig、purelin、dpurelin 学习函数:learngd、learngdm 性能函数:mse、msereg 使用 MATLAB 建立前馈神经网络主要使用下面3个函数 newff :前馈网络创建函数 train:训练一个神经网络 sim :使用网络进行仿真
图像处理 相关应用 模式识别 等等 预测分析 信用评估
Thanks 参考资料(以下链接,访问日期均为:2018.7.2) [1]https://zh.wikipedia.org/wiki/%E5%8F%8D%E5%90%91%E4%BC%A0%E6%92%AD%E7%AE%97%E6%B3%95 [2]https://blog.csdn.net/a493823882/article/details/78683445 [3]https://www.cnblogs.com/wangduo/p/5405730.html [4]人工神经网络理论、设计及应用(第二版).韩力群 [5]MATLAB在数学建模中的应用.卓金武