【机器学习笔记】第五章:神经网络

第5章 神经网络

5.1神经元模型

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

​ 神经元接收到来自 n n n​个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接(connection)进行传递,神经元接收到的总输入值将与神经元的阀值进行比较,然后通过"激活函数"处理以产生神经元的输出。激活函数常用Sigmoid函数。

5.2感知机与多层网络

​ 感知机由两层神经元组成。

​ 能够容易地实现逻辑与、或、非运算。注意到 y = f ( ∑ i w i x i − θ ) y=f(\sum_{i}w_{i}x_i -\theta) y=f(iwixiθ),假定是阶跃函数 y = { 1 , x ≥ 0   0 , x < 0 y= \begin{cases} 1,\quad x\geq0\ 0,\quad x<0 \end{cases} y={1,x0 0,x<0

“与”:令 w 1 = w 2 = 1 , θ = 2 w_1=w_2=1,\theta=2 w1=w2=1,θ=2,则 y = f ( 1 ⋅ x 1 + 1 ⋅ x 2 − 2 ) y=f(1 \cdot x_1+1 \cdot x_2-2) y=f(1x1+1x22),仅在 x 1 = x 2 = 1 , y = 1 x_1=x_2=1,y=1 x1=x2=1,y=1

“或”:令 w 1 = w 2 = 1 , θ = 0.5 w_1=w_2=1,\theta=0.5 w1=w2=1,θ=0.5​​​​,则 y = f ( 1 ⋅ x 1 + 1 ⋅ x 2 − 0.5 ) y=f(1 \cdot x_1+1 \cdot x_2-0.5) y=f(1x1+1x20.5)​​​​,仅在 x 1 = 1   ∣ ∣   x 2 = 1 , y = 1 x_1 =1\ ||\ x_2=1,y=1 x1=1 ∣∣ x2=1,y=1​​​​;

“非”:令 w 1 = − 0.6 , w 2 = 0 , θ = − 0.5 w_1=-0.6,w_2=0,\theta=-0.5 w1=0.6,w2=0,θ=0.5​​​​​,则 y = f ( − 0.6 ⋅ x 1 + 0 ⋅ x 2 + 0.5 ) y=f(-0.6 \cdot x_1+0 \cdot x_2+0.5) y=f(0.6x1+0x2+0.5)​​​​​,在 x 1 = 1 , y = 1 ; x 1 = 0 , y = 1 x_1 =1,y=1;x_1=0,y=1 x1=1,y=1;x1=0,y=1​.​​​​​

​ 更一般地,给定训练集,权重和阈值都可以通过学习得到。阈值可以看作一个固定输入为-1.0的“哑结点”,所对应权重 w n + 1 w_{n+1} wn+1,这样权重和阈值的学习就可以统一为权重学习。 w i ← w i + Δ w i (5.1) w_i\leftarrow w_i+ \Delta w_i\tag{5.1} wiwi+Δwi(5.1)

Δ w i = η ( y − y ^ ) x i (5.2) \Delta w_i=\eta(y-\hat{y})x_i\tag{5.2} Δwi=η(yy^)xi(5.2)

y ^ \hat{y} y^为当前感知机的输出, η ∈ ( 0 , 1 ) \eta\in(0,1) η(0,1)称为学习率。若感知机对训练样例预测准确,即 y ^ = y \hat{y}=y y^=y,则感知机不发生变化,否则将根据错位的成都进行权重调整。

感知机学习能力有限,只能解决线性可分问题,否则学习过程会发生震荡,难以稳定,不能求得合适解。

隐层:隐含层,输出层和输入层之间的一层神经元;

多层前馈神经网络:每层神经元与下一层神经元全互连,神经元之间不存在同层连接、跨层连接;

输入层神经网络仅是接受输入,不进行函数处理,隐层和输出层包含功能神经元;

5.3 误差拟传播算法

​ 误差拟传播算法(BP算法)不仅可用于多层前馈神经网络,还可用于其他类型的神经网络,是迄今最成功的神经网络学习算法。

​ 给定训练集 D = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) , x i ∈ ℜ d , y i ∈ ℜ l D={(x_1,y_1),(x_2,y_2),...,(x_m,y_m)},x_i\in \Re^{d},y_i\in \Re^{l} D=(x1,y1),(x2,y2),...,(xm,ym),xid,yil,即输入示例由 d d d个属性描述,输出 l l l维实值向量。其中,输出层第 j j j个神经元阈值用 θ j \theta_{j} θj表示,隐层第 h h h个神经元的阈值用 γ h \gamma_h γh表示,输入层第 i i i个神经元与隐层第 h h h个神经元的连接权为 v i h v_{ih} vih,隐层第 h h h个神经元与输出层第 j j j个神经元的连接权为 w h j w_{hj} whj,输入输出如图所示, b h b_h bh为隐层第 h h h​​个神经元的输出。假设使用Sigmoid函数。

​ 对训练例 ( x k , y k ) (x_k,y_k) (xk,yk),假定神经网络的输出为 y ^ k = ( y ^ 1 k , y ^ 2 k , . . . , y ^ l k ) \hat{y}k=(\hat{y}1^{k},\hat{y}2^{k},...,\hat{y}l^{k}) y^k=(y^1k,y^2k,...,y^lk),即 y ^ j k = f ( β j − θ j ) (5.3) \hat{y}{j}^{k}=f(\beta_j-\theta_j)\tag{5.3} y^jk=f(βjθj)(5.3) 则网络在训练例上的均方误差为 E k = 1 2 ∑ j = 1 l ( y ^ j k − y j k ) 2 (5.4) E_k=\frac{1}{2}\sum{j=1}^{l}(\hat{y}{j}^{k}-y{j}^{k})^{2}\tag{5.4} Ek=21j=1l(y^jkyjk)2(5.4)​ 图5.7中有 ( d + l + 1 ) q + l (d+l+1)q+l (d+l+1)q+l个参数需要确定:输入层到隐层有 d q dq dq个权值,隐层到输出层有 q l ql ql个权值、 q q q个隐层神经元阈值、 l l l个输出层神经元阈值。BP算法是一个迭代算法,迭代的每一轮采用广义的感知机学习规则对参数进行更新估计,即与(5.1)类似,参数更新估计式 v ← v + Δ v (5.5) v\leftarrow v+\Delta v\tag{5.5} vv+Δv(5.5)​ 学习率控制算法迭代的更新步长。

​ BP算法的目标是要最小化训练集 D D D上的累计误差 E = 1 m ∑ k = 1 m E k (5.16) E=\frac{1}{m}\sum_{k=1}^{m}E_k\tag{5.16} E=m1k=1mEk(5.16)​ 基于累计误差最小化的更新规则就得到了累计误差逆转播算法,累积BP和标准BP都很常用:

标准BP算法每次更新只针对单个样例,参数更新频繁,对不同样例进行更新的效果可能出现“抵消现象”,迭代次数多;

累积BP算法直接针对累计误差最小化,读取整个训练集再对参数更新,频率低但是速度缓慢;

防止过拟合:

早停:将数据分为训练集和验证集合,训练集用来计算梯度、更新连接权和阔值,验证集用来估计误差,若训练集误差降低但验证集误差升高,则停止训练,同时返回具有最小验证集误差的连接权和阑值.

正则化:基本思想是在误差目标函数中增加一个用于描述网络复杂度的部分,例如连接权和阈值的平方和,令 E k E_k Ek表示第 k k k个训练样例上的误差, w i w_i wi表示连接权和阈值,则误差目标函数改变为 E = λ 1 m ∑ k = 1 m E k + ( 1 − λ ) ∑ i w i 2 (5.17) E=\lambda \frac{1}{m}\sum_{k=1}^{m}E_k+(1-\lambda)\sum_i w_i^2 \tag{5.17} E=λm1k=1mEk+(1λ)iwi2(5.17) 其中 λ ∈ ( 0 , 1 ) \lambda\in(0,1) λ(0,1)​用于对经验误差与网络复杂度这两项进行折中,常通过交叉验证法来估计.

5.4全局最小和局部极小

​ 对于KaTeX parse error: Expected group after '^' at position 7: \omega^̲KaTeX parse error: Expected group after '^' at position 7: \theta^̲​,若存在 ε > 0 \varepsilon>0 ε>0使得 ∀ ( ω ; θ ) ∈ ( ω ; θ ) ∣   ∣ ∣ ( ω ; θ ) − ( ω ; θ ) ∣ ∣   ≤ ε \forall (\omega;\theta)\in{(\omega;\theta)|\ ||(\omega;\theta)-(\omega^;\theta^)||\ \leq \varepsilon } (ω;θ)(ω;θ) ∣∣(ω;θ)(ω;θ)∣∣ ε 都有 E ( ω ; θ ) ≥ E ( ω ; θ ) E(\omega;\theta)\geq E(\omega^;\theta^) E(ω;θ)E(ω;θ),成立,则 ( ω ; θ ) (\omega^;\theta^) (ω;θ)为局部最小解;若对参数空间任意 ( ω ; θ ) (\omega;\theta) (ω;θ)都有 E ( ω ; θ ) ≥ E ( ω ; θ ) E(\omega;\theta)\geq E(\omega^;\theta^) E(ω;θ)E(ω;θ),则 ( ω ; θ ) (\omega^;\theta^) (ω;θ)​为全局最小解。

5.5其他常见神经网络

RBF网络:径向基函数网络,单隐层前馈神经网络; φ ( x ) = ∑ i = 1 q w i ρ ( x , c i ) (5.18) \varphi(x)=\sum_{i=1}^{q}w_i\rho(x,c_i)\tag{5.18} φ(x)=i=1qwiρ(x,ci)(5.18)

ART网络:自适应谐振理论网络

无监督学习策略
“胜者通吃”
SOM网络:自组织映射网络

竞争学习型无监督神经网络;
及联相关网络

Elman网络:最常用的递归神经网络之一

Boltzmann机:基于能量的模型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浪里摸鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值