一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法

文档序号:30995001发布日期:2022-08-03 02:59阅读:来源:国知局

技术特征:
1.一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,包括以下步骤:步骤1,在发动机标称状态下收集历史飞行数据作为源域数据;步骤2,在发动机当前退化程度下收集飞行数据作为目标域数据;步骤3,给定模型以及算法训练过程的所有参数,包括核函数参数、算法精度容忍值、源域及目标域的松弛参数、源域与目标域之间的平衡参数;步骤4,初始化源域svdd模型的参数;步骤5,利用源域数据,采用smo算法训练源域svdd模型,得到相关的参数;步骤6;初始化目标域模型的参数;步骤7,利用目标域数据以及源域svdd模型,采用smo算法训练svdd-tl模型;步骤8,将实时飞行数据输入故障检测模型,检测发动机处于正常状态还是故障状态。2.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤1和步骤2中每组飞行数据均包括高压转子转速n
h
、低压转子转速n
l
、风扇出口温度t
22
、压气机出口压力t3、压气机出口压力p3、低压涡轮进口温度t
45
、低压涡轮出口温度t
46
、低压涡轮出口压力p
46
、掺混室进口温度t
65
以及主燃油流量wfb。3.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤1中源域数据为标称状态历史运行数据,包括故障数据和非故障数据,其中,故障数据类型包括风扇故障数据、压气机故障数据、高压涡轮故障数据和低压涡轮故障数据;步骤2中目标域数据包括非故障数据和故障数据。4.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤3中核函数参数、算法精度容忍值、源域及目标域的松弛参数、源域与目标域之间的平衡参数如下;其中,采用常见的高斯核函数进行映射,其定义如式所示,其中,x表示飞行数据,i=1,2,

,n,n为样本个数;核函数参数选择σ=0.3;算法精度容忍值:算法容忍值选择ε=1e-4;源域及目标域的松弛参数:源域与目标域的松弛参数将这四个参数统一为一个参数c,该值根据经验选择为1;源域与目标域之间的平衡参数:平衡参数λ利用目标域数据进行5折交叉验证确定,其搜索范围为{0.05,0.10,

,1.00},共20个候选值。5.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤4中初始化svdd模型的参数α
i
的具体方式为:α
l
=0,其中y
i
=1、y
l
=-1;n
+
为训练集中正类样本个数。6.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤5中利用源域数据,采用smo算法训练源域svdd模型,得到相关的参数,具体过程如下:
考虑只包含正类样本的训练集{x
i
|i=1,2,

,n},其中n为训练样本个数,svdd的目标是找到一个超球体,球体的半径尽量小,并且包含或者尽量包含所有的正类样本;当样本中包含离群点时,如果强行将样本包含进球体,球体的半径会非常大,因此模型在进行判断时会把异常样本判断为正常样本;因此,svdd允许部分样本点在超球体之外,同时引入了松弛因子ξ,因此定义损失函数:其中,变量a为svdd的球心,r为svdd的半径;c为松弛参数,用于控制离群点的数量;svdd需要最小化球体的半径,因此svdd模型的数学描述为:采用拉格朗日乘子法将约束代入损失函数,得到拉格朗日函数:其中,α
i
和γ
i
为引入的拉格朗日乘子,满足α
i
>0和γ
i
>0;对r、a、ξ
i
求偏导并令其等于0得到:0得到:0得到:根据式(6)进一步推出约束:0≤α
i
≤c#(7)将式(4)(5)(6)代入拉格朗日函数(3),得到问题(2)的对偶问题:s.t.0≤α
i
≤c i=1,2,

,n#(8)上述过程满足kkt(karush-kuhn-tucker)条件:
于是有,对任意的训练样本x
i
,若α
i
=0,则样本在超球体内部;若0<α
i
<c,则样本在超球体球面上,该样本为支持向量;若α
i
=c,则样本在超球体外部,为离群点,被错误分类;将样本映射到高维空间,并通过核函数来实现高维空间中的内积运算;假设映射为φ(x),核函数的为k(
·

·
);本发明选择高斯核函数进行实现,其具体形式为:其中,σ>0是高斯核的带宽;于是,原始问题(2)变为:s.t.||φ(x)-a||2≤r2+ξ
i i=1,2,

,n#(11)对偶问题变为:s.t.0≤α
i
≤c i=1,2,

