神经网络反向传播算法原理笔记 |
您所在的位置:网站首页 › 反向传播神经网络模型 › 神经网络反向传播算法原理笔记 |
神经网络是一种是基于生物学中神经网络的基本原理,在理解和抽象了人脑结构和外界刺激响应机制后,以网络拓扑知识为理论基础,模拟人脑的神经系统对复杂信息的处理机制的一种数学模型。该模型以并行分布的处理能力、高容错性、智能化和自学习等能力为特征,将信息的加工和存储结合在一起,以其独特的知识表示方式和智能化的自适应学习能力,引起各学科领域的关注。它实际上是一个有大量简单元件相互连接而成的复杂网络,具有高度的非线性,能够进行复杂的逻辑操作和非线性关系实现的系统。 神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激活函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重(weight),神经网络就是通过这种方式来模拟人类的记忆。网络的输出则取决于网络的结构、网络的连接方式、权重和激活函数。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。神经网络的构筑理念是受到生物的神经网络运作启发而产生的。人工神经网络则是把对生物神经网络的认识与数学统计模型相结合,借助数学统计工具来实现。另一方面在人工智能学的人工感知领域,通过数学统计学的方法,使神经网络能够具备类似于人的决定能力和简单的判断能力。 神经网络架构: 多层感知器的前向传播: 第一步:前向传播 网络中所有的权重都是随机分配的。现在考虑上图中标注 V 的隐藏层节点。假设从输入连接到这些节点的权重分别为 w1、w2 和 w3(如图上图所示)。 神经网络会将第一个训练样本作为输入(已知在输入为 35 和 67 的情况下,通过的概率为 1)。 网络的输入=[35, 67] 期望的网络输出(目标)=[1, 0] 涉及到的节点的输出 V 可以按如下方式计算(f 是类似 Sigmoid 的激活函数): V = f(1w1 + 35w2 + 67*w3) 第二步:反向传播和权重更新 计算输出节点的总误差,并将这些误差用反向传播算法传播回网络,以计算梯度。接下来,使用类似梯度下降之类的算法来「调整」网络中的所有权重,目的是减少输出层的误差。下图展示了这一过程(暂时忽略图中的数学等式)。 假设附给节点的新权重分别是 w4,w5 和 w6(在反向传播和权重调整之后)。 在同样的输入下,多层感知器网络有更好的表现: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |