LSTM的优点和缺点?-lstm模型搭建

2023-08-07 22:55:42

 

一:LSTM的局限性

循环神经网络(RNN),长短期记忆(LSTM),在现在都得到了广泛的应用。LSTM和RNN被发明于上世纪80、90年代,于2014年死而复生。接下来的几年里,它们成为了解决序列学习、序列转换(seq2seq)的方式,这也使得语音到文本识别和Siri、Cortana、Google语音助理、Alexa的能力得到惊人的提升。另外,不要忘了机器翻译,包括将文档翻译成不同的语言,或者是神经网络机器翻译还可以将图像翻译为文本,文字到图像和字幕视频等等。

在接下来的几年里,ResNet出现了。ResNet是残差网络,意为训练更深的模型。2016年,微软亚洲研究院的一组研究员在ImageNet图像识别挑战赛中凭借惊人的152层深层残差网络(deep residual networks),以绝对优势获得图像分类、图像定位以及图像检测全部三个主要项目的冠军。之后,Attention(注意力)模型出现了。所有的大型科技企业企业已经将RNN及其变种替换为基于注意力的模型。因为比起基于注意力的模型,RNN需要更多的资源来训练和运行。

2.1 LSTM的缺点分析

记住:不管是RNN还是LSTM及其衍生主要是随着时间推移进行顺序处理。请参阅下图中的水平箭头:

水平箭头的意思是长期信息需在进入当前处理单元前顺序遍历所有单元。这意味着其能轻易被乘以很多次<0的小数而损坏。这是导致vanishing gradients(梯度消失)问题的原因。

为此,今天被视为救星的LSTM模型出现了,有点像ResNet模型,可以绕过单元从而记住更长的时间步骤(LSTM之所可以解决梯度问题是因为它避免了无休止的连乘,而是边加边乘,这和resnet本身就是异曲同工的)。因此,LSTM可以消除一些梯度消失的问题。

从上图可以看出,这并没有解决全部问题。我们仍然有一条从过去单元到当前单元的顺序路径。事实上,这条路现在更复杂了,因为它有附加物,并且忽略了隶属于它上面的分支。毫无疑问LSTM和GRU(Gated Recurrent Uni,是LSTM的衍生)及其衍生能够记住大量更长期的信息!但是它们只能记住100个量级的序列,而不是1000个量级,或者更长的序列。

还有一个RNN的问题是,训练它们对硬件的要求非常高。另外,在我们不需要训练这些网络快速的情况下,它仍需要大量资源。同样在云中运行这些模型也需要很多资源。训练RNN和LSTM的噩梦,RNN和LSTM的训练是困难的,因为它们需要存储带宽绑定计算,这是硬件设计者最糟糕的噩梦,最终限制了神经网络解决方案的适用性。简而言之,LSTM需要每个单元4个线性层(MLP层)在每个序列时间步骤中运行。线性层需要大量的存储带宽来计算,事实上,它们不能使用许多计算单元,通常是因为系统没有足够的存储带宽来满足计算单元。而且很容易添加更多的计算单元,但是很难增加更多的存储带宽(注意芯片上有足够的线,从处理器到存储的长电线等)。因此,RNN/LSTM及其变种不是硬件加速的良好匹配,

2.2 缺点总结

(1)RNN的梯度问题在LSTM及其变种里面得到了一定程度的解决,但还是不够。它可以处理100个量级的序列,而对于1000个量级,或者更长的序列则依然会显得很棘手。

(2)计算费时。每一个LSTM的cell里面都意味着有4个全连接层(MLP),如果LSTM的时间跨度很大,并且网络又很深,这个计算量会很大,很耗时。


以上就是关于《LSTM的优点和缺点?-lstm模型搭建》的全部内容,本文网址:https://www.7ca.cn/baike/60176.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明