循环神经网络和反向传播算法指南外文翻译资料

 2022-11-05 14:51:13

英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料


循环神经网络和反向传播算法指南

Mikael Boden(作者)

信息科学与计算机与电气工程学院

哈尔姆斯塔德大学

2001年11月13日

摘要

这篇文章将会为循环神经网络模型的一些概念提供一些指导。 与前馈神经网络模型相反的是,循环神经网络模型是非常敏感的,并且还与过去的输入有关。 针对前馈神经网络模型描述了反向传播算法的学习与训练过程,(在一定概率上)满足了我们的建模时候的需求,并扩展到了循环神经网络模型的学习。 本文的目的是为应用和理解循环神经网络模型提供一定的指导。

1.说明

就正如我们都知道的那样,传统的前馈神经网络模型可用于近似任何空间有限的函数,在已经给定一个(潜在的非常大的)隐藏节点集合。 也可以这么说,对于具有固定输入空间的函数,总是将这些函数编码为神经网络的方式。 对于两层网络,映射包括以下的两个步骤,

如果有功能的有效样本可用,我们可以使用计算机的自动学习技术(如反向传播算法)来查找神经网络的权重(G和F)。

反馈式的神经网络模型与前馈神经网络模型体系结构基本完全不同,因为它们不仅可以在输入空间上运行,还可以在内部状态空间上运行,这一点已经能够被网络处理了。 这相当于迭代函数系统(IFS;见(Barnsley,1993)),用于IFS的一般介绍;(Kolen,1994),用于神经网络透视图)或动态系统(DS;见eg(Devaney,1989)) 动态系统的一般介绍;(Tino等,1998; Casey,1996)神经网络观点)。 状态空间使得能够根据未指定(和潜在无限)间隔的时间/顺序扩展依赖关系的表示(和学习)

为了限制这篇文章的范围并简化数学问题,我们可以假设神经网络以离散的时间步长运行(完全可以使用连续时间)。正如事实证明的那样,如果我们进一步假设权重至少是合理的,并且使用连续的输出函数,则神经网络能够表示任何图灵机器(再次假设任何数量的隐藏节点可用)。 这是很重要的,因为我们知道所有可以计算出来的,可以用离散的时间递归神经网络模型等同地加以处理。 甚至还有人提出,如果使用真实的权重(神经网络模型是完全模拟的),我们得到超图灵机能力(Siegelmann,1999)。

  1. 一些基本定义

为了简化这篇文章中的这些符号,我们将会限制方程式包括两层神经网络,即除了输入层之外的两层节点的网络(留给我们一个“隐藏”或“状态”层和一个“输出”层)。 每层都有自己的索引变量:k表示的是输出节点,j(和h)表示的是隐藏,i表示的是输入节点。 在前馈神经网络模型中,输入向量x通过权重层V进行传播,

其中n表示的是输入的数值,theta;j表示的是偏置,f表示的是任何差分类型的输出函数。 神经网络模型可以如图1所示。

在简单的复现神经网络模型中,输入向量通过权重层类似地传播,但是也可以通过附加的反复权重层U与先前的状态激活相结合,

其中m表示的是“状态”节点的数量。

在这两种情况下,网络的输出由状态和一组输出权重W来决定,

其中g表示的是输出函数(可能与图像中的f相同)。

图1.一个前馈网络

图2.一个简单的循环网络

  1. 反向传播原理

任何神经网络模型结构都可以通过反向传播算法来进行相应的训练,当需要输出模式时,用于计算实际输出模式的每个功能都是可以进行区分的。 与常规的梯度下降(或上升)算法一样,反向传播算法的原理是通过对于每个可以精心修改的权重来计算相对于这个权重的成本(或误差)函数的梯度,然后相应地进行一些调整。

最常用的成本函数是求和平方误差(SSE)。 每个模式或演示文稿中(来自训练集)p都增加了所有输出单位k的成本或者说是误差。

其中d表示的是期望的输出,n表示的是可以用来进行训练的训练样本的总数,m表示的是输出节点的总数。

根据梯度下降算法可以得出,网络中的每个权重的变化应该与成本或者说是误差的负梯度成正比,关系到我们有兴趣进行修改的特定权重。

