应用集成学习算法的复合材料损伤定位研究

您所在的位置:网站首页 forest种树表情包 应用集成学习算法的复合材料损伤定位研究

应用集成学习算法的复合材料损伤定位研究

2024-02-14 19:25| 来源: 网络整理| 查看: 265

0 引 言

碳纤维增强复合材料(carbon fiber reinforced plastic,CFRP)具有质量较轻,强度较高并且抗疲劳性能较好等优点,被广泛应用在铁道车辆,航空航天以及武器制造等领域[1-3]。近年来CFRP作为一种新型可替换材料逐步引起世界各国的关注[4]。若CFRP作为关键的受力零部件在长时间承受较大的外部载荷时,内部的纤维束会发生断裂,铁道车辆或者航天飞机在运行过程发生CFRP的破坏势必造成巨大的人员伤亡和财产损失,因此人们希望利用传感器技术结合测量数据评估当前CFRP的健康状态。

国内外学者利用集成学习算法在定位问题上做了大量的研究。路豪等[5]以支持向量机和随机森林为弱学习器的融合型集成学习模型进一步提高对分布式声传感振动信号频域特征的识别精度,是一种新颖的振动源二维定位方法。沈冬冬等[6]考虑到传统无线定位算法对室内机器人定位能力弱等问题,以深度神经网络作为弱学习器构建集成学习模型来提升定位系统的精度与稳定性,解决了单一深度神经网络泛化能力有限,易于在训练集产生过拟合的问题。汪振等[7]将BP神经网络作为弱学习器,以地磁数据为输入,经纬度为输出,训练构建的集成学习模型,该算法提高了单个BP神经网络室内地磁定位精度,克服了由于数据本身的原因导致定位误差较大的问题。Ghaemi等[8]利用构建的双层机器学习模型将电压和电流作为系统输入实现配电网的故障定位,该模型第一层将电压和电流信号输入支持向量多分类机实现故障类别的识别,第二层利用Stacking集成学习模型将第一层输出的故障类型作为输入实现故障定位,该方法将传统的支持向量机与集成学习模型想结合,提高了模型的鲁棒性。Lv等[9]将两种类型的卷积神经网络作为弱学习器构建Stacking集成学习模型,将干扰频谱特征作为模型输入实现分布式光纤泄露源的定位,该方法能够将8.5 km长度光纤的定位误差控制在14.6 m以内。Zhao等[10]对比了J48决策树、贝叶斯网络和多层感知机等模型和对应的Boosting和Bagging集成学习模型在预测用户位置的性能,发现对于单个弱学习器,贝叶斯网络在数据质量良好时优于其他所有模型,集成学习模型的性能取决于用户的移动模式。Zhang等[11]将定位问题转换为分类问题,以BP神经网络作为弱学习器,利用加权投票法构建集成学习模型,提高了城市供水系统漏水点定位的精度,其中模型的输入为水压波动量,输出漏水点代号。Zhao等[12]基于条件概率模型构建集成学习模型,利用WIFI接入点信号强度、磁场大小以及光传感器信号实现了手机在室内的定位,该方法给定位问题提供一种新思路。

参考以上学者研究成果,本文的研究目的是将集成学习模型应用在CFRP的损伤定位上,实现CFRP的静态损伤定位,寻找最佳集成学习模型。本文技术路线见图1,通过实验获取应变特征数据集,训练集训练弱学习器获取最佳弱学习器参数,以此构建集成学习模型,用训练集再次训练集成学习模型,获取最佳弱学习器迭代次数进而获取最佳集成学习模型,并用测试集进行模型测试,获取定位坐标。

图 1 技术路线 图选项 1 集成学习算法

本文以应变特征量为模型输入,损伤位置为模型输出,基于集成学习算法构建输入到输出的非新型映射关系。使用的集成学习算法有以支持向量回归机(SVR)为弱学习器的SVR_Adaboost集成学习算法和以CART树为弱学习器的随机森林(RF)、极端随机树(ERT)和梯度提升决策树(GBDT)集成学习算法。Boosting、Bagging和Stacking是集成学习算法最主要的三种类型。其中SVR_Adaboost和GBDT以为Bagging类型,RF和ERT为Boosting类型。

1.1 Adaboost算法

