论文部分内容阅读
近年来,随着新型人工智能技术的不断发展以及海量数据的爆炸式增长,如何借助新技术高效、准确地处理并分析不断增长的数据流是一项具有挑战性的任务。现有的深度神经网络通常采用基于批量(batch)数据的训练方法,无法有效处理数据的动态增长;保留所有历史数据虽然可以保证学习的效果,但会给存储及计算带来巨大压力。循环神经网络(Recurrent Neural Networks,RNNs)是一种适合于数据流分析与建模的深度学习模型,能够挖掘数据流中的时序关联,其变种长短时记忆网络(Long Short-term Memory,LSTM)已经成功应用于机器翻译、语音识别等多种流数据处理任务中,是使用最广泛的循环神经网络结构。但现有的LSTM模型无法有效适应数据流的动态增长,常规训练方法会导致“灾难性遗忘”(Catastrophic Forgetting,CF)问题。为了提高对不断增长的海量数据分析、处理能力,增强LSTM模型在真实场景下的可用性,本文在现有LSTM模型的基础上,针对数据流增量学习中记忆遗忘问题,研究了基于稀疏分布激活的增量式LSTM。本文主要研究内容如下:(1)首先分析增量学习面临的主要挑战,针对目前LSTM模型无法适应数据流动态变化和增长、现有增量训练方法存在“灾难性遗忘”的问题,提出基于稀疏分布激活的增量式LSTM系统总体结构,为有效处理海量增长的数据提供技术上的支撑。(2)从模型结构的角度上,分析了现有的固定结构深度神经网络模型进行增量学习时存在的“可塑性-稳定性”矛盾以及由此带来的“记忆遗忘”问题,借鉴Dropout、稀疏正则化等方法思想,提出基于稀疏分布的LSTM模型。对LSTM单元中的细胞状态和隐藏层状态神经元分别进行分组,根据神经元的激活值,选择部分神经元使其活跃,同时抑制邻近的其它神经元。与现有的稀疏正则化方法相比,在约束神经元稀疏激活的同时,由于抑制半径的引入保证激活神经元的均匀分布,提高LSTM模型的稳定性。实现了相应的算法原型,并使用PTB和Permuted MNIST等数据集进行了测试与分析,实验结果表明相比LSTM Dropout方法,基于稀疏分布激活的LSTM在Permuted MNIST数据集上准确率最高可提升12.9%,在语言建模任务中困惑度最多降低4.631。(3)从训练方法的角度上,分析用于训练LSTM的BPTT(Back Propagation Through Time)算法特点,特别是数据流增量学习过程中模型参数传递及梯度更新规则。针对历史数据全量存储导致时空开销大和BPTT反向传播步长限制梯度回传的问题,提出基于压缩和记忆巩固的增量式训练方法。根据LSTM的遗忘门压缩历史序列仅保留其中关键数据,并传递历史训练过程的重要参数用于新数据的训练,使得历史信息不会随时间完全“丢失”。此外,在训练过程中加入记忆巩固,强制梯度信息突破BPTT步长限制作用于各时间步参数更新,进一步有效缓解“灾难性遗忘”。实现了相应的算法原型,使用PTB和Permuted MNIST等数据集进行了测试与分析,实验结果表明,相比iCaRL增量学习算法,准确率最高可提升16.9%,困惑度最多降低4.899。(4)将上述基于稀疏分布的LSTM和改进的增量式训练方法相整合,设计并实现了基于稀疏分布激活的增量式LSTM原型系统,并使用该原型系统完成常州地铁客流量预测任务。设计了原型系统的功能模块和业务流程,在常州地铁客流数据集上的预测结果表明本文提出的基于稀疏分布激活的增量式LSTM系统能够有效进行客流数据的增量学习,预测结果较准确。