本发明针对航空发动机全航段的时序数据的工作模式挖掘领域,首先通过对模型进行编码,利用编码代价最小的思想来获取最优的时序片段组合,并在分段时利用标记传播的方法来解决过渡态模式识别的问题。
背景技术:
1、随着测量技术的提高,航空发动机上可获取的传感器信息逐渐增多。在大数据时代,这些数据的应用由最初的事故原因调查扩展到发动机设计性能评估、飞行训练考核辅助评价、协助地勤人员进行状态监控及视情维护等方面。伴随着飞机整体性能的提升和发动机结构的复杂化,人们对飞行安全及发动机可靠性方面将会提出更高的要求,因而充分挖掘并利用飞行中发动机采集到的数据信息将会成为后续研究的必然趋势。
2、由于发动机工作处在复杂的热力及电磁环境中,传感器记录数据时就不可避免地受到各种随机噪声的影响,这就导致地面研究人员对原始获取的数据难以去直观地分析研究。因此,如何将外场获取的数据最大程度还原出发动机在飞机飞行时真实的工作状态,这对后续基线模型的建立、实施状态监控及维护决策有重要的意义。
3、国内许多研究表明,在考虑不同发动机工作状态下有针对性的研究往往会获得预期更好的效果。例如,在考虑工况后建立的气路性能模型会获得更高的建模精度,考虑不同发动机状态建立寿命预测模型也会更加准确。但是,目前研究人员对待发动机获取的传感器数据仍采用人工判读的方法,尤其在批量分析发动机规律时会因判读数据量大而耗时耗力。另外,发动机环境参数的不同和个体制造的差异会导致判读规律的变化,这在一定程度上也增加了研究人员对工作模式判读的难度。
4、国内外为解决这类问题做出了很多尝试。例如he-svdd方法利用超椭球分类面并结合支持向量机描述来识别工作状态;qu等人成功用最小二乘支持向量机识别了发动机的五种工作状态;wang等人创新地将全航段的qar数据图像化并采用卷积神经网络来判别。但上述方法本质上是对时间序列人为采样进行单点识别,并未考虑到传感器数据的动力学性质,也直接割裂了时序上的连续性,并且识别的模式均未将发动机工作中的过渡态考虑在内。cwt-cnn方法结合了小波变换和卷积神经网络,它虽以单维时序信号为研究对象,但识别时序样本并非含多种模式的信号,而是人为分割后单一模式的信号。不过,cynthia提出了将时序分割方法剪枝精确线性时间法和自组织神经网络结合并给出过渡态的判别方法,该模型成功地识别了飞机的多个飞行状态,虽然该方法仅考虑单维时序信号,但这足以给发动机工作模式的挖掘指出新的思路。
5、多维时序数据的挖掘在天气预报、机械零件的传感器分析、金融财政等早有广泛的应用。此类问题主要可以细分为时序分割、模式发现、模式匹配等几种任务。例如基于动态规划的算法、剪枝精确线性时间法、基于模式的隐马尔可夫模型、基于高斯假设的贪婪分割模型。这几类方法仅能由不同模式来分割序列,并不能直接识别出模式,而且这些方法对参数调节十分敏感,例如片段数和相关阈值等。在航空发动机收集到的大批量多维的时序数据下,不同航段采集的时序数据包含的工作模式数量和类别均不同,不同时序数据的要调节的参数有很大差别且随着数据量的增加调节参数往往会耗费大量的时间。在这种场景下理想的方法应该能寻找任意的模式并不受参数的影响,即无参数化。autoptait是一种基于多级链隐马尔可夫模型,它利用无损压缩原则实现了模型的无参数化。autocyclone也采用相似的思路实现了对模式季节性的挖掘。但是上述两种方法并不适合于发动机的工作状态的挖掘,它们更倾向于挖掘有季节性规律性的模式而模糊了发动机的稳态模式和过渡态模式的界限,并且对于更加复杂的过渡态模式无法给出很好的处理方法。事实上,autoplait和autocyclone这两种方法更适合于对飞行动作的识别,但模型的训练也需以大量且丰富的飞行姿态数据为前提。。
技术实现思路
1、发明目的:
2、考虑到现有方法在实际工程中遇到的诸多问题,本发明聚焦于航空发动机工作时产生的时序数据,设计了一个快速自动挖掘工作模式的方法,即automimer。该方法自然地集成了时序分割、模式发现和模式识别任务,它以最原始的全航段多维时序数据为研究对象,采用最小编码代价的原则进行模型无参数化,以应对多变的时序数据。并且该方法还借鉴了标记传播的思想来解决过渡态的识别问题。在模型训练方面,该方法支持并行化并利用储存单元省去多次重复计算,这大大缩短了训练时间。该发明的模型设计初衷为航空发动机工作模式的挖掘,但由于模型的可迁移性,还能被应用于更高级模式的识别,如飞行动作识别。
3、技术方案:
4、一种快速自动挖掘航空发动机工作模式的新方法,包括以下步骤:
5、步骤1:采集机载航空发动机传感器的相关时序数据,形成时序数据集。具体可以为:采集飞机每次进行飞行实验时产生的多组发动机传感器的参数,但并不是所有都有利于对发动机工作模式的识别。实验参数的筛选需要参考实验手册,并选取随工作模式的改变变化量最大的几个物理指标,比如绝对气压高度体现了飞机起飞降落及巡航状态,从而也反映发动机工作模式的变化。在工作模式需要改变时,飞行员会通过外部干预地调节油门杆角度,这会引起发动机转子转速、瞬时耗量等物理量的变化。选择上述四类物理指标作为不同工作模式的分辨依据,其中油门杆角度、转子转速和瞬时耗量均可能由两组以上传感器共同参与测量,收集以上数据可共同组成描述发动机工作状态的多维时间序列。在某型发动机实验中考虑的工作模式进行两组划分并编号,一类为稳定状态由慢车状态(c1)、0.2额定状态(c2)、0.4额定状态(c3)、0.6额定状态(c4)、0.7额定状态(c5)、0.85额定状态(c6)、额定状态(c7)、起飞状态(c8),另一类是复杂且不确定的过渡状态、0.2额定状态(c9)。
6、步骤2:对所述时序数据集进行预处理。具体可以为:外场采集的传感器输出的多维时序数据在由autominer进行模式挖掘前需要进行初步的预处理方法用于时序数据的平滑降噪,采用滑动中值滤波的方法,滑动窗口的大小根据实际的飞行数据中最短的过渡态模式持续时间选取。
7、步骤3:根据应用场景选择合适的模型阶次,例如只考虑基础的工作模式则选低阶次线性模型,而考虑更高阶如飞行动作的工作模式就选用高阶的线性模型,对模型阶次的相关实验如图4所示。假设时序数据可以根据其本征模式分割成k段,即{s1,s2...,sk},第i段si可视为由断点τi和τi+1分割的部分,其中断点序号集组成{τ1,τ2...,τk}根据实际情况对时序数据分割的第i段si建立线性模型为
8、
9、式中i=1,2,...,k,xt为时序数据x中第t时刻属于si片段的样本,εi为分割的第i个片段段建模的噪声,其服从均值为0,方差为d阶方阵∑i的正态分布;系数矩阵一般形式上在t时刻的矩阵表示为[1,t-τi,...,(t-τi)q]t,q为模型的阶数。
10、另外,在获取的时序片段内进行断点寻优,寻优的目标是使总编码代价最小化。接下来的三个步骤4、5、6将分别介绍在断点寻优过程中必要的三个算法即工作模式的时序挖掘算法、时序片段内部最优断点选择算法和添加断点后的动态更新算法,其相互调用关系将在步骤7中说明,即通过步骤7调用步骤4、5、6可以直接挖掘到原始时序数据中合适的工作模式。
11、步骤4:工作模式的时序挖掘;在计算编码的总代价ct前,还需在寻优迭代过程中对片段集∑赋予合适的标记集φ,即找到每段隶属的工作模式。在计算出φ后便可进一步计算出总类别数r。步骤4的实现主要依托于标签传播思想。设定初始时待标注样本属于过渡态模式,即初始时y0中除第c个元素为1,其余项均为0。令对应标记为y=[y0,yl],第k+1次迭代后标记y(k+1)为
12、
13、其中比例矩阵dα设置为分块矩阵,α越大代表待标记数据接收更多其他点传递的信息;w为所有数据点之间的权值矩阵;im+1为m+1阶单位矩阵。
14、式(2)表示对标记y的更新过程,其中标记初始值y(0)赋为y,式中第二项表示先验信息在传播时的参与程度,此处人为设置的先验标记矩阵为y。为让传播过程中仅改变标记y0,比例矩阵dα,设置为分块矩阵,α越大代表待标记数据接收更多其他点传递的信息,默认取值为0.99。容易证明式(2)必会迭代收敛于某一确定的值即
15、y(∞)=y(im+1-dα)(im+1-wdα)-1#(3)
16、其中比例矩阵dα设置为分块矩阵,α越大代表待标记数据接收更多其他点传递的信息;w为所有数据点之间的权值矩阵;im+1为m+1阶单位矩阵。
17、在得到的软标记形式y0中,每项表示样本隶属对应模式的概率,选取最大概率对应的序号l即为所属的模式。本质上,参照样本集虽然只含稳态模式,但是该方法利用标记传播更新生成了软标记,这使过渡态模式其中充当剩余概率的角色,即样本不属于前c-1种稳态模式的概率。并且,综合每个片段计算得到的式(3)的结果,可进一步计算获得总类别数
18、
19、式中表示所有分割后片段按照工作模式组成的标记集合即{fi,fi,...,fi},其中fi∈{1,2,...,c}表示第i段si属于工作模式fi,c为该航段上工作模式总数;为判断符号,若语句a为真,则取值为1,反之取值为0;第c个工作模式约定为过渡态。
20、步骤4的必要注释:该方法的主要步骤如算法1所示。该算法中为了尽可能降低计算复杂度,在计算w时对已知的距离矩阵无需进行重复计算。于是,利用算法1第2步可将算法1的计算复杂度由o(m2)降至o(m)。
21、
22、步骤5:根据总编码编码代价最小化并利用启发式断点寻优方法添加时序片段内部最优断点;启发式断点寻优方法首先面对的问题是如何在确定的片段中尽可能地选择出使总代价最小的断点。在计算过程中,编码描述数据及储存算法模型需要付出一定的代价,而往往最小的编码代价对应的模型是最理想的,这个思想类似于经典的奥卡姆剃刀定律。基于该思路模型的优化目标建立如下
23、ct(x;m)=c(m)+c(x|m)#(5)
24、式中ct(x;m)表示编码的总代价,由描述断点寻优迭代算法模型m的编码代价c(m),以及断点寻优迭代算法模型应用到数据后的编码代价c(x|m)组成。
25、假设本文下述讨论的编码过程均是无损的,定义符号log(a)为对整数a的编码长度,即log*(a)=log2(a)+log2(log2(a))+…,按此规律求和且只有正数项包含在求和项中。autominer算法模型简式为m:{θ1,θ2,...,θk,∑,φ,k,r},片段集∑中所有k个片段的总类别数为r,与之对应的标记集为φ;θi={θi,∑i}是第i个片段si的模型待求参数集。按m的组成简式可列出模型编码代价如下:
26、①模型研究对象是长度为n的d维时间序列,编码处理需要log*(n)+log*(d)比特;
27、②储存k个片段的片段集和类别数r,编码需要log*(k)+log*(r)比特;
28、③将有k个片段的片段集划分到r类时,编码需要klog(r)比特;
29、④储存划分后片段集,需比特,即其中|si|为si的数据长度;
30、⑤模型阶次的代价为log(q+1);在考虑描述参数的代价时,将同一稳态模式的模型参数θ视为共享编码,即只计算一次编码代价,可得
31、
32、式中cf为浮点系数,g为线性模型的阶数;另外,在步骤3中描述第i个片段si的模型待求参数集可表示为θi={θi,∑i},其中参数θi、∑i的编码代价分别表示为c(θi)和c(∑i)。
33、由①到⑤便可获得算法模型编码所需的代价即式(5)第一项,而式(5)求和中的第二项,体现模型在给定数据完成任务的能力,即序列分割及模式挖掘的准确度。本文采用哈夫曼编码,将编码代价转化为线性模型的似然概率,可得到
34、
35、式中φ={θ1,θ2,...,θk},p(x|θ)为似然函数值。
36、考虑到同一工作模式中线性模型的相关参数应尽可能相似,利用式(1)中偏差项服从正态分布的性质,构造对数似然函数如下所示
37、
38、式中det表示对矩阵取行列式,l(i)表示由第i个片段计算得到的对数似然函数。
39、在序列分割过程中,当片段长度|si|小于维数d时会导致矩阵求逆出现病态,本文引入正则化的方法将式(8)进行改造并将结果赋为ψ,如下所示
40、
41、式中,λ为正则化系数,常取10-5;tr表示矩阵的求迹运算。
42、在极大化对数似然函数后能求解出参数θ,令式(9)对θ的偏导数分别为0,可解出所有分段的待求参数{θ,∑}的解析解,将解析解代入式(8)和式(9)可得到
43、式中id表示d阶单位矩阵。
44、综合式(7)、式(10)可以导出式(5)求和第二项的具体形式
45、
46、式中为了便于后续对编码代价迭代求解断点,将结果化为φ(τi,τi+1)的求和,且该项只与断点有关。最后可以通过①到④及式(6)、式(11)获得编码的总代价ct,即模型的优化目标
47、
48、式中优化目标仅为断点集τ的函数,随后便可寻优迭代出合适的断点组合,使得总编码代价最小。考虑到每次迭代添加一个断点仅仅对断点所在的片段产生影响,于是做出下述约定:对于片段si而言,在其内添加的一个断点t并将片段si分别分割为左右两个子片段和其总编码代价的变化量为
49、
50、式中函数g为仅与k0、r0、k1和r1有关具体表达式可通过具体计算得到,并且函数φ详细表达式仅与断点相关。k0和r0为添加断点t前的全局断点数和总类别数,同理添加断点后的可表示为k1和r1。易知k1=k0+1,而r0和r1可由步骤4的算法1获得。
51、步骤5的必要注释:该方法的主要步骤如算法2所示。在si内寻找最优断点tc的主要思路如上述算法2所示,其中算法仅展示关键的输入,例如断点数k,添加断点前的标记集φ等均默认已知。算法2第1步表示从τi+t到τi+1+t以寻优步长t来迭代选取t,设置较低的步长有利于精确的搜索但会增加计算时间。
52、
53、步骤6:添加断点后的动态更新;为了最大程度避免陷入局部最优解,在每次迭代添加断点后需要动态回顾全局,再次更新断点组合以保证求解的断点组合的总编码代价保持最低值。
54、步骤6的必要注释:该方法的主要步骤如算法3所示。当片段数k不大时更新次数将是适度的,而随着k的增大,每次更新只影响局部断点且多次迭代后断点集趋于最优组合,所以在容错阈值范围ξ内更新一定会在适度次数后收敛,实验中可选取ξ=5。在算法3第2步中,栈储存添加点或变化点,随后每次仅对栈弹出的点的领域内最近两个断点进行更新。在断点改变后会也同步更新原来的片段,这时与片段对应储存单元中的内容将会清除并等待下次调用算法2时再次赋值。
55、
56、步骤7:该步骤中将调用步骤4、5、6,该步骤介绍autominer算法整体寻优框架即算法使在迭代时需要利用比较所有片段相应最优的断点,选取使总编码代价减少最多的点作为迭代后添加的断点。
57、步骤7的必要注释:算法4中介绍了步骤7总体实现思路。其中,由于算法4中第3到12步的循环是独立运行的,此处便可支持并行化运算。同时在第2到27步时,若片段si未因断点更新改变且该时序片段的最优断点未被此次迭代选中,下一次迭代开始时便无需重复对si进行寻优,这也是设置存储单元pi的目的,因此每个存储单元总是唯一地指向片段si。若断点平均更新次数为l,算法3的计算复杂度为o(lknmd2/t),k为求解获得的最优断点数。考虑并行化后,计算复杂度为o(lnd2/t)。
58、
59、有益效果:
60、本发明提出的方法通过对模型进行编码,利用编码代价最小的思想来获取最优的时序片段组合,并在分段时利用标记传播的方法来解决过渡态模式识别的问题。通过在某型发动机全航段数据上的实验表明,相比诸多对比算法,autominer方法在分割指标以及模式挖掘指标上表现优异,同时,autominer方法支持并行化计算并在采取诸多措施加速迭代过程,此外实验中还证明该方法在更复杂工作模式方面具有很好的可迁移性。