在经典Boosting算法的基础上FREUND和SCHAPIRE创建了Adaboost算法。目前该算法普遍应用于损伤定位和模式识别等领域中[13]。支持向量机、神经网络、K近邻和决策树等作为Adaboost算法常用的弱学习器。本文应用Adaboost算法的核心思想为:模型的输入是应变特征数据集训练集$T = \{ ({x_1},{y_1}),({x_2},{y_2}), \cdots ,({x_N},{y_N})\} $、弱学习器和弱学习器个数m。输出为最终的强学习器$G(x)$,计算结果是坐标位置。算法步骤为:

1) 初始化应变特征数据的权值分布:

$ {D}_{1}=({w}_{11},\cdots ,{w}_{1i},\cdots ,{w}_{1N}),{w}_{1i}=\frac{1}{N},i=1,2,\cdots ,N $

将权值分布为${D_m}$的训练数据集进行模型训练,获取弱学习器${G_m}(x)$后计算该弱学习器最大误差${E_m}$:

$ {E_m} = \max (|{y_i} - {G_m}({x_i})|),i = 1,2, \cdots ,N $ (1)

式中:${x_i}$——应变特征量;

${y_i}$——真实坐标值;

${G_m}({x_i})$——预测坐标值。

2) 本文选择平方误差损失函数,则计算每个样本的相对误差为:

$ {e_{mi}} = \frac{{|{y_i} - {G_m}({x_i}){|^2}}}{{E_m^2}} $ (2)

3) 计算回归误差率:

$ {e_m} = \sum\limits_{i = 1}^N {{w_{mi}}{e_{mi}}} $ (3)

4) 计算弱学习器的权重系数:

$ {\alpha _m} = \frac{{{e_m}}}{{1 - {e_m}}} $ (4)

5) 更新样本的权重分布:

$ {w_{m + 1,i}} = \frac{{{w_{m,i}}}}{{{Z_m}}}\alpha _m^{1 - {e_{mi}}} $ (5)

其中Zm是规范化因子:

$ {Z_m} = \sum\limits_{i = 1}^N {{w_{m,i}}\alpha _m^{1 - {e_{mi}}}} $ (6)

6) 重复式(1)~式(5)直至误差满足要求,得到最终强学习器$G(x)$:

$ G(x) = \sum\limits_{m = 1}^M {\left(\ln \left(\frac{1}{{{\alpha _m}}}\right)\right){G_m}(x)} $ (7)

Adaboost集成学习算法流程见图2。

图 2 Adaboost集成学习流程图 图选项

以支持向量回归机(SVR)为弱学习器的SVR_Adaboost模型中,SVR用于解决函数拟合问题,其详细推导过程在文献[14]中,此处不再赘述。支持向量回归机通过非线性变换进行空间映射,利用核函数实现输入空间到高维特征空间的映射,并在高维特征空间中实现数据拟合,SVR模型和高斯径向基核函数表达式。为了增加超平面的容错性,提高模型的预测精度,需要对模型中的松弛变量$\gamma $和惩罚力度C进行参数寻优。

$ y(x) = \sum\limits_{i = 1}^l {{a_i}} K(x,{x_i}) + b $ (8) $ K({x_i},{x_j}) = \exp \left( { - \frac{{||{x_i} - {x_j}|{|^2}}}{{2{\sigma ^2}}}} \right) $ (9) 1.2 随机森林(random forest,RF)

随机森林(RF)[15]回归模型自身为一种集成学习模型,利用随机取样法从n个样本中有放回的选取m个子集,每个子集的样本容量小于n,针对每个训练子集创建独立的弱学习器,在训练完成后得到m棵决策树,将m棵决策树预测结果的平均值作为随机森林回归模型的输出,本文使用的是以CART树为弱学习器的随机森林算法,CART树算法步骤如下:

1) 对于训练数据集D构建二叉树,将其划分成R1和R2两个子空间,选择最优切分变量j和最优切分点s,求解目标为:

$ \mathop {\min }\limits_{j,s} \left[\mathop {\min }\limits_{{c_1}} {\sum\limits_{{x_i} \in {R_1}(j,s)} {({y_i} - {c_1})} ^2} + \mathop {\min }\limits_{{c_2}} {\sum\limits_{{x_i} \in {R_2}(j,s)} {({y_i} - {c_2})} ^2}\right] $ (10)

2) 对于选定好的最优j和s划分的区域,每个区域的输出值为c1和c2:

