利用人工智能的时间序列数据学习及分析方法

文档序号:1255413 发布日期:2020-08-21 浏览:5次 >En<

阅读说明:本技术 利用人工智能的时间序列数据学习及分析方法 (Time series data learning and analyzing method using artificial intelligence ) 是由 吴圭三 田恩周 权纯焕 孙炯官 尹用根 金珉洙 吕泫珠 于 2019-03-27 设计创作,主要内容包括:本发明提供利用人工智能的时间序列数据的学习及分析方法。根据本发明一实施例的时间序列数据分析方法,由计算装置执行,其可以包括:对于上述时间序列数据在时间轴上被分割的多个单位中的各个单位,将各个上述单位的特征(feature)输入到中间人工神经网络的步骤;从上述中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的步骤;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,获得从上述最终人工神经网络输出的最终输出数据的步骤;及利用上述最终输出数据生成上述时间序列数据的分析结果的步骤。(The invention provides a learning and analyzing method using artificial intelligence time series data. The time series data analysis method according to an embodiment of the present invention is executed by a computing device, and may include: inputting a feature (feature) of each of a plurality of units into an intermediate artificial neural network, the units being obtained by dividing the time-series data on a time axis; obtaining intermediate output data of m (m is a natural number of 2 or more) dimensions from the intermediate artificial neural network; inputting the intermediate output data of a plurality of temporally adjacent units to a final artificial neural network to obtain final output data output from the final artificial neural network; and generating an analysis result of the time-series data by using the final output data.)

利用人工智能的时间序列数据学习及分析方法

技术领域

本发明涉及利用人工智能的时间序列数据的学习及分析方法。更具体地,本发明涉及利用多个人工神经网络执行时间序列数据的学习及分析的方法。

背景技术

随着信息的数字化及数据储存技术的发展,积累了大量的数据,机器学习技术已被引入并应用于多种领域中。机器学习是分析大量的输入数据,根据概率将对象进行分类或者预测特定范围内的值的技术。机器学习不通过特定规则导出结果值,而是根据经验分析大量的输入数据,根据概率导出结果值的方式进行动作。

然而,对于利用人工智能学习及分析时间序列数据而言,其问题在于,时间序列数据需要与图像数据等进行比较,处理的数据长度可能会很长。以心电图数据为例,需要综合学习及分析测量24小时以上的心电图数据,以导出诊断结果,这需要花费大量的学习和分析时间,而且初期输入数据也会被渐渐稀释而模糊,所以对于长期性数据的学习及分析,在准确度方面也会出现问题。

发明内容

发明所要解决的问题

本发明所要解决的技术问题为,提供使利用人工智能的时间序列数据学习及分析的运算量减少的方法及装置。

本发明所要解决的另一个技术问题为,提供可以使利用人工智能的时间序列数据学习及分析的准确度提高的方法及装置。

本发明所要解决的技术问题为,提供使利用人工智能的心电图(ECG)学习及分析的运算量减少的方法及装置。

本发明所要解决的技术问题为,提供可以使利用人工智能的心电图(ECG)学习及分析的准确度提高的方法及装置。

本发明的技术问题不局限于以上提及的技术问题,本领域技术人员可以通过以下说明明确理解未被提及的其他技术问题。

用于解决问题的方案

为解决上述技术问题的本发明一实施例的时间序列数据分析方法,由计算装置执行,其可以包括:对于上述时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个上述单元的特征(feature)输入到中间人工神经网络的步骤;从上述中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的步骤;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,获得从上述最终人工神经网络输出的最终输出数据的步骤;及利用上述最终输出数据生成上述时间序列数据的分析结果的步骤。

一实施例中,上述中间人工神经网络及上述最终人工神经网络可以为循环神经网络(Recurrent Neural Network,RNN)。

一实施例中,上述最终人工神经网络的输入层的神经元可以为m个。

一实施例中,获得上述中间输出数据的步骤可以包括:第一计算装置将上述多个单元包括的第一单元的特征输入到体现在上述第一计算装置的上述中间人工神经网络,并从上述中间人工神经网络获得m维的中间输出数据的步骤;及第二计算装置将上述多个单元包括的第二单元的特征输入到体现在上述第二计算装置的中间人工神经网络,并从上述中间人工神经网络获得m维的中间输出数据的步骤。

一实施例中,获得上述最终输出数据的步骤可以包括,第三计算装置从上述第一计算装置接收上述第一单元的中间输出数据,从上述第二计算装置接收上述第二单元的中间输出数据,并将上述第一单元的中间输出数据及上述第二单元的中间输出数据依次输入到上述最终人工神经网络的步骤,其中,上述第一单元及上述第二单元为时间上紧邻的单元。

一实施例中,上述中间人工神经网络由k(k为2以上的自然数)个级别组成,输入到上述中间人工神经网络的步骤包括:将上述多个单元中各个单元的特征(feature)输入到级别1中间人工神经网络的步骤;将从级别i(i为1以上的自然数)中间人工神经网络获得的级别i输出数据输入到级别i+1中间人工神经网络的步骤;及从级别i+1中间人工神经网络获得级别i+1输出数据的步骤,其中,上述中间输出数据可以为从级别k中间人工神经网络输出的数据。

一实施例中,上述时间序列数据可以为心电图数据。

一实施例中,上述分析结果可以为心电图诊断结果。

一实施例中,上述n个单元可以为利用R峰值(R-peak)分割的搏动(beat)单元。

一实施例中,所分割的n个上述搏动单元可以为,在分割上述时间序列数据后,比较所分割的搏动之间的相似度,将与现有特定搏动的相似度为预设数值以上的搏动代替为上述特征单元。

为解决上述技术问题的本发明的另一个实施例的时间序列数据学习方法,由计算装置执行,其可以包括:对于上述时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个上述单元的特征(feature)输入到中间人工神经网络的步骤;从上述中间人工神经网络获得m(m为2个以上的自然数)维的中间输出数据的步骤;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,获得从上述最终人工神经网络输出的最终输出数据的步骤;及将上述最终输出数据与标记在上述时间序列数据的标签进行比较的步骤。

一实施例中,上述中间人工神经网络及上述最终人工神经网络可以为循环神经网络(Recurrent Neural Network,RNN)。

一实施例中,上述比较的步骤包括将上述最终输出数据与标记在上述时间序列数据的标签进行比较并计算误差的步骤,在上述比较的步骤之后上述时间序列数据学习方法还可以包括将上述误差反向传播,调整上述中间人工神经网络的权值及上述最终人工神经网络的权值的步骤。

一实施例中,调整上述权值的步骤可以包括将上述中间人工神经网络的学习率(learning rate)设置为上述最终人工神经网络的1/n倍,调整上述中间人工神经网络的权值的步骤。

一实施例中,上述中间人工神经网络由k(k为2以上的自然数)个级别组成,输入到上述中间人工神经网络的步骤包括:将上述多个单元中各个单位的特征输入到级别1中间人工神经网络的步骤;将从级别i(i为1以上的自然数)中间人工神经网络获得的级别i输出数据输入到级别i+1中间人工神经网络的步骤;及从级别i+1中间人工神经网络获得级别i+1输出数据的步骤,其中,上述中间输出数据可以为从级别k中间人工神经网络输出的数据。

一实施例中,上述时间序列数据可以为心电图数据。

一实施例中,n个上述单元可以为利用R峰值分割的搏动单元。

为解决上述技术问题的本发明的另一个实施例的时间序列数据分析装置包括:网络接口,其接收时间序列数据;一个以上的处理器;内存(memory),其加载由上述处理器执行的计算机程序;及存储器(storage),其储存上述计算机程序,上述计算机程序可以包括:对于上述时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个上述单元的特征(feature)输入到中间人工神经网络,从上述中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的命令;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,并获得从上述最终人工神经网络输出的最终输出数据的命令;及利用上述最终输出数据生成上述时间序列数据的分析结果的命令。

为解决上述技术问题的本发明的另一个实施例的时间序列数据学习装置包括:网络接口,其接收时间序列数据;一个以上的处理器;内存(memory),其加载由上述处理器执行的计算机程序;及存储器(storage),其储存上述计算机程序,上述计算机程序可以包括:对于上述时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个上述单元的特征(feature)输入到中间人工神经网络,从上述中间人工神经网络获得m(m是2以上的自然数)维的中间输出数据的命令;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,获得从上述最终人工神经网络输出的最终输出数据的命令;及将上述最终输出数据与标记在上述时间序列数据的标签进行比较的命令。

