计算机视觉-神经网络与BP算法

神经网络

定义

大量(结构简单、功能接近)的神经元节点按一定体系架构连接成的网状结构。

作用

  • 分类
  • 模式识别
  • 连续值预测

目标

建立输入与输出的映射关系

神经元模型

定义

每个神经元都是一个结构相似的独立单元,它接受前一层传来的数据,并将这些数据的加权输入非线性作用函数中,最后将非线性作用函数的输出结果传递给后一层。
计算机视觉-神经网络与BP算法
计算机视觉-神经网络与BP算法
非线性函数f称为**函数

**函数

计算机视觉-神经网络与BP算法
上图为两种**函数,分别为sigmoid函数跟tanh函数。
他们分别能把输入映射为(0,1)和(-1,1)。
另外分别对他们求导有如下特征:
计算机视觉-神经网络与BP算法
计算机视觉-神经网络与BP算法
可以简化后面的计算过程。

基础神经网络

计算机视觉-神经网络与BP算法
一般有输入层,隐含层和输出层。
传统的浅层网络,一般有3-5层。
计算机视觉-神经网络与BP算法

Delta学习规则

跟后面例子没什么关系,主要在于提示神经网络的调整方式。
计算机视觉-神经网络与BP算法

前馈神经网络

  • 无反馈
  • 同层神经元无互相连接

目标函数

计算机视觉-神经网络与BP算法

梯度下降

计算机视觉-神经网络与BP算法

梯度计算

1.输出层权重改变量

计算机视觉-神经网络与BP算法

2.隐藏层权重改变量

计算机视觉-神经网络与BP算法
计算机视觉-神经网络与BP算法

误差传播公式

计算机视觉-神经网络与BP算法
上面yj是单个神经元的输入,配合隐含层计算得上一层的权重。
计算机视觉-神经网络与BP算法

BP算法

1986年Rumelhart等提出的误差反向传播法,即BP(error BackPropagation)

例子

计算机视觉-神经网络与BP算法
计算机视觉-神经网络与BP算法
计算机视觉-神经网络与BP算法