$ {c_m} = \frac{1}{{{N_m}}}\sum\limits_{{x_i} \in {R_m}(j,s)} {{y_i}} ,\;x \in {R_m},m = 1,2 $ (11) $ {R_1}(j,s) = \{ x|{x^{(j)}} \leqslant s\} ,{R_2}(j,s) = \{ x|{x^{(j)}} > s\} 。$

3) 对于R1和R2两个子空间继续进行二叉树划分,重复步骤1)~2),直至满足要求。

树的深度影响CART树预测精度,以树深为优化变量进行网格搜索,寻找最优树深。

1.3 极端随机树(extremely randomized trees,ERT)

极端随机树[16](ERT)与随机森林算法的主要区别在于:为减少弱学习器计算误差,每棵树利用所有训练集样本进行学习。

1.4 梯度提升决策树(gradient boosting decison tree,GBDT)

GBDT算法[17]采用加法模型和前向分步算法,根据最速下降的近似方法将损失的负梯度值rmi作为残差的估计,在每次迭代训练过程中,均在残差减少的梯度方向上创建一棵CART树,在若干次迭代后的残差趋近于0,最终的预测结果由所有决策树的结果累加获得。

1.5 网格搜索法

网格搜索法是通过交叉验证的方式寻找最优模型参数。模型优化参数在一定范围内进行取值,利用Python编程语言Sklearn库中GridSearch函数对每一种参数组合进行交叉验证,最终得到最高交叉验证分数,获取模型最优参数。在损伤定位识别算法中,SVR目标优化参数为松弛变量$\gamma $和惩罚力度C;CART树目标优化参数为树深。

1.6 模型评判标准

为实现对回归模型预测结果的定量分析和比较,通过平均定位误差对模型性能进行评价,平均定位误差为所选n个测试点位置与仿真位置距离之和的平均值为:

$ E = \frac{{\displaystyle \sum\limits_{i = 1}^n {\sqrt {{{(x - \bar x)}^2} + {{(y - \bar y)}^2}} } }}{n} $ (12)

式中:x,y——实测位置的横纵坐标;

$ \bar x $和$ \bar y $——仿真位置的横纵坐标。

2 实验验证

为完成本文研究目的,实验第一步选取CFRP实验受测区域并构建应变传感器测试网络。第二步用质量分别为400 g,500 g,600 g的重物依次施加在CFRP上模拟损伤程度1、2、3,并获取应变特征。第三步针对损伤程度1对比SVR、CART、SVR_Adaboost、随机森林(random forest,RF)、极端随机树(extremely randomized trees,ERT)和梯度提升决策树(gradient boosting decison tree,GBDT)的平均定位误差。第四步利用得到的最优集成学习模型实现模式2、3的损伤定位。

2.1 损伤识别系统

重物加载引起CFRP应力的变化,对力学特性产生影响是仿真分析和实验测试中常用损伤模拟的方式。图3中,CFRP置于测试工装上,应变片粘贴于受测区域旁,应变片与数据采集器连接进行数据采集,计算机与数据采集器连接进行实时数据查看。实验用应变片电阻为120 Ω,灵敏度系数2.1,数据采集器型号为IMC CRONOS-PL-8,CFRP规格为450 mm$ \times $450 mm$ \times $3 mm,选取120 mm$ \times $120 mm的实验区域(具体位置见图4),图4中虚线框表示此次进行损伤识别的受测区域,为有效避免因测试位置对称而产生的定位误差,在受测区域旁粘贴2个单轴电阻应变片1和2,栅丝方向互相垂直。将受测区域均等划分为13$ \times $13的网格坐标,每个网格长度10 mm,划分完成之后共有169个坐标点。将CFRP四端固定,用400 g,500 g,600 g的标准砝码依次施加在169个坐标点上,测量CFRP的应变量,得到三种损伤程度下的507组数据。将400 g,500 g,600 g实验工况依次记为损伤程度1、2和3,同一重物施加在不同位置用来模拟不同的损伤位置,不同的重物施加在同一位置用来模拟不用的损伤程度。图5为监测实验现场。

图 3 实验示意图 图选项 图 4 受测区域坐标划分示意图 图选项 图 5 损伤监测实验现场 图选项 2.2 信号特征提取