为解决上述技术问题的本发明的另一个实施例的记录介质可以为储存计算机程序的计算机可读记录介质,其中,上述计算机程序用于执行:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个上述单元的特征(feature)输入到中间人工神经网络的步骤;从上述中间人工神经网络获得m(m是2以上的自然数)维的中间输出数据的步骤;将时间上紧邻的多个单元的上述中间输出数据输入到最终人工神经网络,获得从上述最终人工神经网络输出的最终输出数据的步骤;及利用上述最终输出数据生成上述时间序列数据的分析结果的步骤。

发明效果

根据上述本发明的多种实施例,在执行利用人工智能的时间序列数据学习及分析时,可以减少计算量,提高准确度。

根据上述本发明的多种实施例,在执行利用人工智能的心电图数据学习及分析时,可以减少计算量,提高准确度。

本发明的效果不局限于以上所提及的效果,普通的技术人员可以通过以下说明明确理解未被提及的其他效果。

附图说明

图1a及图1b是示出可穿戴心电图测量装置及其附着方法的图。

图2是示出包括心电图测量装置、网络210及服务器的心电图分析系统的图。

图3a及图3b是示出基于现有的RNN的心电图分析方法的图。

图4是示出根据本发明一实施例的利用人工智能的心电图分析方法的流程图。

图5是示出根据本发明一实施例的心电信号分割方法的图。

图6a至图6c是示出根据本发明一实施例的相似搏动处理方法的图。

图7a及图7b是示出根据本发明一实施例的中间人工神经网络及最终人工神经网络的图。

图8至图10是示出根据本发明一实施例的利用人工智能的时间序列数据分析方法的图。

图11是示出根据本发明一实施例的利用人工智能的时间序列数据分析方法的流程图。

图12是示出在根据本发明一实施例的人工神经网络结构中,当中间人工神经网络体现为多个级别时的图。

图13是示出在根据本发明一实施例的人工神经网络的结构中,当中间人工神经网络体现为多个级别时的时间序列数据分析方法的流程图。

图14是示出根据本发明一实施例的利用人工智能的心电图学习方法的流程图。

图15是示出在根据本发明一实施例的利用人工智能的心电图学习方法中使用的学习数据的图。

图16是示出根据本发明一实施例的利用人工智能的时间序列数据学习方法的图。

图17是示出根据本发明一实施例的利用人工智能的时间序列数据学习方法的流程图。

图18是可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的示例性的计算装置的硬件结构图。

具体实施方式

以下,参照附图详细说明本发明的优选实施例。参照以下结合附图详细描述的实施例,可以明确本发明的优点和特征以及体现它们的方法。但是本发明不局限于以下公开的实施例,而是能够以互不相同的各种方式体现。只是,提供本实施例是为了使本发明的公开内容完整,使本发明所属技术领域的普通技术人员完整地理解发明的范畴,本发明仅由权利要求书定义。整个说明书中相同的附图标记表示相同的结构要素。

若没有其他定义,本说明书中使用的全部术语(包括技术及科学术语)可以使用为,能被本发明所属技术领域的普通技术人员共同理解的含义。并且在未明确特别定义的情况下,通常所使用的、词典中已有定义的术语不应被异常或过度解释。本说明书中所使用的术语只是用于说明实施例,并不限定本发明。本说明书中,除非句中特别提及,单数形式也包括复数形式。

说明书中使用的“包括(comprises)”及/或者“包含(comprising)”中所提及的会有结构要素、步骤、动作及/或元件,并不排除一个以上的其他结构要素、步骤、动作及/或者元件的存在或者添加。

在对本说明书进行说明之前,明确本说明书中所使用的若干术语。

本发明所属技术领域中‘人工神经网络(neural network)’指由模拟生物的神经网络(尤其是人的视觉/听觉皮层)而成的多层及构成各个层的多个节点组成的图表结构。人工神经网络包括一个输入层、一个以上的隐藏层及一个输出层。

本发明所属技术领域中‘输入层(input layer)’指在人工神经网络的层结构中,接收所要分析/学习的数据的层。

本发明所属技术领域中‘输出层(output layer)’指在人工神经网络的层结构中,输出结果值的层。

本发明所属技术领域中‘隐藏层(hidden layer)’指在人工神经网络的层结构中,除输入层和输出层以外的所有层。人工神经网络由神经元的连续的层构成,且各个层的神经元与下一层的神经元连接。如果不通过隐藏层直接连接输入层和输出层,则各个输入会与其他输入无关的、独立地贡献于输出,由此难以获得准确结果。实际上,输入数据通过相互依存且相互结合以复杂的结构影响输出,因此通过添加隐藏层,可以捕获隐藏层的神经元影响最终输出的输入之间微妙的相互作用。即,可以看作隐藏层对数据的高级特征或属性进行处理。

本发明所属技术领域中‘神经元(neuron)’是将生物学神经网络中的神经元对应到人工神经网络的概念。‘神经元’也称为‘节点’。

本发明所属技术领域中‘权值(weight)’是将生物学神经网络中的通过重复的信号传输使突触(synapse)连接增强的程度对应到人工神经网络的概念。在生物学神经网络中,当信号频繁地从神经元1传输到神经元2时,为了提高信号传输的效率性,增强神经元1到神经元2的路径,即增强突触连接。这被视为一种学习或者记忆的过程,在人工神经网络中,将其解释为‘权值’。

本发明所属技术领域中‘反向传播(back propagation)’是来源于‘误差的反向传播(backward propagation of errors)’的单词,指通过输出值与实际值之差,即误差(错误)的反向传播来调整人工神经网络的权值。

本发明所属技术领域中‘梯度下降法(gradient descent)’为在反向传播时决定学习模型的权值的方法,是指寻找使包括权值的前馈函数值的输出值与带标签(labeled)的实际值之差最小化的权值的方法。作为一例,当损失函数的形状显示为抛物线形状时,可以寻找其最低点计算权值,由于寻找最低点的过程与走下坡的模样相似,因此被命名为梯度下降法。

本发明所属技术领域中‘学习率(learning rate)’指在用于调整人工神经网络权值的梯度下降算法中寻找最小值的步长(step size)。当学习率大时,调整速度快,但精度低,当学习率小时,精度高,但调整速度慢。

本发明所属技术领域中‘卷积神经网络(Convolutional Neural Networks,CNN)’为在人工神经网络结合过滤技术的深度学习模型,使人工神经网络优化为更好地掌握输入数据的特征。卷积神经网络在计算机视觉(computer vision)领域中显示优异的性能。

本发明所属技术领域中‘循环神经网络(Recurrent Neural Network,RNN)’为适合于学习随时间变化的数据(例如,时间序列数据(time series data))的深度学习模型,是将网络连接于基准时间点t和下一个时间点t+1而构成的人工神经网络。循环神经网络的特征在于,节点之间的连接拥有循环结构,且这种结构使人工神经网络可以有效地处理时变特征。循环神经网络可以有效处理序列形式的输入,且在处理具有时变特征的时间序列数据(例如,手写识别和语音识别)方面显示良好的性能。

以上说明的人工智能相关技术及术语在维基百科、YouTube等网站有详细的说明,因此省略其详细说明。例如,循环神经网络在https://en.wikipedia.org/wiki/Recurrent_neural_network等的文献中有详细的说明。

本说明书中‘时间序列数据’指根据时间顺序排列的数据。只是它在时间上非必须连续,即便是离散性(discrete)数据,只要是根据时间顺序排列的,也能成为本说明书中所述的‘时间序列数据’。

本说明书中‘单元’指时间序列数据在时间轴上被分割(split)为2个以上的个体时的各个个体。

本说明书中‘特征(feature)’指从时间序列数据或单元中提取的时间序列数据或单元的特征。

本说明书中‘中间人工神经网络’指中间步骤(接收输入数据并输出中间输出数据)的人工神经网络。中间输出数据与通常的人工神经网络的输出值不同的是,其不是利用人工智能最终所要获得的值。

本说明书中‘最终人工神经网络’指最终步骤(从中间人工神经网络接收中间输出数据并输出最终输出数据)的人工神经网络。最终人工神经网络是位于人工智能系统(由根据本发明一实施例的多个人工神经网络构成)的末梢(terminal)的人工神经网络,最终人工神经网络输出的最终输出数据是利用人工智能最终所要获得的值。

以下所要说明的本发明涉及利用人工智能的时间序列数据的学习及分析方法。具体地,本发明公开了利用多个人工神经网络执行时间序列数据的学习及分析的时间序列数据的学习及分析方法。