其中eta;表示的是学习率。

通过区分误差分量delta;=-part;C/part;net和part;net/part;w,可以最好地了解权重的变化(使用链规则)。 因此,输出节点的成本或者说是误差是

和隐藏节点:

对于一阶多项式,part;net/part;w等于输入激活。 权重的变化就是这么简单。

对于输出权重,和

对于输入权重。 添加了时间下标,可根据需要对重复权重进行修改。

输出函数的常见的选择是逻辑函数。

逻辑函数的导数可以写成下面这样:

由于显而易见的原因,当每个目标等于神经网络的实际输出时,大多数成本或者说是误差函数为0。 然而,在训练的期间,引导体重变化的成本或者说是误差函数比SSE更适合(Rumelhart等,1995)。 下面列出的常见假设是实际和期望输出之间的关系是概率的(神经网络模型仍然是确定性的),并且具有已知的误差分布的时候。 这反过来又将网络的输出激活的解释放在了理想的基础上。

如果神经网络模型的输出是高斯分布的平均值(可以由训练集来给出),我们可以减少最小化的数值

其中假定sigma;是已经固定的。 这个成本函数确实非常类似于上面的神经网络输出。

使用高斯分布(输出不是明确限制的),输出节点的输出函数的自然选择是

重量变化就变成了

如果假设二项分布(每个输出值是期望输出为1或0的概率,例如特征检测),则适当的这个成本函数是所谓的交叉熵,

如果输出分布在0到1的范围内(如这里,这个输出就在0到1的范围内),逻辑输出功能是有用的(见公式17所示)。 输出的重量变化也都是一样

如果问题是“1-n”分类的问题,则多项式分布是合适的。 合适的成本或者说是误差函数是

其中q是所有输出节点的另一个索引。 如果选择正确的输出功能,即是所谓的softmax函数模型,

现在熟悉的更新规则会自动跟随,

如(Rumelhart等人,1995)所示,只要我们从指数族概率分布中选择概率函数,就会发生下面的这种结果。

图3.一个“抽头延迟线”前馈网络效果图

梯度下降法的本质是在某个位置将目标函数一阶展开,利用其一阶性质持续向函数值下降最快的方向前进,以期找到函数的全局最小解。梯度下降属于梯度优化方法大类,此外还有最速下降法,共轭梯度法等等。还有其他方法基于目标函数的二阶性质,比如牛顿法、拟牛顿法等。

用来训练神经网络的反向传播算法是梯度下降法。不过它需要求得误差函数对众多权重和偏置值的偏导数。反向传播法在前向计算网络输出的过程中把一些“局部误差”反向传播。借助这些局部误差计算误差函数对每个权重和偏置值的偏导数,得到梯度。

  1. 抽头延迟线存储器

将时间或着顺序的信息并入到训练情境中的最简单的方法就是使时域成为空间并使用前馈神经网络架构。通过根据固定和预定的“窗口”大小X = x(t),x(t-1),x(t-2),...,...扩展输入空间来插入可用的时间信息, x(t-omega;)(见图3)。这通常被称为抽头延迟线存储器,因为输入需要被放置在延迟缓冲器中,并且还会随着时间的流逝而离散地移位。也可以通过选择某些间隔“时间”来手动扩展这种方法,通过这些间隔使用平均或其他预处理的特征作为反映信号衰减的输入。

这种方法的典型例子是NETtalk系统(Sejnowski和Rosenberg,1987),从例子中可以了解到在输入文本中显示的英文单词。网络可以接受七个字母的时间只有中间的一个发音。

缺点是包括所有的用户必须选择对神经网络模型有用的最大时间的步长数。除此之外,必须使用响应度独立权重来处理相同的组件,但是在不同的时间步骤中,这样做的危害是非常大的。此外,大量的权重需要更大的一组示例以避免训练的神经网络数值过度专业化。

  1. 简单的循环网络

严格的前馈神经网络模型架构是不会保持短期记忆的。 任何记忆效应是由于过去输入被重新呈现给网络的方式(对于分接的延迟线)。

图4.一个简单循环网络