图6给出了在损伤程度1下三组坐标实测应变数据。针对坐标点(60,150)至(180,150)实测应变值展开分析:在中间位置1号应变片测试区域主应力方向沿栅丝方向,此时应变值最大,其余点关于中间点呈对称分布;测试点逐渐靠近2号应变片,2号应变片应变值逐渐增大;2号应变片的存在有效地抑制因1号应变片测试数值的对称性产生的定位误差。

图 6 损伤程度1应变实测数据 图选项

随着测试位置逐渐远离1号应变片,实测应变数值逐渐减小,且变化趋势逐渐减弱,数值与位置之间的相关性降低,2号应变片数值与位置之间仍具有较强的相关性。由此可以得出结论:材料的应变与损伤位置之间具有一定的相关性,可实现损伤定位。对损伤程度1下获取的169组应变特征数据进行归一化处理,归一化公式为:

$ {x_i} = \frac{{|{\mu _i}|}}{{|{\mu _1}| + |{\mu _2}|}},i = 1,2 $ (13)

式中:${\mu _1}$、${\mu _2}$——1、2号实测应变数值;

${x_i}$——对应的归一化应变特征量。

表1给出了实测应变数值以及对应的归一化应变特征量,将归一化应变特征量作为系统输入,对应位置作为系统输出,同理可得损伤程度2、3的数据集,见表2和表3。数据表明不同的损伤程度实测应变数值有明显的区别,可用以验证算法的鲁棒性。图7选取了前四个坐标点的1、2号应变片归一化应变特征,在不同的损伤程度下两个应变特征数值接近,证明该CFRP为线性系统。

表 1 损伤程度1数据集 实测应变数值/(μm·m–1)系统输入(归一化应变特征)系统输出(对应位置)1号应变片2号应变片1号应变片2号应变片横坐标/mm纵坐标/mm 16.6221 –0.77600.95540.04466015017.32230.28080.98400.01607015018.87351.76300.91460.08548015020.73353.81060.84470.155390150$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $5.454814.15730.27810.7219 180270 表选项 表 2 损伤程度2数据集 实测应变数值/(μm·m–1)系统输入(归一化应变特征)系统输出(对应位置)1号应变片2号应变片1号应变片2号应变片横坐标/mm纵坐标/mm 20.3658 –1.14000.94700.05306015018.81300.58180.9700.02607015021.62672.32840.90280.09728015024.17003.98050.85860.141490150$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $7.074617.63590.28630.7137 180270 表选项 表 3 损伤程度3数据集 实测应变数值/(μm·m–1)系统输入(归一化应变特征)系统输出(对应位置)1号应变片2号应变片1号应变片2号应变片横坐标/mm纵坐标/mm 25.85060.90430.96620.03386015028.09820.65260.97730.02277015029.86512.41800.92510.07498015031.31094.53030.87360.126490150$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $$\vdots $9.235121.98560.29580.7042 180270 表选项 图 7 归一化应变特征 图选项 3 损伤位置识别 3.1 选择最优SVR,CART模型参数

为实现最终的坐标预测,预测x坐标和y坐标采用相同模型分别建模,构建两输入单输出模型,依次建立支持向量回归机(SVR)和CART树对数据进行训练,将损伤程度1下的135组作为训练集进行模型训练,其余34组数据作为测试集进行模型测试。

支持向量回归机核函数选取高斯径向基核函数(RBF),结合Python编程语言实现网格搜索法选择最优松弛变量$\gamma $和惩罚力度C,x坐标模型拟合效果最优时$({\gamma _x},{C_x}) = (1.02,{\text{4}}{\text{.21}})$,y坐标模型拟合效果最优时$({\gamma _y},{C_y}) = (3.05,11.58)$。

CART树以最大树深作为优化变量,设置最小分割节点的样本数目为2,叶节点最小样本数目为1,选用平方误差损失函数进行回归树内部参数调整。x,y坐标模型拟合效果最优时最大树深均为10。

3.2 应变特征重要性分析

为验证使用应变特征实现损伤定位的有效性,并量化每个应变特征对损伤定位的“贡献量”,开展应变特征重要性分析。