本说明书中为了具体说明本发明,将心电图作为时间序列数据的示例进行说明。具体地,通过说明在进行心电图学习及分析时使用根据本发明一实施例的利用多个人工神经网络的过程,对根据本发明一实施例的利用人工智能的时间序列数据的学习及分析方法进行说明。

以下参照附图对本发明进行详细说明。

心电图(electrocardiogram)指分析心脏的电活动并以波长形式记录的图。心电图为将与心脏搏动相关的电位在体表以图形形式记录的图,是诊断循环系统疾病的检查中使用最多的检查。

心电图多用于诊断心率失常和冠状动脉疾病。当间歇性地发生心律失常时,仅通过一次的心电图检查是无法诊断出心律失常的,因此需要获得在日常生活中所记录的心电图。对于不经常发生的心律失常,可能无法由短时间的心电图记录所发现,因此若怀疑患有心率失常时,长时间测量并记录心电图,以进行准确的诊断。

现有的心电图测量装置是将许多电极附着在身体进行测量的方式。例如,通常使用的Holter监测仪(Holter monitor)是在胸部附着5~7个电极且在腰部配戴重量为500g左右的检测仪,并测量心电图的方式。现有的心电图测量装置存在如下问题:其尺寸大,重量重,并且因具有许多电极,当附着在身体时会产生不适感,妨碍自由的日常生活。

为解决这些问题,最近开发中的可穿戴式心电图测量装置减少了其设备的大小及重量,并且使电极数量最小化。将电极数量最小化的原因是,综合考虑使用者在日常生活中的便利性及心电图测量装置的电池性能。

图1a及图1b是示出可穿戴心电图测量装置及其附着方法的图。

图1a示出了可穿戴心电图测量装置100,如图1a所示,其电极的数量为2个。

图1b示出了将可穿戴心电图测量装置100附着在身体测量心电图的方法,如图1b所示,在心脏周围附着电极测量心电图。

可穿戴心电图测量装置100比现有的心电图测量装置方便携带,但现有的心电图测量装置利用多个电极分析多通道(multi-channel)的心电信号,从而能够测量及诊断出相对准确的心电图,与此相比,可穿戴心电图测量装置100只能测量1通道的心电信号,因此存在心电图测量及诊断的准确度低的问题。

可穿戴心电图测量装置100无法照原样使用现有的通过多通道收集的心电图测量装置(例如,Holter检测仪)所使用的心电图分析方法,存在着需要仅通过1通道的心电信号来诊断心律失常等的困难。尽管如此,由于可穿戴心电图测量装置100具有携带便利等优点,因此,正进行许多研究关于仅利用可穿戴心电图测量装置100测量出的1通道的心电信号来诊断心率失常等的方法。尤其,随着人工智能领域中深度学习技术的发展,存在仅通过一个信号就能充分达成高准确度的心率失常诊断的可能性。

然而,本发明中测量被检查人员的心电图的设备不局限于可穿戴式的心电图测量装置100,只要可以附着在身体测量心电图,任何形式的心电图测量装置100都可以。以下,为了说明的便利,本发明中将测量被检查人员的心电图的设备统一为‘心电图测量装置100’。

图2是示出包括心电图测量装置、网络及服务器的心电图分析系统的图。

心电图测量装置100仅测量被检查人员的心电图,很多情况下不提供自行分析功能。因此优选地,心电图测量装置100仅执行心电图测量,心电图分析在服务器200端执行。具体优选地,心电图测量装置100测量心电图并传输到服务器200,在服务器200端利用人工智能等分析心电图数据。

如图2所示,根据本发明一实施例的心电图分析系统可以包括:心电图测量装置100、网络210及服务器200。

被检查人员可以在附着心电图测量装置100的情况下进行日常生活。由心电图测量装置100测量的心电图数据通过网络210传输到服务器200。此时,服务器200可以是医院的服务器、医疗服务供应商的服务器、IT公司的服务器或保健福祉部等政府机关的服务器。由于个人的心电图数据是敏感的医疗信息,因此服务器200优选是被许可收集及分析医疗信息的单位的服务器。

服务器200利用从心电图测量装置100接收的心电图数据来执行学习及分析。服务器200学习心电图信号时,可以使其学习由医疗专家,例如心脏病专家(cardiologist)用标签标记心电图诊断结果的心电图数据。

在人工智能的特性上,人工神经网络的学习需要较长的时间和较高的计算能力,相反,对于人工神经网络的应用而言,较短时间和较低的计算能力也是足够的。因此,心电图数据的学习可以在服务器200端执行,而心电图数据的分析可以在心电图测量装置100本身、在与心电图测量装置100有线/无线连接的额外的心电图分析设备、以及在与心电图测量装置100有线/无线连接的智能手机、平板电脑及笔记本电脑等执行。

只是,在本说明书中,将以服务器200可实现心电图数据的学习及分析为前提说明根据本发明一实施例的心电图数据的学习及分析方法。但这些说明不排除心电图数据的分析在心电图测量装置100本身、在与心电图测量装置100有线/无线连接的额外的心电图分析设备、以及在与心电图测量装置100有线/无线连接的智能手机、平板电脑及笔记本电脑等执行。

迄今研究的利用人工智能的心电图数据的学习及分析方法基于卷积神经网络(CNN)。CNN为在人工神经网络结合过滤技术的深度学习模型,在图像分析等计算机视觉(computer vision)领域显示优异的性能。然而,与图像不同的是心电图为具有顺序性内容(sequential context)的时间序列数据,因此在利用专用于图像分析的CNN技术来分析心电图上具有局限性。

基于CNN的心电图分析方法并不读取全部心电信号的顺序性内容,而是掌握局部心电信号的特征,并组合这些特征来导出全部心电图分析结果。由于基于CNN的心电图分析方法是从微观角度分析心电图数据,而不是从宏观的角度进行分析,因此,当局部心电信号包括噪声时,无法很好地掌握该部分的特征,这会对全部心电信号的判断准确度产生不好的影响。并且,当相互冲突的多个特征存在于一个信号时,所过滤的特征不会被考虑到诊断中,所以存在判断准确度明显降低的问题。

为了克服上述问题,目前正在进行研究关于利用RNN的心电图分析方法。

图3a及图3b是示出基于现有的RNN的心电图分析方法的图。

图3a示出了心电图测量装置100在预定时间内测量的心电信号。

在示于图3a的心电信号中,尖锐凸起的部分为R峰值(R-peak)。关于R峰值在https://en.wikipedia.org/wiki/QRS_complex等有详细的说明,因此省略其详细说明。

图3b示出了由心电图测量装置100在预定时间内测量的心电信号以3个博动(beat:指心脏搏动单位)为单位输入到RNN。

在预定时间内测量的心电信号利用R峰值以搏动(beat)单位进行分割(split)。RNN一同输入时间上紧邻的3个搏动,这是因为事先搏动、所要判断的搏动及事后搏动之间的关系对于从心电信号判断心律失常很重要。即事先搏动、所要判断的搏动及事后搏动的发生间距、高度差等是判断心率失常的重要考虑因素。

当心电信号分为9个搏动,且将各个搏动命名为A、B、C、D、E、F、G、H及I时,A+B+C、B+C+D、C+D+E、D+E+F、E+F+G、F+G+H及G+H+I输入到RNN。

如图3b所示,A+B+C、B+C+D、C+D+E、D+E+F、E+F+G、F+G+H及G+H+I依次输入到一个RNN。

当将一个搏动以250Hz进行采样时,若利用现有的RNN分析图3a的心电信号,则需要处理长度为7(判断对象搏动的数量)×3(一同输入相邻的3个搏动)×250(各个搏动的采样数)=5250的输入。

并且,由于心率失常并不总是出现,因此需要长时间收集并分析被检查人员的心电信号。健康成人的心跳次数是每分钟60~100次,将此换算为24小时是86400~144000次。假设每分钟心跳次数为80次时,24小时的心跳次数是115200次。这指测量1分钟的搏动数为80个,测量24小时的搏动数为115200个。

为了分别判断115200个搏动,需要一同考虑各个搏动的事先搏动和事后搏动,因此,当将一个搏动以250Hz进行采样时,RNN需要处理长度约为115200(判断对象搏动的数量)×3(一同输入相邻的3个搏动)×250(各个搏动的采样数)=86400000的输入。

相比基于RNN的心电图分析,基于CNN的心电图分析速度快,但因无法读取心电信号的顺序性内容,分析的准确度较低。反之,基于RNN的心电图分析可以读取心电信号的顺序性内容,但因需要处理的输入长度太长,难以确保心电图分析的实时性。