,n#(12)求解该问题即可d得到球体球心和半径:求解该问题即可d得到球体球心和半径:其中,x
v
为任意的支持向量;对测试样本x
test
,需要判断该样本位于超球体内部还是外部,如果位于球体内部就认为该样本为正类,否则被认为是负类;该样本距离球心的距离为:对比公式(14)和(15),由于最后一部分是相同的,因此定义:因此定义:因此测试样本x
test
的预测标签为:
其中sign(
·
)为符号函数,其定义为:7.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤5中利用源域数据,采用smo算法训练源域svdd模型,得到相关的参数,具体过程如下:训练集中包含正类样本和负类样本,正类样本尽量在超球体内部,而负类样本尽量在超球体外部;考虑训练集{(x
i
,y
i
)|i=1,2,

,n},其中y
i
∈{-1,1},训练集中正类样本个数为n
+
,负类样本个数为n-,满足n=n
+
+n-;svdd原始问题描述为:s.t.||φ(x
i
)-a||2≤r2+ξ
i
||φ(x
l
)-a||2≥r
2-ξ
l
ξ
i
>0,ξ
l
>0#(20)其对偶问题为:s.t.0≤α
i
≤c10≤α
l
≤c2#(21)对于测试样本x
test
,计算计算样本的预测标签为:采用序贯最小优化smo算法求解问题(21),该算法基本思路是选择两个待优化的变量,然后固定其余的参数,因此将问题转化为单变量的二次规划问题,从而容易求解;一直重复这个步骤直到收敛;首先考虑两个变量的解析解,设选择的两个变量为α1和α2,其优化后为和将除α1和α2的之外的所有参数固定,优化函数变为:
记其中r为常数,将代入式(25),并对α2求偏导,得到:将r=y1α1+y2α2代入(26)并令其等于0得到:记缓存向量:因此,α2的更新公式改写为:则α1的更新公式为:很容易求出α1和α2的取值范围:若y1和y2同号,则:α2∈[max(0,y2r-c1),min(y2r,c2)]α1∈[max(0,y1r-c2),min(y1r,c1)]#(31)若y1和y2异号,则:α2∈[max(0,y2r),min(y2r+c1,c2)]α1∈[max(0,y1r),min(y1r+c2,c1)]#(32)值得注意的是,缓存向量也需要更新,根据其定义,容易得到其更新公式:对于更新参数的选择,本发明采用一种启发式的选择,具体选择方式为:首先选择支持向量中半径差最大的两个参数进行优化,直到所有的支持向量的半径一致;选择两个半径不一致的支持向量,其中必定有一个违反了kkt条件,选择支持向量半径差最大的两个参数是为了让优化的幅度更大;观察公式(22)和(28),两个向量的半径差就
等于缓存向量e的差值;如果支持向量的半径都一致,则将该半径作为判断依据,遍历所有的非支持向量,寻找违反kkt条件的作为优化的第一点,在支持向量里寻找第二点;为了使优化的幅度尽量大,观察式(29),优化的幅度主要与e的差值有关,因此选择与第一点的值的差最大的支持向量作为第二点;在具体判断半径是否相等和是否满足kkt条件时,给定一个容忍值ε,该值越大,算法的精确度较低,算法收敛较快,该值越小,算法精确度较高,算法收敛较慢。8.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤6中初始化目标域参数的具体方式为:其中9.根据权利要求1所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,步骤7中利用目标域数据以及源域svdd模型,采用smo算法训练svdd-tl模型,具体包括如下内容:根据源域数据得到源域svdd模型目标域数据为:正类样本个数负类样本个数满足svdd-tl模型的数学描述为:其中,a
s
为通过源域数据得到的球心,λ为源域与目标域的平衡参数;该问题的拉格朗日函数为:分别对r
t
、a
t
、ξ
i
、ξ
l
求导并令其等于零,得到:得到:
代入(36),得到对偶问题:得到对偶问题:得到对偶问题:求解该问题得到球心和半径:求解该问题得到球心和半径:对于测试样本x
test
,计算:计算:样本的预测标签为:采用smo算法求解式(40),得到优化更新公式:得到优化更新公式:上式中缓存向量的定义为:α1和α2的取值范围:若y1和y2同号,则:α2∈[max(0,y2r-c1),min(y2r,c2)]
α1∈[max(0,y1r-c2),min(y1r,c1)]#(49)若y1和y2异号,则:α2∈[max(0,y2r),min(y2r+c1,c2)]α1∈[max(0,y1r),min(y1r+c2,c1)]#(50)缓存向量更新公式方式为:于是,svdd-tl算法的流程总结如下:输入:源域数据目标域数据训练:1)初始化源域参数;2)利用源域数据,计算得到源域svdd模型参数3)初始化目标域参数;4)寻找目标域中半径差最大的两个支持向量;5)若差值小于等于ε,转到步骤6);否则将这两个支持向量作为待优化的点,转到步骤8);6)循环遍历非支持向量,如果违反kkt条件,将其作为优化的第一点,跳出循环转到步骤7);如果未发现违反kkt条件的点,转到步骤9);7)循环遍历支持向量,寻找与第一点的e差值最大的点,作为优化的第二点;8)根据公式(46)-(51),对参数进行更新,转到步骤4);9)训练结束。10.根据权利要求9所述一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,其特征在于,包括以下步骤:步骤8中将实时飞行数据输入故障检测模型,检测发动机处于正常状态还是故障状态;具体为,首先根据公式(44)(45)计算半径和距离,然后根据公式(46)计算预测标签。

技术总结
本发明公开了一种基于支持向量数据描述和迁移学习的航空发动机故障检测方法,该方法基于支持向量数据描述,并引入了迁移学习的思想。该方法考虑了航空发动机退化过程中不同退化程度下的发动机运行数据的差异,以发动机历史运行数据为源域数据,以发动机当前状态下收集的运行数据为目标域数据,该方法将SVDD模型的球心当作知识结构从源域迁移到目标域,辅助目标域建立精确性较高的故障检测模型。本发明通过迁移学习来解决航空发动机故障检测领域的故障数据缺乏的问题,并和单分类算法SVDD相结合,提高了故障检测模型在故障数据较少的情况下的故障检测效果。况下的故障检测效果。况下的故障检测效果。


技术研发人员:赵永平 陈耀斌
受保护的技术使用者:南京航空航天大学
技术研发日:2022.03.22
技术公布日:2022/8/2
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1