RF、ERT和GBDT三种集成树模型均由多棵CART树构成,CART树中每一个节点均是关于两个应变特征的条件选择。对于回归问题,采用最小二乘法或方差拟合利用不纯度可以确定节点(即最优条件)。树模型特征重要性原理介绍在文献[18]中。图8给出了在训练阶段,应变特征重要性与弱学习器迭代次数之间的变化关系。可以发现在预测x轴坐标时2号应变特征重要性主要集中在0.99附近,1号应变特征重要性主要集中在0.01附近;在预测y轴坐标时2号应变特征重要性主要集中在0.06附近,1号应变特征重要性主要集中在0.94附近。由此认为在预测x轴坐标时主要依据2号应变特征,预测y轴坐标时主要依据1号应变特征。验证了该方法的有效性,论证了2.2节所述的材料的应变与损伤位置之间具有相关性,可用于实现损伤定位的结论。

图 8 树模型特征重要性 图选项 3.3 集成学习模型预测精度

将最优支持向量回归机模型(SVR)作为Adaboost的弱学习器对数据进行训练,同时对比由最优CART树为弱学习器组成的随机森林(RF)、极端随机树(ERT)和梯度提升决策树(GBDT)的预测精度。图9给出了SVR和CART树在训练集和测试集上的平均误差,以及弱学习器迭代50次的集成学习模型平均定位误差。图10给出了训练集平均定位误差与弱学习器迭代次数之间的变化关系。结合图9有如下结论:随着弱学习器迭代次数的增加,四种集成学习算法的平均定位误差均减小;SVR_Adaboost模型与随机森林模型定位精度的提高随弱学习器迭代次数的增加收效甚微;GBDT模型的误差达到最低,误差趋近于0,在测试集上误差趋近于8.8 mm,说明在训练阶段该模型出现过拟合;ERT模型在迭代50次后训练误差最低,为1.1 mm,比CART树模型定位误差7.2 mm降低6.1 mm。

图 9 平均定位误差对比 图选项 图 10 训练集平均定位误差与弱学习器迭代次数之间变化关系 图选项

对比图11在测试集上平均定位误差与弱学习器迭代次数之间的变化关系可以发现:在弱学习器迭代50次后,四种模型的平均定位误差均达到最低,ERT模型和RF模型定位误差最小为6.2 mm,比CART树模型定位误差11.3 mm降低5.1 mm;SVR_Adaboost模型定位误差为8.5 mm,比SVR定位误差9.1 mm降低0.6 mm;GBDT模型定位误差为8.8 mm,比CART树模型定位误差11.3 mm降低2.5 mm。验证了集成学习模型定位精度要高于对应的单一机器学习模型定位精度。且在几种集成学习模型中ERT模型和RF模型效果最佳。

图 11 测试集平均定位误差与弱学习器迭代次数之间变化关系 图选项 3.4 模型迁移学习

因该CFRP为线性系统,可选择损伤程度1下的最优ERT模型和RF模型进行损伤程度2和损伤程度3的定位。各随机选取34组带入上述弱学习器迭代50次的集成学习模型中,计算出定位误差如表4所示,相较于传统单一模型的损伤定位方法,定位精度得到提高。图12(a)图12(b)和图12(c)展示了损伤程度1、2和3下的10个预测点坐标示意图。

表 4 定位误差 分类RF/mmERT/mm 损伤程度16.26.2损伤程度26.86.7损伤程度37.57.4 表选项 图 12 损伤程度预测坐标示意图 图选项 4 结束语

本文提出利用多个弱学习器组合成强学习器的集成学习算法实现CFRP损伤定位。

获取每个坐标点应变数值最大值作为该坐标点的特征信号,通过特征重要性分析验证了材料的应变与损伤位置之间具有相关性,可用于实现损伤定位的结论。并针对损伤程度1下的应变特征作为模型输入,坐标位置作为模型输出,对x坐标和y坐标的预测进行建模,利用网格搜索法对支持向量回归机和CART树进行参数寻优,用以获取集成学习模型的最优弱学习器。

通过分析单一模型和四种集成学习模型在训练集和测试集上预测坐标与实际坐标的定位误差,发现随机森林(RF)模型和极端随机树(ERT)模型在弱学习器迭代50次后预测精度最高,并相较于单一模型预测精度有较大提高,认为此时该两种模型为最优模型。

利用以上两种最优模型对损伤程度2和损伤程度3的数据进行预测,计算出随机森林(RF)模型平均定位误差分别为6.8 mm和7.5 mm;极端随机树(ERT)模型平均定位误差分别为6.7 mm和7.4 mm,模型仍具有较高的预测精度。以上研究表明:集成学习算法可用于碳纤维增强复合材料损伤定位,且定位精度比传统单一模型定位精度高。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3