图4是示出了根据本发明一实施例的利用人工智能的心电图分析方法的流程图。

如图4所示,根据本发明一实施例的利用人工智能的心电图分析方法可以包括:心电信号收集步骤S411;心电信号预处理步骤S412;R峰值检测步骤S413;心电信号分割步骤S421;搏动的显著性(significance)判断步骤S422;相似搏动处理步骤S430;特征(feature)提取步骤S440;中间人工神经网络分析步骤S450;最终人工智能网络分析步骤S460;及判断结果报告(report)步骤。

心电信号收集步骤S411是服务器200从心电图测量装置100接收心电信号并收集的步骤。

心电信号预处理步骤S412是处理心电信号中混有的噪声、信号中断及信号干扰等的步骤。具体地,可以利用如带通滤波器(Band Pass Filter)等现有的公知的方法,对从心电图测量装置100接收的心电信号进行预处理。

R峰值检测步骤S413是从心电信号中检测R峰值的步骤。检测R峰值时不局限于特定的检测算法,可以使用Pan-Tompkins算法(Pan-Tompkins algorithm)、希尔伯特变换(Hilbert transform)、Kathirvel et al(一种基于新的非线性变换和一阶高斯微分器的高效R峰检测,心血管工程和技术(An efficient R-peak detection based on newnonlinear transformation and first-order Gaussian differentia-tor.Cardiovascular Engineering and Technology))等现有公知的多种检测算法。

心电信号分割步骤S421是利用所检测的R峰值将心电信号分割为搏动单位的步骤。

搏动的显著性判断步骤S422是利用R峰值判断所分割的搏动是否对应于实际心率的步骤。例如,将忽然的噪声误判为R峰值时,基于误判的R峰值分割的搏动不对应于实际心率。

人的心脏搏动有保持相似长度的特性,因此太短或太长的搏动可以视为在R峰值检测步骤中发生了错误检测。具体地,当利用R峰值分割的搏动在统计上太长(例如:99百分位(percentile)以上)或太短(例如:1百分位(percentile)以下)时,可以视为在R峰值检测步骤中发生了错误检测,此时,需要重新检测R峰值。对于再此检测R峰值时使用的算法,可以使用与之前使用的算法不同的其他算法,或者对之前使用的算法的参数进行修改后使用,对于统计上太长或统计上太短的搏动,也可以分别适用不同的算法。重新检测R峰值的理由为,R峰值检测算法不能保证100%准确度,特别是可穿戴装置在检测及传输数据时可能会产生很多噪声。

在搏动的显著性判断步骤S422中,所分割的搏动在统计上不显著时(步骤S422的‘否’),选择其他合适的R峰值检测算法(步骤S423),并利用选择的R峰值检测算法重新检测R峰值(步骤S424)。利用通过所选择的R峰值检测算法检测出的R峰值,重新将心电信号分割为搏动单位。并且,重复进行R峰值检测算法的选择和R峰值检测过程,直到判断为所分割的搏动在统计上显著。

在搏动的显著性判断步骤S422中,所分割的搏动在统计上显著时(步骤S422的‘是’),执行相似搏动处理步骤S430。相似搏动处理步骤S430是,当事先发生搏动中存在与事先搏动相似的搏动时,将当前搏动替换成事先发生搏动的步骤。虽然,相似搏动处理步骤S430不是必要的,但可以通过相似搏动处理步骤S430减少计算机的运算量。

特征提取步骤S440是提取各个搏动的特征的步骤。提取特征可以使用信号处理中广泛使用的快速傅里叶变换(Fast Fourier Transform,FFT)、梅尔倒谱系数(MelFrequency Cepstral Coefficient,MFCC)、滤波器组(Filter Bank)、小波(Wavelet)等多种方法。

中间人工神经网络分析步骤S450是将各个搏动的特征输入到中间人工神经网络并获得中间输出数据的步骤。中间输出数据与通常的人工神经网络的输出值不同的是,其不是利用人工智能最终所要获得的值。关于中间人工神经网络和中间人工神经网络分析步骤S450的详细说明,后续会参照图7a至图12进行详细的说明。

最终人工神经网络分析步骤S460是从中间人工神经网络接收中间输出数据,由此获得最终输出数据的步骤。最终人工神经网络是位于人工智能系统(由本发明一实施例的多个人工神经网络构成)的末梢(terminal)的人工神经网络,最终人工神经网络输出的最终输出数据是利用人工智能最终所要获得的值。关于最终人工神经网络和最终人工神经网络分析步骤S460的详细说明,后续会参照图7a至图12进行详细的说明。

判断结果报告步骤S470是利用在最终人工神经网络分析步骤S460中获得的最终输出数据,生成诊断结果并报告的步骤。具体地,判断结果报告步骤S470可以通过分析心电信号判断出被检查人员是否患有心率失常后,报告判断结果。

图5是示出根据本发明一实施例的心电信号分割方法的图。

如图5所示,心电信号可以基于R峰值分割为搏动单位。具体地,在心电信号中,可以分割R峰值的左边,也可以分割R峰值的右边。当基于R峰值分割心电信号时,分割心电信号的位置可以是任意位置。通常心电图的波形区分为P-QRS-T,图5反映了这一点,以R峰值位于各个搏动的中心的方式分割了心电信号。

图6a至图6c是示出根据本发明一实施例的相似搏动处理方法的图。

为了利用心电信号判断心率失常,需要收集长时间的数据。心率失常的特征是无规则的发生,所以无法预测其发生时间点。因此,为了可以长时间(几天)测量心电图,使被检查人员附着可穿戴装置形式的心电图测量装置100。

当将心电图测量装置100测量的心电信号传输到服务器200,并由服务器200分析心电信号时,如果在将数据输入到人工神经网络之前,已经发生的搏动中存在相似的搏动,则可以仅分析事先发生的搏动,并一同使用其结果,提高分析速度。

如图6a所示,将当前搏动K与事先发生搏动A、B、C、D、E、F、G、H、I及J进行比较,计算相似度。计算当前所要判断的搏动与事先发生的N个搏动的相似度,并在相似度为临界值以上的事先发生搏动中选择最相似的搏动作为代替搏动。

与当前搏动K的相似度为临界值以上的事先发生搏动中,最相似的搏动为搏动G时(参考图6b),在将放入搏动K的位置放入搏动G来代替搏动K。当没有相似的搏动时,保持搏动K。

由于仅保持N个事先搏动数据,因此在判断下一个搏动的相似度时,会出现如图6c的情况。

使用由此生成的、基于相似度的搏动连接信息,共享搏动G的分析结果而不进行对搏动K的额外的分析。并且,在此步骤中生成的连接信息在诊断全部结束后用于恢复搏动K的结果。相似度计算算法可以使用L1、L2及DTW等公知的相似度算法中的任意一个。人的心电图具有较强的重复相似信号的倾向,因此,可以通过如上所述的相似度方式的搏动过滤,大幅度减少计算量。

图7a及图7b是示出根据本发明一实施例的中间人工神经网络及最终人工神经网络的图。

如上所述,根据本发明一实施例的心电图分析方法,在利用R峰值将心电信号分割为搏动单位后,提取各个搏动的特征,并将各个搏动的特征输入到中间人工神经网络。

图7a是示出根据本发明一实施例的中间人工神经网络的图。如图7a所示,当对任意一个搏动,例如对搏动A进行t0、t1、…、tv的特征提取时,搏动A的v+1个特征输入到位于中间人工神经网络的输入层的v+1个节点。

输入到中间人工神经网络的数据经过隐藏层输出到位于输出层的m个节点。输出到位于中间人工神经网络的输出层的m个节点的值可以表示搏动A的特征。但需要注意的是,输出到位于中间人工神经网络的输出层的m个节点的值,不是利用人工智能综合分析心电信号而最终所要获得的值,而是将任意一个搏动,例如将搏动A的特征显示为m维。中间人工神经网络可以通过指导模型学习搏动A,此时,输出到位于中间人工神经网络的输出层的m个节点的值,可以是对于搏动A的某种预测值或分类值。中间人工神经网络也可以通过非指导模型学习搏动A,此时,输出到位于中间人工神经网络的输出层的m个节点的值,可以是用于聚类(clustering)搏动A的值。在任何情况下,输出到位于中间人工神经网络的输出层的m个节点的值,仅是将搏动A的特显示为m维,而不是利用人工智能最终所要获得的值。此时,所提取的特征优选为2个以上。即m优选为2以上的自然数。

