【西瓜书笔记】——神经网络

本文详细介绍了神经网络的基础知识,包括神经元模型、感知机与多层网络、误差逆传播算法(反向传播算法-BP)、常见神经网络模型和激活函数。重点讨论了多层前馈神经网络的结构和反向传播算法的权值和阈值校准公式,以及各种激活函数的优缺点。还探讨了防止过拟合的策略和多种经典神经网络模型,如RBF、ART、SOM、级联相关网络、Elman网络和Boltzmann机。
摘要由CSDN通过智能技术生成

本文对应周志华——《机器学习》第五章·神经网络


1、神经元模型

神经网络是由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体所做出的交互反应。

神经元模型:是神经网络最基本的成分。当通过神经元的信息信好超过某一个阈值,那么该神经元就会激活,从而作用于下一个神经元。

M-P神经元模型:神经元连接来自收到来自n个其他神经元传递来的输入信号,与权重结合进行传递。神经元将收到的总输入值与阈值进行比较,利用激活函数(e.g Sigmoid)处理后产生输出。

激活函数:最典型的激活函数是阶跃函数,类似分段函数,0表示非兴奋状态,1表示兴奋状态。但阶跃函数不连续、不光滑,无法表达所有数据的活跃性质,因此常常使用sigmoid函数 1 1 + e − θ T x \frac{1}{1+e^{-θ^Tx}} 1+eθTx1来对数据进行处理。从而把较大范围内变化的输入值挤压到(0, 1)输出值范围内。


2、感知机与多层网络

感知机:由两层神经元组成——输入层和输出层。输入层接受外界信好后传递给输出层,输出层是M-P神经元(阈值逻辑单元)。

权重 w i w_i wi和阈值θ可通过学习得到。调整感知机的权重方式如下:
w i ← w i + Δ w i w_i ← w_i + Δw_i wiwi+Δwi
其中, Δ w i = η ( y − y ^ ) x i , η Δw_i = η(y-\hat{y})x_i,η Δwi=η(yy^)xiη被称为学习率,其范围在(0, 1)之间。从公式中不难发现,评判感知机预测正确与否的方式在于 y ^ = y \hat{y}=y y^=y。如果不相等,则根据错误的程度进行权重调整。

但是,感知机只有输出层一层可以进行激活函数处理,学习能力有限,即只能一刀切。对于线性不可分问题或非线性问题,通常采用多层神经元

多层神经网络:输入层和输出层间有隐含层(隐层),隐层和输出层神经元都拥有激活函数,从而将一刀切问题转化为了平面划分问题

多层前馈神经网络:每层神经元与下一层神经元实现全连接,不存在同层连接和跨层连接。所谓的前馈,并非指信号不能向后传递,而是指网络拓扑结构上不存在环路或回路。隐层的作用在于对上一层神经元的输出结果进行信号加工,最终产生结果由输出层神经元输出。换言之,输入层神经元只负责接受数据,而隐层和输出层包涵功能神经元,对数据进行函数处理。(只包含一个隐层的三层神经网络即可称为多层神经网络)。

神经网络的学习过程,就是根据训练数据来调整神经元之间的连接权值和功能神经元的阈值。因此权值和阈值是神经网络的关键。

【*注】阈值相当于神经元内部的关键参数,而权值相当于不同神经元与不同神经元之间相连关系的重要度。


3、误差逆传播算法(反向传播算法-BP)

当网络层级较多时,产生的权值和阈值就会有许多,而调整阈值和权值的方法,就称作反向传播算法。如果说前馈神经网络的目的是为了得到最合适的预测模型,那么反向传播算法的作用就是反向求解,为了得到最合适的权值和阈值

下面模拟一个3层神经网络的处理流程(输入层、隐层、输出层),其中d个输入单元,h个隐层单元,l个输出单元:

Step1:Input d个样例 xd
Step2:α = sum (输入*(输入单元与隐层间的权值) )作为隐层每个单元接收的输入值
Step3:sigmoid(α - 隐层每个单元的阈值),产生隐层输出β
Step4:γ = sum( β* (隐层每个单元与输出层每个单元间的权值) )作为输出层每个单元接收的输入值
Step5:sigmoid(γ - 输出层每个单元的阈值),产生输出的结果y_hat
Step6:采用均方误差法衡量网络模型的性能:误差E = 1/2 * sum((y_hat - y)^2)
Step7:利用BP算法,反向迭代每一轮重新进行估计:新权值/新阈值 ← 权值/阈值 +Δ

以上就是一个多层神经网络的运行过程,Step1 ~ Step6为完整的前向神经网络处理过程,而Step7进入迭代的过程为反向神经网络的处理过程。


BP算法基于梯度下降策略,以目标的负梯度方向对参数进行调整。即对均方误差求解函数,分别对θ、w、λ等进行求导。在给定学习率η的情况下,第k个样例的均方误差函数E有
E k = 1 2 ∑ j = 1 l ( y ^ j k − y j k ) 2 E_k = \frac{1}{2}\sum_{j=1}^{l}(\hat{y}_j^k-y_j^k)^2 Ek=21j=1l(y^jkyjk)2
而对于sigmoid函数作为激活函数的清空,存在一种特殊规律:
S ′ ( x ) = S ( x ) ⋅ ( 1 − S ( x ) ) S'(x) = S(x)·(1-S(x)) S(x)=S(x)(1S(x))


例如:

1、权值 w w w的校准公式:

Δ w h j = − η ∂ E k ∂ w h j Δw_{hj} = -η\frac{\partial{E_k}}{\partial{w_hj}} Δwhj=ηwhjEk</

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值