基于熵的信号异常检测方法及装置制造方法

文档序号:6636980阅读:159来源:国知局
基于熵的信号异常检测方法及装置制造方法
【专利摘要】本发明公开了一种基于熵的信号异常检测方法及装置,其中,所述信号为包含多个信号点的时间序列,所处长度为包含信号点的个数,所述方法包括:采用预定长度的时间窗口,在所述信号上以信号点为单位进行移动,并计算初始位置的时间窗口以及每次移动后的时间窗口所覆盖的信号段的熵,将各信号段的熵与预设的阈值进行比较,如果信号段的熵大于设定阈值,则确定该信号段出现异常。本发明实施例提供的基于熵的信号异常检测方法及装置,采用了以点为单位进行时间窗口移动,并逐数据段计算对应数据段的熵,这样,能够更加准确地检测出整个信号范围中的异常情况。
【专利说明】基于熵的信号异常检测方法及装置

【技术领域】
[0001] 本发明涉及生物医学【技术领域】,尤其涉及一种基于熵的信号异常检测方法及装 置。

【背景技术】
[0002] 样本熵/近似熵是衡量信号的时间序列复杂性的一种度量,只需要比较短的数据 就能估计出比较稳定的统计值,信号越复杂,越随机,该统计值越大。近年来,样本熵/近似 熵广泛地应用于生物医学领域,特别是在房颤上,例如通过计算一段时间内的RR间隔的样 本熵/近似熵的值,能够根据该值的范围来确定该段时间内是否发生房颤,此外样本熵/近 似熵也可以用于噪音的检测。
[0003] 传统的样本熵/近似熵的计算复杂度为0(N*N),其中,0表示复杂度的计算函数。 判断某一信号是否存在噪音,可以逐段计算样本熵/近似熵,如果加入整个数据段的长度 为L,则计算的复杂度为0(N*N*L/N) = 0(N*L)。例如一段时间窗口包含100个点,则只能计 算第1-100个点、第101-200个点....的样本上/近似熵,而无法计算第50-150个点,或第 2-101个点、第3-102个点等连续时间窗口的样本熵/近似熵。也就是说这样的计算方式会 漏掉任意两段时间窗口之间的噪音,即突发的,持续比较短的噪音的判定。因而比较有效地 方式是以一个点为中心,分别计算该点两边隔N/2长度的样本熵/近似熵,然后移动到下一 个点。这样整个信号长度的检测时间复杂度就为〇(N*N*L)。Y. Jiang等人通过K-D数的方 式将长度为N的一段数据的样本熵的计算复杂度降为0(N*l〇g(N)),GaSpor Fele-Sorg 等人根据skip list等方法进行熵的快速计算。在实现上述熵值的计算的过程中,发明人 发现现有技术中至少存在如下问题:首先计算复杂度高,例如当N较小,例如4000的情况 下,所估计的统计值效果不明显,其次上述方法只是对一段数据的样本熵/近似熵的计算, 而不是对连续时间窗口的样本熵的计算。


【发明内容】

[0004] 本发明的实施例提供一种基于熵的信号异常检测方法及装置,用于实现复杂度 低,且能够对连续时间窗口的熵进行计算,能够基于所计算出的熵快速的判断所输入的信 号是否异常。
[0005] 为达到上述目的,本发明的实施例采用如下技术方案:
[0006] -种基于熵的信号异常检测方法,其中,所述信号为包含多个信号点的时间序列, 所处长度为包含信号点的个数,所述方法包括:
[0007] 采用预定长度的时间窗口,在所述信号上以信号点为单位进行移动,并计算初始 位置的时间窗口以及每次移动后的时间窗口所覆盖的信号段的熵,将各信号段的熵与预设 的阈值进行比较,如果信号段的熵大于设定阈值,则确定该信号段出现异常。
[0008] -种基于熵的信号异常检测装置,其中,所述信号为包含多个信号点的时间序列, 所处长度为包含信号点的个数,所述装置包括:
[0009] 窗口移动模块,用于以预定长度的时间窗口在所述信号上以信号点为单位进行移 动;
[0010] 熵计算模块,用于计算初始位置的时间窗口以及每次移动后的时间窗口所覆盖的 信号段的熵;
[0011] 信号段异常确定模块,用于将各信号段的熵与预设的阈值进行比较,如果信号段 的熵大于设定阈值,则确定该信号段出现异常。
[0012] 本发明实施例提供的基于熵的信号异常检测方法及装置,采用了以点为单位进行 时间窗口移动,并逐数据段计算对应数据段的熵,这样,能够更加准确地检测出整个信号范 围中的异常情况。

【专利附图】

【附图说明】
[0013] 图1为发明实施例的信号结构以及时间窗口移动的示意图;
[0014] 图2为本发明实施例1的近似熵的计算流程示意图。
[0015] 图3为本发明实施例的基于熵的信号异常检测装置的结构示意图。