一方面,图7a示出了中间人工神经网络为RNN结构,但图7a的中间人工神经网络不局限于RNN结构,也可以是CNN结构或其他人工神经网络结构。

图7b是示出根据本发明一实施例的最终人工神经网络的图。如图7b所示,由中间人工神经网络的输出层的m个节点输出的值,输入到位于最终人工神经网络的输入层的m个节点。

最终人工神经网络可以是RNN,此时,为反映连续的搏动的时变特征,可以将关于所要判断的搏动的前一个搏动的m维的特征值、关于所要判断的搏动的m维的特征值及关于所要判断的搏动的下一个搏动的m维的特征值依次输入到最终人工神经网络的输入层。

如图3a及图3b所示,当心电信号分为9个搏动(beat),将各个搏动命名为A、B、C、D、E、F、G、H及I,并且一同输入所要判断的搏动、前一个搏动及下一个搏动并进行分析时,关于搏动A的m维的特征值、关于搏动B的m维的特征值及关于搏动C的m维的特征值可以依次连续地输入到最终人工神经网络。当全部心电信号分为9个搏动(beat),且将各个搏动命名为A、B、C、D、E、F、G、H及I时,数据可以根据如下顺序输入到最终人工神经网络。

(1)关于搏动A的m维的特征值、关于搏动B的m维的特征值、关于搏动C的m维的特征值。

(2)关于搏动B的m维的特征值、关于搏动C的m维的特征值、关于搏动D的m维的特征值。

(3)关于搏动C的m维的特征值、关于搏动D的m维的特征值、关于搏动E的m维的特征值。

(4)关于搏动D的m维的特征值、关于搏动E的m维的特征值、关于搏动F的m维的特征值。

(5)关于搏动E的m维的特征值、关于搏动F的m维的特征值、关于搏动G的m维的特征值。

(6)关于搏动F的m维的特征值、关于搏动G的m维的特征值、关于搏动H的m维的特征值。

(7)关于搏动G的m维的特征值、关于搏动H的m维的特征值、关于搏动I的m维的特征值。

输入到最终人工神经网络的数据经过隐藏层输出到位于输出层的c个节点。

最终人工神经网络可以通过指导模型学习全部心电信号。此时,输出到位于最终人工神经网络的输出层的c个节点的值可以是用于将全部心电信号分类成c个分类的值。

如图7b所示,最终人工神经网络优选为能够很好地反映数据的时变特征RNN结构。RNN结构具有节点之间的连接拥有循环结构的特征,其可以有效地处理时变特征,由于最终人工神经网络用于依次接收连续的搏动的m维的特征并将全部心电信号(作为连续的搏动的集合)分类为c个,因此,最终人工神经网络的结构优选为RNN结构。然而,最终人工神经网络不局限于RNN结构,也可以是能反映时间序列数据的时变特征的其他人工神经网络结构。即,最终人工神经网络不局限于RNN结构。

图8至图10是示出根据本发明一实施例的利用人工智能的时间序列数据分析方法的图。

图8示出了利用根据本发明一实施例的利用人工智能的时间序列数据分析方法分析心电信号,但如上所述,这仅是为了方便说明,根据本发明一实施例的利用人工智能的时间序列数据分析方法不局限于心电信号分析。

参照图8说明根据本发明一实施例的利用人工智能分析时间序列数据(例如心电信息)的过程。

当输入心电信号810时,根据预定标准将心电信号分割为多个搏动821、822、823…。例如,从心电信号810中检测出R峰值后,可以利用R峰值将心电信号分割为多个搏动821、822、823…。

将其一般化为时间序列数据进行说明,可以描述为:当输入时间序列数据时,根据预定标准将时间序列数据分割为多个单元(unit)。

然后,对于多个搏动821、822、823…分别执行提取各个搏动的特征831、832、833…的操作。提取特征可以使用信号处理中广泛使用的快速傅里叶变换(Fast FourierTransform,FFT)、梅尔倒谱系数(Mel Frequency Cepstral Coefficient,MFCC)、滤波器组(Filter Bank)、小波(Wavelet)等多种方法。

将其一般化为时间序列数据进行说明,可以描述为:当时间序列数据分割为多个单元(unit)时,对于多个单元分别提取各个单元的特征。

然后,执行将各个搏动的特征831、832、833…输入到中间人工神经网络841、842、843…的操作。如果将心电信号分割为n个搏动,则将提取共n个特征,此时,中间人工神经网络也优选为n个。将n个搏动中每一个的特征输入到n个中间人工神经网络中每一个的输入层,由此从n个中间人工神经网络中每一个的输出层获得关于n个搏动中每一个的m维的特征值。此时,将中间人工神经网络输出的值称为‘中间输出数据’。

从多个搏动821、822、823…提取多个特征831、832、833…的操作利用快速傅里叶变换(Fast Fourier Transform,FFT)、梅尔倒谱系数(Mel Frequency CepstralCoefficient,MFCC)、滤波器组(Filter Bank)、小波(Wavelet)等公知的算法,但从多个搏动的特征831、832、833…获得多个m维的特征值的操作是利用人工智能进行分析的结果,这就是两者的区别。

将其一般化为时间序列数据进行说明,可以描述为:当时间序列数据分割为n个单元(unit),并且提取各个单元的特征时,将各个单元的特征输入到n个中间人工神经网络。将n个单元中每一个的特征输入到n个中间人工神经网络中每一个的输入层,由此n个中间人工神经网络中每一个的输出层获得关于n个单元中每一个的m维的特征值。

然后,将关于n个中间人工神经网络输出的n个搏动中每一个的m维的特征值,根据各个搏动在时间轴上的顺序输入到最终人工神经网络850。最终人工神经网络可以是RNN,此时,为了反映连续的搏动的时变特征,将关于所要判断的搏动的前一个搏动的m维的特征值、关于所要判断的搏动的m维的特征值及关于所要判断的搏动的下一个搏动的m维的特征值依次输入到最终人工神经网络的输入层。

输入到最终人工神经网络的数据经过隐藏层输出到位于输出层的c个节点,当最终人工神经网络为分类模型时,输出到c个节点的值可以是用于将全部心电信号分类成c个分类的值。当最终人工神经网络为预测模型时,输出到c个节点的值可以是用于从全部心电信号预测特定范围内的结果的值。将最终人工神经网络输出的值称为‘最终输出数据’。

最终人工神经网络依次接收关于各个搏动的m维的特征值,因此,最终人工神经网络的输入层的节点优选为m个。当然,最终人工神经网络的输入层的节点也可以是m个以上,以便还能接收关于各个搏动的m维的特征值以外的其他值或参数。

如在本发明所属技术领域中通常使用的,本说明书中‘分类模型(classificationmodel)’指以找出所输入的数据属于哪个组为目的的人工智能模型,‘预测模型(prediction model)’指结果值可以为学习数据范围内的任何值的人工智能模型。

将其一般化为时间序列数据进行说明,当时间序列数据分割为n个单元(unit)时,利用n个中间人工神经网络获得关于n个单元中每一个的m维的特征值。最终人工神经网络根据各个单元在时间轴上的顺序,从n个中间人工神经网络接收关于n个单元中每一个的m维的特征值,从而执行关于全部时间序列数据的分类、预测等任务(task)。

为了反映连续的单元的时变特征,可以将关于所要判断的单元的m维的特征值及与所要判断的单元在时间上紧邻的单元的m维的特征值连续输入到最终人工神经网络的输入层。对于心电信号,需要连续输入所要判断的搏动的事先搏动、所要判断的搏动及所要判断的搏动的事后搏动3个,然而,普通的时间序列数据可以仅输入所要判断的单元的事先单元和所要判断的单元2个,或者仅输入所要判断的单元的事后单元和所要判断的单元2个。当然,也可以全部输入所要判断的单元的事先单元、所要判断的单元及所要判断的单元的事后单元3个。

最终人工神经网络接收关于各个单元的m维的特征值,因此,最终人工神经网络的输入层的节点优选为m个。当然,最终人工神经网络的输入层的节点也可以是m个以上,以便还能输入关于各个单元的m维的特征值以外的其他值或参数。

图9a和图9b是示出根据本发明一实施例的利用人工智能的时间序列数据分析方法中使用的中间人工神经网络和最终人工神经网络的节点结构的图。

为了方便说明,图9a和图9b中说明了,分割心电信号而获得的第一搏动821的特征831输入到第一中间人工神经网络841,第一中间人工神经网络841的中间输出数据输入到最终人工神经网络850。

