论文部分内容阅读
层级实时记忆(Hierarchical Temporal Memory,HTM)算法是在模拟大脑皮层结构、生物神经元组织方式基础上提出的新型人工智能算法。HTM具有数据稀疏分布表征、模型参数量较少的优势,已成为研究人员关注的热点。然而,现有HTM对长序列数据的学习与预测准确性较低;同时HTM训练算法缺乏利用CPU中众多计算核心和其它具有嵌入式计算能力部件的策略,严重影响了HTM的训练效率。针对这些问题,本文研究和设计了基于循环学习单元单元的协作式HTM。首先,分析现有HTM所面临的主要挑战。针对HTM存在对长序列数据或复杂事件的学习与预测准确性较低、训练方式缺乏分布协作等问题,提出基于循环学习单元协作式HTM的结构,为构建新型HTM提供支撑。接着,针对HTM存在较长时序关联的序列数据学习与预测准确较低等问题,提出基于循环学习单元的HTM时间池算法。首先,给出基于循环学习单元新型HTM的结构,然后设计了基于循环学习单元的时间池算法和循环单元的训练算法。采用循环学习单元替换现有的HTM神经元,使HTM中的每个神经元都具有循环学习能力,从而更好地挖掘长期时序依赖关系;同时循环学习单元能够利用序列中多个时间步的学习和循环反馈,借助HTM的输入和循环学习单元的激活反馈训练循环学习单元。实现了算法的原型RUHTM,使用不同数据集测试RUHTM的训练效果。结果表明,在NYC taxi数据集上,RUTHTM训练准确性比HTM提高了15.9%~31.9%。然后,针对现有HTM训练算法中缺乏并发机制,存储与计算分离等问题,提出多层分布协作的HTM训练算法。首先设计多层分布协作HTM训练算法的结构,利用NVM存储设备训练循环学习单元,HTM空间池和时间池中其它的简单计算任务交由CPU或GPU完成,发挥NVM存储设备与CPU各自的计算优势;接着提出多层协作的训练策略,将循环学习单元分布到多个NVM存储设备模拟器PMEM,利用NVM存储设备中嵌入式处理能力与主机CPU协作,构成多层分布协作的HTM训练算法;提出基于差异参数量化的循环学习单元训练策略,采用差异化的方式量化循环神经单元中的不同类型的参数,保证HTM训练的准确性。实现了算法的原型DCHTM,使用两个不同数据集进行了测试与分析,实验结果表明,相比HTM,DCHTM在NYC taxi数据集上训练效率提高了8.1%~21.9%。最后,在Intel开源的NVM存储设备模拟器PMEM和NuPIC开源的HTM基础上实现了基于循环学习单元的协作式HTM原型系统。使用NAB数据集对原型系统进行了测试与分析。实验结果表明,相比HTM,原型系统的训练效率提升了14.9%~16.9%,准确率提高了14.7%~27.7%。