- 80
- 0
- 约8.25千字
- 约 10页
- 2020-07-27 发布于浙江
- 举报
Feedforward Neural Networks
江南大学-数媒学院-许鹏
Outline
Deep Learning
监督
非监督
Deep Learning
Cognitive Science
M-P Neuron Model
● 即一个神经元接收来自其他n个神经元的输入,输入信号通过带权重的连接传递,
然后将接收到的总输入值与阈值比较,然后通过激活函数处理,输出-1对应神经元
抑制,1对应神经元激活。这是1943年M-P神经元模型,也是它为50年代神经网络
发展的第一个高潮期奠定了基础。
Perceptron
● 感知机(Perceptron)由两层神经元组成,第一层
为输入层,第二层为输出层。若三个神经元的值
表示布尔值的真和假,那么感知机能容易地表示
与、或、非三个基本的布尔函数。
● 感知机能表示三个基本的逻辑运算,即与或非,事实上其能力很有限,只能处理线性
问题,即感知机只能表示线性可分训练样本集对应的逻辑运算,同或和异或逻辑运算的
训练样本集是非可分的,所以它们不能由简单的两层感知机表示。
θ
Perceptron Training Rule
● 对于训练样例 (x, y),若当前感知机输出为 则
感知机权重将这样调整:
例:训练一个能完成与逻辑运算的感知机的权值,设η为0.5。
随机初始化三个权值分别为 -0.5,0.6,0.6,则训练样例为((-1,1,-1),-1),((-1,-1,+1),-1)
((-1,+1,+1),+1), ((-1,-1,-1),-1)
Multi-Layer Perceptions(MLPs)
● 右图加了一层隐层,则实现了异或的效果,实际上
加这一层的效果是使得整个神经网络模型所表示的
函数由线性变成了非线性。
● 假如没有激活函数的存在,即使是多层神经网络,
每一层传递到下一层后直接用结果作为再下一层的
输入,那么整个模型还是线性的。但是激活函数的
引用使得神经网络模型的表征能力很强,任意函数
可以被一个四层的神经网络以任意精度逼近。
● 注意这里激活函数的选取不是唯一的,到目前为止
我们一直选择了阶跃函数,它直观易于理解,但是
在学习多层网络模型的时候往往选择其他可微的激
活函数。另外多层感知机可以有任意多层,每一层
有任意多个神经元,其实一个大型的网络就是一个
复杂的函数,完成了一个映射工作,由输入向量映
射到输出向量。
完成异或功能的三层感知机
Feedforward Neural Networks(FNN)
● 更一般的,我们统一称这种网络为前馈神经网络,当然也有很多文献叫
多层前馈神经网络(Multi-Layer Feedforward Neural Networks),深度神经网络
(Deep Neural Networks),它们都是一种结构,就是MLPs。
● 之所以叫前馈神经网络是因为信息由输入层x通过函数向前流动到输出层y,
y没有反馈连接使得模型的输出重新反馈为输入的一部分。如果模型扩展添
加了反馈连接,那么这种网络就叫递归神经网络(Recurrent neural networks)
RNN
FNN是一个有向无环图(directed acyclic graph)
FNN—Goal
● 训练学习一个FNN的目的是近似
一个函数 f* ,例如训练一个分类器:
y = f*( x )
这个分类器将输入x映射到类别y,
而FNN也是定义一个映射:
y = f ( x; θ )
所以我们训练的目的就是学习参数θ,
使得 f 能最大程度的逼近 f * ,这里的
参数其实就是权值。在训练FNN时,
训练数据(training data)会提供给我们
来自 f * 的有噪声的近似样本。每个
样本 x 都有一个类别标签 y ,每一
个训练样本(x, y)直接指定了给定输
入下输出层的输出 。但是其他层的
神经元表现却不是由训练样本直接决定
的,这就要求FNN的训练算法必须确定
怎么使用隐藏层来逼近函数 f * 使得整
个网络产生正确的输出。
784=28*28
这里可以使用softmax函数
FNN—Gradient-Based Learning
● 由于神经网络的非线性的性质导致了它和线性模型的主要差异,就是FNN的损失函数是
非凸函数,所以损失函数只能采用基于梯度的迭代的方式来优化,而不能像逻辑回归和
支持向量机一样保证收敛到最
原创力文档

文档评论(0)