将利用快速傅里叶变换(Fast Fourier Transform,FFT)、梅尔倒谱系数(MelFrequency Cepstral Coefficient,MFCC)、滤波器组(Filter Bank)、小波(Wavelet)等从各个搏动提取的特征假设为d维的值时,各个中间人工神经网络841、842、843的输入层的节点数量也优选为d个。当然,中间人工神经网络的输入层的节点也可以是d个以上,以便还能输入从各个搏动提取的d维的特征以外的其他值或参数。

当从第一搏动821提取d维的特征831时,d维的特征831输入到位于第一中间人工神经网络841的输入层841a的d个节点。所输入的数据经由第一中间人工神经网络841的隐藏层841b分析,分析结果由位于第一中间人工神经网络841的输出层841c的m个节点输出。

由位于第一中间人工神经网络841的输出层841c的m个节点输出的第一中间人工神经网络841的中间输出数据,输入到位于最终人工神经网络850的输入层850a的m个节点。最终人工神经网络850不仅接收第一中间人工神经网络841的中间输出数据,还从其他中间人工神经网络842、843…接收中间输出数据,经由隐藏层850b分析连续的搏动的时变特征,并输出最终输出数据。最终输出数据由位于最终人工神经网络850的输出层850c的c个节点输出。

图10是用于说明根据本发明一实施例的多个中间人工神经网络输出的中间输出数据输入到最终人工神经网络的过程的图。

当心电信号中所要判断的搏动称为第二搏动822时,需要连续输入关于所要判断的搏动的事先搏动821、所要判断的搏动822及所要判断的搏动的事后搏动832的m维的中间输出数据。

即,将m维的中间输出数据841c、m维的中间输出数据842c及m维的中间输出数据843c依次输入到最终人工神经网络。其中,上述m维的中间输出数据841c是将从所要判断的搏动的事先搏动821提取的d维的特征831输入到第一中间人工神经网络841而获得,上述m维的中间输出数据842c是将从所要判断的搏动822提取的d维的特征832输入到第二中间人工神经网络842而获得,上述m维的中间输出数据843c是将从所要判断的搏动的事后搏动823提取的d维的特征833输入到第三中间人工神经网络843而获得。

以上的内容具体整理为如下。

为分析心电信号来判断心律失常,可以使用深度学习。人工神经网络模型有CNN模型及RNN模型等。但是CNN模型因不适合分析具有时变特征的时间序列数据而其准确度较低。CNN方式基于特征的位置信息,因此,对于较小的变形或噪声存在大大降低判断能力的问题。(Sabour,S.,Frosst,N.Hinton,G.E.Dynamic routing between capsules.InAdvances in Neural Information Processing Systems,pp.3859-3869,2017)

为了克服这些问题,对于分析具有时变特征的时间序列数据,可以使用RNN模型。RNN模型的最大问题是其学习及分析速度慢。尽管RNN可以利用更多信息且能够反映时变特征而在准确度方面有所提高,但相比CNN需要记忆更多信息,因此其复杂度增加。并且,RNN需要使用与连续的单元之间的关联性作为信息,所以需要依次处理连续的单元。因此需要处理长度较长的输入,使得学习及分析需要更长的时间。

根据本发明的一实施例,为解决CNN的准确度低且无法进行可变长度输入处理的问题和RNN的学习及分析速度慢的问题,建议使用用于并行化模型的具有可变长度边界的分层RNN(Hierarchical RNN with variable length boundaries for parallelizationmodel),其由多个中间人工神经网络及一个最终人工神经网络组成。

现有的RNN模型将n个连续的搏动视为一个输入。然而,在根据本发明一实施例的人工智能模型中,将其分为由多个中间人工神经网络处理的短期RNN(Short term RNN)和由一个最终人工神经网络处理的长期RNN(Long term RNN)2个步骤进行学习及分析。首先,将连续的n个搏动分别用作中间人工神经网络的输入。其结果,获得关于一个搏动的m维的矢量,然后将其输入到最终人工神经网络,从而分析心电信号以判断心率失常等疾病。

多个中间人工神经网络分别处理多个搏动,并且,多个中间人工神经网络为相同的模型。因此,在处理多个搏动时,由于相互之间没有依赖性(Dependency),可以进行并行处理。因此,与需要输入所有心电信号的现有的RNN方式相比,其可以与执行并行处理的计算装置的数量或执行并行处理的处理器的数量呈正比的方式较快地执行操作。当然,也可以是根据资源限制在少于多个搏动数量的中间人工神经网络处理多个输入搏动的结构。这些结构通过在多个中间人工神经网络并行处理各个搏动且在最终人工神经网络处理长度变短的中间输出数据,从而能够大大减少各个人工神经网络的隐藏层的节点数量,使可用内存增加。这在具有视频内存(video memory)限制的GPU环境中提高诊断速度。并且,需要在最终人工神经网络处理的数据长度变短,使得计算量(complexity)减少,大大提高了诊断速度。

利用根据本发明一实施例的利用人工智能的时间序列数据分析方法,对分析图3的心电信号时的输入数据的长度进行计算如下。

图3a和图3b的心电信号分为9个搏动(beat)。当将一个搏动以250Hz进行采样时,从9个搏动提取特征时处理长度为250×9=2250。

当从9个搏动提取的9个特征输入到9个中间人工神经网络时,处理长度为1×9=9。

当将9个中间人工神经网络输出的m维的中间输出数据输入到最终人工神经网络时,连续输入关于事先搏动、判断对象搏动及事后搏动的m维的中间输出数据。如上所述,数据根据以下顺序输入到最终人工神经网络。

(1)关于搏动A的m维的特征值、关于搏动B的m维的特征值、关于搏动C的m维的特征值。

(2)关于搏动B的m维的特征值、关于搏动C的m维的特征值、关于搏动D的m维的特征值。

(3)关于搏动C的m维的特征值、关于搏动D的m维的特征值、关于搏动E的m维的特征值。

(4)关于搏动D的m维的特征值、关于搏动E的m维的特征值、关于搏动F的m维的特征值。

(5)关于搏动E的m维的特征值、关于搏动F的m维的特征值、关于搏动G的m维的特征值。

(6)关于搏动F的m维的特征值、关于搏动G的m维的特征值、关于搏动H的m维的特征值。

(7)关于搏动G的m维的特征值、关于搏动H的m维的特征值、关于搏动I的m维的特征值。

即,长度为3的输入进行7次,因此,当将9个中间人工神经网络输出的m维的中间输出数据输入到最终人工神经网络时,处理长度为3×7=21。

所有处理长度的总和为2250+9+21=2280。由此可知,与示于图3a和图3b的现有方法的处理长度5250相比,处理长度减少至1/3左右。

如上所述,根据本发明一实施例的利用人工智能的时间序列数据分析方法,相比基于现有的CNN的心电图分析方法,其分析的准确度高,而且相比基于现有的RNN的心电图分析方法,需要处理的数据长度变短,使得分析速度变快,能够确保心电图分析的实时性。通过本发明一实施例的利用人工智能的时间序列数据分析方法实时准确地分析心电信号,并在发生心脏疾病之前提前告知被检查人员,从而可以预先进行药物、医院治疗等措施。进一步地,可对致命性心脏疾病进行敏捷的早期对应,因此,还可用于紧急救援服务。

图11是示出根据本发明一实施例的利用人工智能的时间序列数据分析方法的流程图。

如图11所示,根据本发明一实施例的利用人工智能的时间序列数据分析方法可以包括:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个单元的特征(feature)输入到中间人工神经网络的步骤S1110;从中间人工神经网络获得m(m是2以上的自然数)维的中间输出数据的步骤S1120;将时间上紧邻的多个单元的中间输出数据输入到最终人工神经网络,获得从最终人工神经网络输出的最终输出数据的步骤S1130;及利用最终输出数据生成时间序列数据分析结果的步骤S1140。

以上已经对各个步骤进行了详细说明,因此对重复内容省略其说明。

图12是示出在根据本发明一实施例的人工神经网络结构中,中间人工神经网络体现为多个级别时的图。

如图12所示,在根据本发明一实施例的利用人工智能的时间序列数据分析方法中,中间人工神经网络可以体现为多个级别。

各个级别的中间人工神经网络输出输入数据的特征值,并且,由前一个级别的中间人工神经网络输出的特征值输入到下一个级别的中间人工神经网络。