【具体实施方式】
[0016] 下面结合附图对本发明实施例进行详细描述。
[0017] 实施例1
[0018] 在发明本实施例中,信号为包含多个信号点的时间序列,信号的长度定义为包含 信号点的个数,例如图1所示,整个信号的长度为P,即包含P个信号点。
[0019] 本发明实施例的基于熵的信号异常检测方法包括:采用预定长度的时间窗口,在 信号上以信号点为单位进行移动,并计算初始位置的时间窗口以及每次移动后的时间窗口 所覆盖的信号段的熵,将各信号段的熵与预设的阈值进行比较,如果信号段的熵大于设定 阈值,则确定该信号段出现异常。时间窗口是沿着时间序列进行移动的窗口,主要作用是选 定用来计算熵的信号段,如图1所示,时间窗口的长度设定为N,时间窗口以点为单位移动, 每次移动多个点,但是,在本发明实施例中,优选为每次移动一个点,这样能够更加精确地 对信号的变化进行判断,从而能够准确地发现异常信号段。
[0020] 进一步地,在计算初始位置的时间窗口(如图1所示,当时间窗口处于数据段的 最左边的位置,当然也可以选择数据段中的任何位置作为初始位置)所覆盖的数据段的熵 后,在之后的窗口移动中,所产生的数据段的计算就可以采用相对简便的计算方法了。具体 地,在计算移动后的时间窗口所覆盖的信号段的熵时,从移动前的时间窗口所覆盖的信号 段的数据点对应的用于计算熵的第一运算数据中,去除在时间窗口移动的过程中移除掉的 数据点所对应的第一子运算数据,补入新加入的数据点对应的第二子运算数据,生成第二 运算数据,基于该第二运算数据计算移动后的时间窗口所覆盖的信号段的熵。
[0021] 简单地来说,以每次移动一个数据点为例,由于在计算初始位置的时间窗口对应 的数据段的熵的过程中,已经对该数据段中的各个数据点的相关数据(用于熵计算的中间 数据)进行了计算,因此,在时间窗口的移动过程中,只需要在这些中间数据中,去除掉那 些移除掉的数据点对应的中间数据,加入新加入的数据点对应的中间数据即可,在此基础 上再进行熵的计算。由此,能够大幅减少数据计算量,提高时间窗口移动过程中的计算效 率。
[0022] 在本发明实施例的基于熵的信号异常检测方法中,熵可以具体为近似熵或样本 熵,下面将分别说明在这两种情况下的计算处理,其中,定义信号的长度为P,定义时间窗口 的预定长度为N,其中,N小于P,定义模式维数为m,相似容限为r。
[0023] 1、近似熵
[0024] 1)如图2所示,当时间窗口位于初始位置时,可以按照如下步骤计算该时间窗口 所覆盖的初始的信号段的近似熵:
[0025] 步骤11 :将该初始的信号段所包含的信号点按照顺序组成N-m+1个m维矢量,后 一个矢量相对前一个矢量移动一个数据点。
[0026] 步骤12 :计算每个m维矢量相对于自身以及其他m维矢量的多个距离值,在该步 骤中,可以具体采用如下公式计算:
[0027] 基于下式计算信号段中的矢量Xi和Xj之间的距离(![X i, Xj],

【权利要求】
1. 一种基于熵的信号异常检测方法,其特征在于,所述信号为包含多个信号点的时间 序列,信号的长度为包含信号点的个数,所述方法包括: 采用预定长度的时间窗口,在所述信号上以信号点为单位进行移动,并计算初始位置 的时间窗口以及每次移动后的时间窗口所覆盖的信号段的熵,将各信号段的熵与预设的阈 值进行比较,如果信号段的熵大于设定阈值,则确定该信号段出现异常。
2. 根据权利要求1所述的方法,其特征在于,在计算移动后的时间窗口所覆盖的信号 段的熵时,从移动前的时间窗口所覆盖的信号段的数据点对应的用于计算熵的第一运算数 据中,去除在时间窗口移动的过程中移除掉的数据点所对应的第一子运算数据,补入新加 入的数据点对应的第二子运算数据,生成第二运算数据,基于该第二运算数据计算所述移 动后的时间窗口所覆盖的信号段的熵。
3. 根据权利要求2所述的方法,其特征在于,所述信号的长度为P,所述时间窗口的预 定长度为N,其中,N小于P,定义模式维数为m,相似容限为r,所述熵为近似熵, 当时间窗口位于初始位置时,按照如下步骤计算该时间窗口所覆盖的初始的信号段的 近似熵: 将该初始的信号段所包含的信号点按照顺序组成N-m+1个m维矢量,后一个矢量相对 前一个矢量移动一个数据点; 计算每个m维矢量相对于自身以及其他m维矢量的多个距离值; 将每个m维矢量对应的多个距离值分别与r进行比较,并统计距离值小于r的个数作 为该m维矢量对应的第一统计个数<(r),其中,i为矢量编号,i = 1,2,. . .,N-m+1 ; 将m值加1后,重复上述处理计算每个m+1维矢量对应的第二统计个数Wf+1O); 根据如下公式计算该初始的信号段的近似熵:
当时间窗口位于初始位置以外的位置时,按照如下步骤计算该时间窗口所覆盖的非初 始的信号段的近似熵,其中,所述第一运算数据为移动前的时间窗口所覆盖的信号段的各 个m维矢量对应的<(/·)和<+1(r): 计算新加入点所在的m维矢量和m+1维矢量所对应的<\r)和; 将该新加入点对应的《,w(r)和<H+1(r)加入到所述第一运算数据中,并从所述第一运 算数据中去掉移除的点对应的《,"(r)和<μ(γ),生成所述第二运算数据,然后基于该第二 运算数据通过上述公式计算该非初始的信号段的近似熵。
4. 根据权利要求2所述的方法,其特征在于,所述信号的长度为Ρ,所述时间窗口的预 定长度为Ν,其中,N小于Ρ,定义模式维数为m,相似容限为r,所述熵为样本熵, 当时间窗口位于初始位置时,按照如下步骤计算该时间窗口所覆盖的初始的信号段的 样本熵: 将该初始的信号段所包含的信号点按照顺序组成Ν-m+l个m维矢量,后一个矢量相对 前一个矢量移动一个数据点; 计算每个m维矢量相对于其他m维矢量的多个距离值; 将每个m维矢量对应的多个距离值分别与r进行比较,并统计距离值小于r的个数作 为该m维矢量对应的第一统计个数〇),其中,i为矢量编号,i = 1,2,. . .,Ν-m+l ; 将m值加1后,重复上述处理计算每个m+1维矢量对应的第二统计个数<H+1(r); 根据如下公式计算该初始的信号段的样本熵:
当时间窗口位于初始位置以外的位置时,按照如下步骤计算该时间窗口所覆盖的非初 始的信号段的样本熵,其中,所述第一运算数据为移动前的时间窗口所覆盖的信号段的各 个m维矢量对应的《 f (r)和<+1(Γ): 计算新加入点所在的m维矢量和m+1维矢量所对应的《了〇)和; 将该新加入点对应的《Τ0)和^r1O)加入到所述第一运算数据中,并从所述第一运 算数据中去掉移除的点对应的和《'广1Cr),生成所述第二运算数据,然后基于该第 二运算数据通过上述公式计算该非初始的信号段的样本熵。
5. 根据权利要求3所述的方法,其特征在于,所述计算每个m维矢量相对于自身以及其 他m维矢量的多个距离值的处理包括: 基于下式计算所述信号段中的矢量Xi和\之间的距离(![Xi, Xj], 列尤,?=?I ,其中,Xi = [xi,Xi+1,…,xi+m-i],Xj = [X^ i = 1,2,...,N-m+1,j = 1,2,…,N_m+l〇
6. 根据权利要求4所述的方法,其特征在于,所述计算每个m维矢量相对于其他m维矢 量的多个距离值的处理包括: 基于下式计算所述信号段中的矢量Xi和\之间的距离(![Xi, Xj], d[XnXj} = A jnax Jx,.+i -xy+i| 其中,Xi = [XilXw,... ,XpnriLxj = [Xj, xJ+1,…,Xpni-J, , i = 1,2, · · ·,N-m+1,j = 1,2,…,N-m+1,i # j〇
7. 根据权利要求I所述的方法,其特征在于,所述信号为心电信号。
8. 根据权利要求1至7任一所述的方法,其特征在于,采用预定长度的时间窗口,在所 述信号上以信号点为单位进行移动的处理包括:采用预定长度的时间窗口,在所述信号上 以信号点为单位进行移动,每次移动一个信号点。
9. 一种基于熵的信号异常检测装置,其特征在于,所述信号为包含多个信号点的时间 序列,信号的长度为包含信号点的个数,所述装置包括: 窗口移动模块,用于以预定长度的时间窗口在所述信号上以信号点为单位进行移动; 熵计算模块,用于计算初始位置的时间窗口以及每次移动后的时间窗口所覆盖的信号 段的熵; 信号段异常确定模块,用于将各信号段的熵与预设的阈值进行比较,如果信号段的熵 大于设定阈值,则确定该信号段出现异常。
10.根据权利要求9所述的装置,其特征在于,所述熵计算模块包括: 初始窗口熵的计算模块,用于计算初始窗口的熵; 非初始窗口熵的计算模块,用于计算非初始窗口的熵,具体处理包括:从移动前的时间 窗口所覆盖的信号段的数据点对应的用于计算熵的第一运算数据中,去除在时间窗口移动 的过程中移除掉的数据点所对应的第一子运算数据,补入新加入的数据点对应的第二子运 算数据,生成第二运算数据,基于该第二运算数据计算所述移动后的时间窗口所覆盖的信 号段的熵。
【文档编号】G06F19/00GK104392137SQ201410722381
【公开日】2015年3月4日 申请日期:2014年12月2日 优先权日:2014年12月2日
【发明者】侯桂文 申请人:北京海思敏医疗技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1