法律状态公告日
法律状态信息
法律状态
2020-02-21
授权
授权
2018-09-25
实质审查的生效 IPC(主分类):G06N3/063 申请日:20180131
实质审查的生效
2018-08-31
公开
公开
技术领域
本发明涉及人工智能深度学习领域,尤其涉及一种能利用事件持续时间的高效LSTM设计方法。
背景技术
近年来,随着多媒体技术、社交网络的快速发展,多媒体数据(图像、视频)呈爆发式的增长,人工实现海量数据的分类、标注已经变得不现实,需要借助人工智能技术实现多媒体数据的智能分析、理解。深度学习技术在机器视觉、语音识别、自然语言处理等领域取得了很大的成功。其中,循环神经网络(RNN)在网络结构中加入了记忆单元,使得模型能够充分利用上下文信息,很好地处理序列化问题。但是传统的RNN存在梯度消失与梯度爆炸的问题,在较长序列的处理方面不能取得很好的效果;LSTM神经网络作为RNN的一种变体,不仅能够利用上下文的信息,并且还能通过其自身的门控机制获取更长的历史信息,解决了传统RNN面临的梯度消失的问题。
通常RNN/LSTM处理序列化数据时,不考虑输入状态的持续时间,在各输入时刻以相同的方式计算隐藏层神经元的单元状态,即神经元的记忆,没有考虑到这种处理方式在网络输入状态持续不变的情况下会造成大量冗余的隐藏层计算。当需要处理的序列长度较长时,这一问题将更加突出。隐藏层状态更新会涉及到大量的矩阵运算,导致循环神经网络的训练时间过长,训练效率降低。当序列中包含多个事件时,利用事件具有时间持续的特点,可以将事件持续时间属性作为LSTM建模和隐藏层神经元计算的一个重要考虑因素,也是提高RNN/LSTM训练效率的一个关键。
发明内容
本发明的目的在于提供一种能利用事件持续时间的高效LSTM设计方法,以解决现有 LSTM无法有效利用序列中事件的时间持续属性进行建模、冗余的神经元更新导致的计算量大、神经网络训练效率低的问题,提高LSTM模型的训练效率和实用性。
一种能利用事件持续时间的高效LSTM设计方法,包括以下步骤:
步骤1,使用基于事件持续时间的序列编码方法,将序列数据中所包含的事件及其持续时间信息作为LSTM网络各个时刻的输入;
步骤2,通过高效LSTM隐藏层神经元记忆更新方法,使神经元能够记忆事件的持续时间,合理高效地进行神经元的计算。
进一步,所述步骤1中,获得各时刻LSTM网络的输入的方法主要包括以下步骤:
步骤1.1,使用α表示序列数据的采样间隔时间,每隔时间间隔α对序列进行采样并由此构建输入高效LSTM的序列编码;
步骤1.2,为了表示序列数据中包含的所有事件和事件的起止时间,使用N维向量xt表示高效LSTM在输入时刻t的输入编码,即编码向量,其中N为所有事件的种类,向量xt中的每一元素分别对应一种事件;
步骤1.3,在输入时刻t,判断对应的采样时刻是否有事件j发生,若有,则向量xt中的第j位置置为1;若无,向量xt中的第j位置置为0;由此得到的编码向量xt,即为各时刻LSTM网络的输入。
进一步,所述步骤2中,高效LSTM隐藏层神经元记忆更新方法主要包括以下步骤:
步骤2.1,确定LSTM单元中的掩门mask gate和时长duration,mask gate的开、关由网络各时刻输入的变化情况决定,若某一时刻的编码向量xt与上一时刻xt-1不同,则说明序列在t时刻事件状态发生了改变,此时隐藏层神经元及时更新记忆,mask>t与xt-1相同,则说明序列在t和t-1时刻的事件状态一致,此时神经元记忆无需更新,mask>
步骤2.2根据各时刻的mask gate和duration,使用门控选择更新方法计算隐藏层神经元记忆和输出。
进一步,所述mask gate和duration的计算方法分别如下:
其中,mt表示t时刻的mask>t和xt-1分别表示t和t-1时刻的编码向量,dt表示t时刻的duration,在每个记忆保持时刻,duration的值持续累积。
进一步,所述步骤2.2中门控选择更新方法主要包括以下步骤:
步骤2.2.1根据输入编码xt和上一时刻隐藏层输出ht-1,计算LSTM单元的遗忘门ft、输入门it、输出门ot和当前隐藏层的输入c_int,计算方法分别如下:
it=σ(Wxixt+Whiht-1+bi)
ft=σ(Wxfxt+Whfht-1+bf)
ot=σ(Wxoxt+Whoht-1+bo)
其中,Wxi和Whi是输入门权重矩阵,Wxf和Whf是遗忘门权重矩阵,Wxo和Who是输出门权重矩阵,Wxc和Whc为当前隐藏层权重矩阵,bi、bf、bo、
步骤2.2.2根据mask gate、duration、遗忘门ft、输入门it、输出门ot和上一时刻神经元的记忆,高效计算隐藏层新的记忆和输出,计算方法分别如下:
其中,☉为Hadamard积,ct,ht分别表示t时刻隐藏层神经元的记忆和输出,
由于受mt的控制,只在mt=1时,ct和ht被更新为
本发明的有益效果:
1、本发明利用序列数据中事件的持续时间这一属性,构建了具有mask gate和duration 的新型LSTM单元,与现有LSTM模型在每个输入时刻都更新隐藏层神经元记忆的方法不同;
2、利用事件持续时间的高效LSTM设计方法,根据网络输入状态的变化有选择地进行神经元记忆更新,使得隐藏层神经元记忆事件持续时间的同时避免了在输入状态不变时不必要的隐藏层计算,减少了大规模的矩阵计算量,提高了LSTM模型的训练效率;尤其在处理长序列时,效率的提高也保证了LSTM方法的有效性和可用性。
附图说明
图1为高效LSTM的工作流程图;
图2为高效LSTM单元结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
实施例1:
如图1所示,一种能利用事件持续时间的高效LSTM设计方法,包括参数初始化模块、基于事件持续时间的序列编码模块和高效LSTM隐藏层神经元记忆更新模块;其中,参数初始化模块作用是对高效LSTM模型中的所有参数进行初始化;基于事件持续时间的序列编码模块作用是将序列在各采样时间点的事件及其持续时间信息进行编码作为LSTM网络每一时刻的输入;高效LSTM隐藏层神经元记忆更新模块作用是根据各时刻输入编码xt,将神经元记忆的更新与LSTM输入状态的变化相关联,计算mt,dt,ct和ht,有选择地更新it,ft,ot,c_int,
实施例2:
以一个视频为例,它由多个时序关联的事件组成,每个视频事件都有各自的起止时间,会持续一段时间,有些事件还可能在时间上重叠。当前视频中共有AC1、AC2和AC3三个事件,故所有事件的种类N=3。AC1的持续时间为0s~5s,AC2的持续时间为4s~9s,AC3的持续时间为3s~6s,采样间隔时间α为1s,由此对每隔时间间隔1s对序列进行采样并由此构建输入高效LSTM的序列编码。
首先,在输入时刻t,判断对应的采样时刻是否有事件j发生,若有,则向量xt中的第>t中的第j位置置为0;由此得到的编码向量xt,即为各时刻LSTM网络的输入。
根据LSTM单元中的掩门mask gate和时长duration,mask gate的开、关由网络各时刻输入的变化情况决定,若某一时刻的编码向量xt与上一时刻xt-1不同,则说明序列在t时刻事件状态发生了改变,此时隐藏层神经元及时更新记忆,mask>t与xt-1相同,则说明序列在t和t-1时刻的事件状态一致,此时神经元记忆无需更新,>
在此基础上,按照图2所示的高效LSTM单元结构,根据输入编码xt和上一时刻隐藏层输出ht-1,计算LSTM单元的遗忘门ft、输入门it、输出门ot和当前隐藏层的输入c_int,计算方法分别如下:
it=σ(Wxixt+Whiht-1+bi)>
ft=σ(Wxfxt+Whfht-1+bf)(2)
ot=σ(Wxoxt+Whoht-1+bo)>
其中,Wxi和Whi是输入门权重矩阵,Wxf和Whf是遗忘门权重矩阵,Wxo和Who是输出门权重矩阵,Wxc和Whc为当前隐藏层权重矩阵,bi、bf、bo、
根据mask gate、duration、遗忘门ft、输入门it,输出门ot和上一时刻神经元的记忆,高效计算隐藏层新的记忆和输出,计算方法分别如下:
其中,☉为Hadamard积,ct,ht分别表示t时刻隐藏层神经元的记忆和输出,
计算mt,dt,it,ft,ot,c_int,
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。
机译: 利用脉冲持续时间调制的高效变压器,消除了音频-RF变压器耦合
机译: 利用脉冲持续时间调制的高效变压器,消除了音频-RF变压器耦合
机译: 一种方法,轮胎安装的TPMS组件以及用于确定滚动轮胎的至少一个印迹事件的持续时间的机器可读存储器或计算机程序