当中间人工神经网络由k个级别组成时,多个单元中每一个的特征输入到级别1中间人工神经网络,由各个级别的中间人工神经网络输出的特征值输入到下一个级别的中间人工神经网络,由级别k-1的中间人工神经网络输出的特征值输入到级别k的中间人工神经网络,由级别k的中间人工神经网络输出的m维的特征值输入到最终人工神经网络。

图12中,将具有多个级别的中间人工神经网络设计为,前一个级别的多个中间人工神经网络输出的多个特征值输入到下一个级别的一个中间人工神经网络的方式,这是示出了通过以下方式处理数据:级别1中间人工神经网络处理各个单元单位(第一单位)的数据,级别2中间人工神经网络处理对时间上紧邻的多个单元进行分组(grouping)的第二单位的数据,级别3中间人工神经网络处理对时间上紧邻的多个第二单位的数据进行分组的第三单位的数据。此时,级别k中间人工神经网络输出的m维的特征值会成为关于第k单位的数据的m维的特征值。此时,各个级别的中间人工神经网络的数量可以根据分组标准而不同。

当然,也可以将具有多个级别的中间人工神经网络设计为,由前一个级别的一个中间人工神经网络输出的一个特征值以1:1的方式输入到下一个级别的一个中间人工神经网络。此时,各个级别的中间人工神经网络可以体现为相同数量。例如,当级别1中间人工神经网络的数量为n个时,级别2中间人工神经网络的数量也可以体现为n个,级别3中间人工神经网络的数量也可以体现为n个,…,级别k中间人工神经网络的数量也可以体现为n个。

图13是示出在根据本发明一实施例的人工智能的结构中,当中间人工神经网络体现为多个级别时的时间序列数据分析方法的图。

在根据本发明一实施例的利用人工智能的时间序列数据分析方法中,中间人工神经网络由多个级别组成时的时间序列数据分析方法可以包括:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个单元的特征(feature)输入到级别1中间人工神经网络的步骤S1310;将从级别i(i为1以上的自然数)中间人工神经网络输出的中间输出数据输入到级别i+1中间人工神经网络的步骤S1320;从级别k中间人工神经网络获得中间输出数据的步骤S1330;及将级别k中间输出数据依次输入到最终人工神经网络,从最终人工神经网络获得最终输出数据的步骤S1340。

当将具有多个级别的中间人工神经网络设计为,由前一个级别的多个中间人工神经网络输出的多个特征值输入到下一个级别的一个中间人工神经网络时,将级别k中间输出数据依次输入到最终人工神经网络的步骤可以包括:将关于时间上紧邻的第k单位的数据的级别k中间输出数据依次输入到最终人工神经网络的步骤。

一方面,当将具有多个级别的中间人工神经网络设计为,由前一个级别的一个中间人工神经网络输出的一个特征值以1:1的方式输入到下一个级别的一个中间人工神经网络时,将关于时间上紧邻的单元的级别k中间输出数据依次输入到最终人工神经网络的步骤,其与在图9及图10说明的当中间人工神经网络的级别为1个时相同,因此对于重复的内容省略其说明。

以上,对根据本发明一实施例的利用人工智能的时间序列数据的学习方法进行了说明。

以下,参照图14至图17,对根据本发明一实施例的利用人工智能的时间序列数据的学习方法进行说明。具体地,通过说明根据本发明一实施例的利用多个人工神经网络学习心电信号的过程,从而说明根据本发明一实施例的利用人工智能的时间序列数据的学习方法。

如众所周知,利用学习数据的人工神经网络的学习过程与利用人工神经网络的输入数据分析过程在很多部分基本相似。不同点仅为,在学习人工神经网络的过程中添加了比较输出值和实际值计算误差并通过将误差反向传播来改变人工神经网络的权值的步骤。

以下,将与本发明一实施例的时间序列数据的分析方法的不同点作为中心,说明根据本发明一实施例的时间序列数据的学习方法。

图14是示出根据本发明一实施例的利用人工智能的心电图学习方法的流程图。

如图14所示,根据本发明一实施例的利用人工智能的心电图学习方法可以包括:心电信号收集步骤S1410;心电信号分割步骤S1420;搏动结合步骤S1430;特征(feature)提取步骤S1440;及人工神经网络学习步骤S1450。

心电信号收集步骤S1410是收集服务器200从心电图测量装置100接收的心电信号或使用者直接输入的心电信号的步骤。通常,不会对测量长时间的全部心电信号标记心律失常等的判断结果作为标签,而是以搏动单位标记心律失常等判断结果作为标签。公知的数据有MIT-BIH心律失常数据库(Arrhythmia Database)等。

心电信号分割步骤S1421是将心电信号分割为搏动单位的步骤。

搏动结合步骤S1430是将a个事先搏动和b个事后搏动结合到带标签的搏动的步骤。

图15是示出根据本发明一实施例的利用人工智能的心电图学习方法中使用的学习数据的图。

如图15所示,根据本发明一实施例的利用人工智能的心电图学习方法,将a个事先搏动和b个事后搏动结合到带标签的搏动作为学习数据进行使用。

根据本发明一实施例的利用人工智能的时间序列数据的分析方法,其不分析单一搏动,而是一同分析时变特征,例如,与事先搏动或事后搏动的发生间距和与事先搏动或事后搏动的高度差等,该时变特征通过连接时间上相邻的多个搏动而产生。因此,在学习时也应结合带标签的事先搏动和事后搏动后进行学习,而非单独学习带标签的搏动。

可以任意地决定结合到带标签的搏动的事先搏动的数量a和事后搏动的数量b。此时所决定的事先搏动的数量a和事后搏动的数量b在进行分析时也应使用相同数量作为输入。

特征提取步骤S1440是提取各个搏动的特征的步骤。提取特征可以使用信号处理中广泛使用的快速傅里叶变换(Fast Fourier Transform,FFT)、梅尔倒谱系数(MelFrequency Cepstral Coefficient,MFCC)、滤波器组(Filter Bank)、小波(Wavelet)等多种方法。学习时使用的特征提取算法与分析时使用的特征提取算法优选使用相同的算法。

人工神经网络学习步骤S1450是使用公知的反向传播及梯度下降法等技术学习人工神经网络的步骤。以下,参考图16详细说明人工神经网络学习步骤S1450。

图16是示出根据本发明一实施例的利用人工智能的时间序列数据学习方法的图。

参照图16说明根据本发明一实施例的利用人工智能学习时间序列数据(例如,心电信号)的过程。

如MIT-BIH心律失常数据库等,当使用以搏动单位标记标签的数据库时,学习数据1610应当为通过搏动结合步骤S1430将一个以上的事先搏动及一个以上的事后搏动结合到带标签的搏动的心电信号。如果使用的数据库为不是以搏动单位,而是全部心电信号的分析结果在各个心电信号中作为标签标记的数据库时,可以将带标签的心电信号直接使用为学习数据1610,而不需搏动结合步骤S1430。

将其一般化为时间序列数据进行说明,则当使用以单元单位标记标签的数据库时,学习数据应为,将一个以上的单元结合到带标签的单元的时间序列数据。如果使用的数据库为不是以单元单位,而是全部时间序列数据的分析结果在各个时间序列数据中作为标签标记的数据库时,可以将带标签的时间序列数据直接使用为学习数据。

当输入学习数据1610时,根据预定标准将学习搏动分割为多个搏动1621、1622、1623…。学习时使用的心电信号的分割方法与分析时使用的心电信号的分割方法优选使用相同的方法。

将其一般化为时间序列数据进行说明,可以描述为:当输入学习数据时,根据预定标准将学习数据分割为多个单元。学习时使用的时间序列数据的分割方法与分析时使用的时间序列数据的分割方法优选使用相同的方法。

然后,对于多个搏动1621、1622、1623…分别执行提取各个搏动的特征1631、1632、1633…的操作。学习时使用的心电信号的特征提取算法与分析时使用的心电信号的特征提取算法优选使用相同的算法。

将其一般化为时间序列数据进行说明,可以描述为:当时间序列数据分割为多个单元(unit)时,对于多个单元分别提取各个单元的特征。学习时使用的时间序列数据的特征提取算法与分析时使用的时间序列数据的特征提取算法优选使用相同的算法。

然后,执行将各个搏动的特征1631、1632、1633…输入到中间人工神经网络1641、1642、1643…的操作。当学习数据1610由n个搏动结合时,则提取共n个特征,此时,中间人工神经网络也优选为n个。

将其一般化为时间序列数据进行说明,可以描述为:当时间序列数据分割为n个单元(unit),并且提取各个单元的特征时,将各个单元的特征输入到n个中间人工神经网络。