一个简单的循环网络(SRN;(Elman,1990))是具有激活反馈的,其会表现出短期记忆。 状态层不仅会根据网络的外部的输入数值进行相关的更新,还可以从先前的前向传播中激活来进行相关的更新。 反馈由一组权重修改,以便通过学习(例如反向传播算法)来实现自动适应的过程。

5.1 学习SRN:通过时间反向传播

在Jeff Elman(Elman,1990)提出的原始实验中可,使用了所谓的截断反向传播算法。 这基本上意味着yj(t-1)被简单地视为额外的输入。 使用状态层的任何错误delta;j(t)可以来修改来自该附加输入槽的权重(参见图4)。

成本或者说是误差可以进一步传播。 这被称为反向传播算法(BPTT;(Rumelhart等,1986)),并且是我们迄今为止所看到的简单扩展。 BPTT的基本原理是“展开”。所有的反复权重可以在空间上重复任意数量的时间步长,这里称为tau;。 因此,沿着循环连接发送激活(直接或间接)的每个节点也具有(至少有)tau;份拷贝(参见图5)。

根据等式13,误差因此会被进行反向的传播

其中h表示的是激活接收节点的索引,j表示的是发送节点的j(一次反向的传播)。 这允许我们计算在时间t评估的成本或者说是误差,对于根据任意数量的先前呈现计算的节点输出(在状态或输入层)。

然而,重要的是还需要注意,在计算出现成本或者说是误差增量之后,权重将会被折叠起来,每个权重都会增加一个很大的变化。 显然存在更大的记忆需求(过去的成本或者说是误差和激活都需要被存储起来),我们选择的tau;越大。

实际上,由于“消失的梯度效应”(参见例如(Bengio等人,1994)),非常大的tau;都是相当无用的。 对于每个层来说,通过成本或者说是误差进行反向的传播的成本或者说是误差会越来越小,直到完全消失。 有些人还指出这样的情况,由可能非常含糊的三角洲造成的不稳定性(例如(Pollack,1991))可能会破坏融合。 对某些学习任务提出了相反的结果(Boden et al。,1999)。

图5.BPTT网络展开的效果图(tau;= 3)

  1. 讨论

已经讨论过的架构和学习规则有许多变化(例如所谓的约旦神经网络模型(约旦,1986),以及完全复发的神经网络模型,实时进行不断循环的学习(Williams和Zipser,1989)等)。然而,经常性网络共享能够内部使用并创建反映时间(或甚至结构)依赖关系的状态的属性。对于更简单的任务(例如,由小型有限状态机产生的学习语法),状态空间的组织直接反映训练数据的组成部分(例如(Elman,1990; Cleeremans等人,1989))。在大多数情况下,国家空间是真实的。这意味着超出组成部分的细微之处,例如统计规律可能会影响国家空间的组织(例如(Elman,1993; Rohde and Plaut,1999))。对于更困难的任务(例如,需要更长的记忆轨迹和上下文相关性),高度非线性的连续空间提供了新的动力学(例如(Rodriguez et al。,1999; Boden and Wiles ,2000))。这些都是非常有趣的研究课题,但这些已经超出了这篇介绍性论文的范围。学习内部表征和流程/动态的分析对于我们了解这些网络的过程和方式是非常重要的。分析方法包括着层次聚类分析(HCA),特征值和特征向量特征(主成分分析法)。

参考文献

Barnsley,M.(1993)。分数无处不在Academic Press,Boston,2nd edition。

Bengio,Y.,Simard,P.和Frasconi,P。(1994)。学习长期依赖与梯度下降是困难的。 IEEE Transactions on Neural Networks,5(2):157-166。

Boden,M。和Wiles,J。(2000)。循环神经网络中无上下文和上下文敏感的动力学。连接科学,12(3)。

Boden,M.,Wiles,J.,Tonkes,B.,and Blair,A。(1999)。学习预测无语言语言:分析复现隐藏单元中的动态。 In Proceedings of the International Conference on Artificial Neural Networks,pages 359-364,Edinburgh。 IEE。

Casey,M。(1996)。离散时间计算的动力学,应用于电流神经网络和有限状态机提取。神经计算,8(6):1135-1178。

Cleeremans,A.,Servan-Schreiber,D.和McClelland,J.L。(1989)。有限状态自动机和简单的循环网络。神经计算,1(3):3

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[139852],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版