5 神经网络
分类:
文章
•
2024-08-14 09:40:04
文章目录
- 5.1神经元模型
- 5.2感知机与多层网络
- 感知机易实现与、或、非
- 给定训练集,wi(i=1,2,..,n)及θ可通过学习得到
- 注意
- 要解决非线性可分,
- 常见的神经网络形如图5.6的层级结构
- 5.3 误差逆传擂算法
5.1神经元模型
神经网络方面的研究很早就出现,
- 今天“神经网络”是一个相当大、多学科交又的学科领域.
- 各学科对神经网络的定义多样,本书用目前使用得最广泛的一种,
- 即“神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,
- 它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应”
- [ Kohonen,1988,
- 机器学习中谈论神经网络时指的是
- “神经网络学习“
- 是机器学习与神经网络两学科领域的交叉
神经网络中最基本的是神经元(neuron)模型,
- 即上述定义中的“简单单元”,
- 生物神经网络中,每个神经元与其他相连,
- 当它“兴奋”时就会向相连的神经元送化学物质,
- 从而改变这些神经元内的电位;
- 若某神经元的电位超过一个threshold,它就被**,即“兴奋起来,
43年, 【Mcculloch and Pitts,43】
- 将上述情形抽象为图5.1
- 神经元接收到来自n个输入,
- 通过带权重的连接进行传递,
- 神经元接收到的总输入值将与神经元的阈值比较
- 通过activation function产生输出
理想的**是图5.2(a)
- 将输入值映射为“0”或“1”,“1”对应于神经元兴奋,“0”对应于神经元抑制.
- 不连续、不光滑等不太好的性质,
- 因此常用Sigmoid作为**.
- Sigmoid如图5.2(b),
- 把大范围挤压到(0,1)
- 也称squashing function

把多个这样的神经元
CS角度看,先不考虑神经网络是否真的模拟了生物神经网络,
- 只需将一个神经网络
- 视为包含许多参数的数学模型,
- 这个模型是若干个函数,
- 例如为yj=f(∑iwixiθj)相互(嵌套)代入而得.
- 有效的神经网络学习算法大多以数学证明为支撑
10个神经元两两连接,
5.2感知机与多层网络
- Perceptron由两层神经元组成,如图5.3
- 输入层接收外界输入后传递给输出
- 输出层是M-P神经元,
感知机易实现与、或、非

- yj=f(∑iwixiθj)
-
f是图5.2中的阶跃函数
此处省略点与或非的求法
给定训练集,wi(i=1,2,..,n)及θ可通过学习得到
-
θ可看作一个固定输入为-1.0的dummy node
- so权重和阈值的学习就统一为权重学习
- 感知机学习规则简单
- 对样本(xxx,y)
- 当前感知机的输出为y^,则这样调整
wi←wi+Δwi(5.1)
Δwi=θ(y−y^)xi(5.2)
-
θ∈(0,1)称learning rate
- 若感知机对训练样例(xxx,y)预测对
- 即y^=y,则感知机不变
- 否则根据错误程度进行权重调整
注意
- 感知机只有输出层神经元进行**处理,即只拥有一层功能神经元( functional neuron),其学习能力非常有限,
- 与、或、非都linearly separable,
- 【Minsky and Papert,1969】
- 若两类模式是线性可分,
- 如图5.4(a)©
- 则学习过程一定会收敛
- 而求得适当的权w=(w1,w2,...,wn+1)
- 否则学习过程发生fluctuation
-
w难以稳定,不能求得合适解
- 感知机不能解决图5.4(d)


要解决非线性可分,
- 需用多层,
- 如图5.5中,这个两层感知机就能解决异或
- 图5.5(a)中,输出层与输入层之间的一层神经元,
- 隐含层和

常见的神经网络形如图5.6的层级结构
- 每层神经元与
- 这样的神经网络结构称multi-layer feedforward neural networks
- 输入层神经元
- 接收输入
- 隐层与输出层对信号加工
- 最终结果由输出层神经元输出
- 输入层仅接受输入,不处理,
- 图5.6(a)称“两层网络”,为免歧义,本书称“单隐层络”.
- 神经网络的学习过程
- 根据训练数据来调整神经元之间的( connection weight)
- 及每个功能神经元的阈值
5.3 误差逆传擂算法