然后,将关于n个中间人工神经网络输出的n个搏动中每一个的m维的特征值,根据各个搏动在时间轴上的顺序输入到最终人工神经网络1650,从而获得关于学习数据的最终输出数据。

将其一般化为时间序列数据进行说明,当时间序列数据分割为n个单元(unit)时,利用n个中间人工神经网络获得关于n个单元中每一个的m维的特征值,最终人工神经网络根据各个单元在时间轴上的顺序从n个中间神经网络接收关于n个单元中每一个的m维的特征值,从而获得关于学习数据的分类值和预测值等。

当从最终人工神经网络1650获得关于学习数据的最终输出数据时,将关于学习数据的最终输出数据与标记在学习数据的标签进行比较。此时,关于学习数据的最终输出数据成为输出值,标记在学习数据的标签成为实际值。利用损失函数(loss function)等计算输出值与实际值之间的误差后进行反向传播。

通过反向传播调整最终人工神经网络1650的权值及中间人工神经网络1641、1642、1643…的权值。反向传播及人工神经网络的权值调整方法在https://en.wikipedia.org/wiki/Backpropagation等文献中有详细说明,因此省略其详细说明。

此时需要注意的是最终人工神经网络1650和中间人工神经网络1641、1642、1643…的学习率的设置。‘学习率(learning rate)’指在用于调整人工神经网络的权值的梯度下降算法中寻找最小值的步长(step size)。

但无法并行(parallel)学习中间人工神经网络。因为对于多个输入搏动的正确答案只有一个。因此,对于一个正确答案需要执行关于多个输入搏动的反向传播。当搏动的数量为n个,中间人工神经网络的数量也为n个时,n个中间人工神经网络需要彼此共享(share)权值,并且,需要将反向传播时的中间人工神经网络的学习率也设置为最终人工神经网络的学习率的1/n倍。

一方面,当中间人工神经网络体现为多个级别时,人工神经网络的学习方法也是相同的。当使用与中间人工神经网络体现为多个级别时的人工神经网络的分析方法相同的方法分析学习数据后(参考图12及图13),当从最终人工神经网络获得关于学习数据的最终输出数据时,将关于学习数据的最终输出数据(输出值)与标记在学习数据的标签(实际值)进行比较。利用损失函数(lossfunction)等计算输出值与实际值之间的误差后,进行反向传播,从而调整最终人工神经网络的权值及多个级别的中间人工神经网络的权值。

图17是示出根据本发明一实施例的利用人工智能的时间序列数据学习方法的图。

如图17所示,根据本发明一实施例的利用人工智能的时间序列数据学习方法可以包括:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个单元的特征(feature)输入到中间人工神经网络的步骤S1710;从中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的步骤S1720;将时间上紧邻的多个单元的中间输出数据输入到最终人工神经网络,获得从最终人工神经网络输出的最终输出数据的步骤S1730;将最终输出数据与标记在时间序列的标签进行比较并计算误差的步骤S1740;及将误差反向传播,调节中间人工神经网络及最终人工神经网络的权值的步骤S1740。

以上已经对各个步骤进行了详细说明,因此对重复内容省略其说明。

图18是可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的示例性的计算装置的硬件结构图。

如图18所示,可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的示例性的计算装置可以包括:一个以上的处理器1810;存储器(storage)1820;内存(memory)1830,其加载(load)由处理器1810执行的计算机程序;网络接口1840;及总线(bus)。图18仅示出了与本发明实施例相关的结构要素。因此,本发明所属技术领域的普通的技术人员可以知道,除了图18中示出的结构要素以外,还可以包括其他通用的结构要素。

处理器1810控制计算装置的各个结构的整个动作,上述计算装置可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法。处理器1810可以包括:中央处理器(Central Processing Unit,CPU)、微处理器(Micro ProcessorUnit,MPU)、微控制器单元(Micro Controller Unit,MCU)、图形处理器(GraphicProcessing Unit,GPU)或本发明所属技术领域中公知的任意形式的处理器。并且,处理器1810可以进行对于一个以上的应用或程序(用于执行根据本发明实施例的方法)的计算。可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的计算装置可以具备一个以上的处理器。

存储器1820可以非临时地储存一个以上的计算机程序。存储器1820可以包括:如只读内存(Read Only Memory,ROM)、可擦可编程只读内存(Erasable Programmable ROM,EPROM)、电可擦可编程只读内存(Electrically Erasable Programmable ROM,EEROM)及闪存等非易失性内存、硬盘、可拆卸式磁盘或本发明所属技术领域中公知的任意形式的计算机可读记录介质。存储器1820中储存有计算机程序,其中,计算机程序用于执行根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法。

内存1830储存各种数据、命令及/或信息。内存1830可以从存储器1820加载一个以上的计算机程序,以执行根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法。

总线可以提供计算装置的结构要素之间的通信功能,其中,计算装置可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法。总线可以体现为地址总线(Address Bus)、数据总线(Data Bus)及控制总线(Control Bus)等多种形式的总线。

网络接口1840支持计算装置的有线和无线通信,其中,计算装置可以体现根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法。并且,网络接口1840还可以支持互联网通信以外的多种通信方式。为此,网络接口1840可以包括本发明所属技术领域中公知的通信模块。

执行根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的计算机程序加载到内存1830,使得处理器1810可以包括用于执行根据本发明实施例的利用人工智能的时间序列数据分析方法或时间序列数据学习方法的指令(instruction)。

以下,对根据本发明实施例的利用人工智能的时间序列数据分析装置进行说明。

根据本发明一实施例的时间序列数据分析装置包括:网络接口1840,其接收时间序列数据;一个以上的处理器1810;内存1830,其加载由处理器1841执行的计算机程序;及存储器1820,其储存计算机程序。其中,计算机程序可以包括:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个单元的特征(feature)输入到中间人工神经网络,并从中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的命令;将时间上紧邻的多个单元的中间输出数据输入到最终人工神经网络,获得从最终人工神经网络输出的最终输出数据的命令;及利用最终输出数据生成时间序列数据的分析结果的命令。

储存在根据本发明一实施例的时间序列数据分析装置的存储器1820的计算机程序的各个命令,其用于执行前述的利用人工智能的时间序列数据分析方法,因此省略对重复内容的说明。

以下,对根据本发明实施例的利用人工智能的时间序列数据学习装置进行说明。

根据本发明一实施例的时间序列数据学习装置包括:网络接口1840,其接收时间序列数据;一个以上的处理器1810;内存1830,其加载由处理器1841执行的计算机程序;及存储器1820,其储存计算机程序。其中,计算机程序可以包括:对于时间序列数据在时间轴上被分割的多个单元中的各个单元,将各个单元的特征(feature)输入到中间人工神经网络,并从中间人工神经网络获得m(m为2以上的自然数)维的中间输出数据的命令;将时间上紧邻的多个单元的中间输出数据输入到最终人工神经网络,获得从最终人工神经网络输出的最终输出数据的命令;及将最终输出数据与标记在时间序列数据的标签进行比较的命令。

储存在根据本发明一实施例的时间序列数据学习装置的存储器1820的计算机程序的各个命令,其用于执行前述的利用人工智能的时间序列数据学习方法,因此省略对重复内容的说明。

一方面,参照附图所说明的本发明的概念可以体现在计算机可读介质上的计算机可读代码。计算机可读记录介质可以是移动型储存介质(CD、DVD、蓝光光盘、USB储存设备、移动式硬盘)或固定式储存介质(ROM、RAM、计算机固定硬盘)。记录于计算机可读记录介质的计算机程序可以通过互联网等网络传输到其他计算装置并安装于其他计算装置,由此可以在其他计算装置中使用。

附图中根据特定顺序示出了动作,但不能理解为必须根据所示的特定顺序执行动作或依次执行动作,或者执行了所示的所有动作才能得出所要的结果。在特定情况下,多任务处理(multitasking)和并列处理可能是有利的。进一步地,以上说明的实施例中对多种结构的分离不应被理解为这种分离是必要的,并且应当理解的是,所描述的程序组件和系统通常可以集成在一起成为单一软件产品,或者打包成多个软件产品。

以上参照附图对本发明的实施例进行了说明,但本发明所属技术领域的普通的技术人员可以理解,本发明在不改变其技术思想或必要特征的前提下也可以以其他具体形式实施。因此,应当理解以上描述的实施例在所有方面都是示例性的,而非局限性的。

44页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:对缓慢且持续性心脏节律的检测

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!