基于层级对比学习与注意力融合的少样本轴承故障智能诊断算法(以模拟信号为例,Pytorch)

作品简介

代码实现了一个基于层级对比学习和注意力融合的小样本轴承故障诊断方法。首先,系统通过模拟生成轴承振动信号的时频图像数据集,包含健康状态和多种故障类型。然后采用元学习框架,通过任务采样器构建N-way K-shot的训练任务,每个任务包含支持集和查询集。特征提取网络采用四层卷积结构,同时提取浅层和深层特征。核心创新在于层级对比学习机制,分别在浅层和深层特征空间计算对比损失,增强特征判别能力;并行注意力融合模块对支持集特征进行注意力加权,突出关键特征。距离度量模块采用余弦相似度计算查询样本与各类原型的匹配程度,最终通过分类损失和对比损失联合优化模型。

详细算法步骤:

第一步:数据准备与预处理。收集轴承振动信号数据,通过信号处理技术将一维振动信号转换为二维时频图像,构建包含多种故障类型的时频图像数据集,对数据进行归一化处理确保输入一致性。

第二步:元学习任务构建。采用N-way K-shot学习范式,从数据集中随机采样N个故障类别,每个类别选取K个样本作为支持集用于模型学习,同时选取若干样本作为查询集用于测试,模拟真实工业场景中的少样本学习问题。

第三步:多尺度特征提取。设计四层卷积神经网络,前两层提取包含纹理、边缘等细节信息的浅层特征,后两层提取包含语义、结构等抽象信息的深层特征,通过自适应池化层统一特征维度。

第四步:层级对比学习优化。在浅层特征空间和深层特征空间分别构建对比学习任务,计算正样本对之间的相似度和负样本对之间的差异性,通过温度参数调节对比强度,形成多层次的特征约束机制。

第五步:注意力特征融合。对支持集样本特征进行通道注意力和空间注意力双重计算,通道注意力评估各特征通道的重要性权重,空间注意力定位关键区域特征,将注意力权重与原始特征相乘得到增强后的特征表示。

第六步:类原型计算与匹配。对每个故障类别的支持集特征进行注意力加权平均,得到代表该类别的原型特征向量,计算查询样本特征与各类原型之间的余弦相似度,形成相似度矩阵作为分类依据。

第七步:联合损失函数优化。计算查询样本的分类交叉熵损失,同时结合浅层和深层对比损失,通过权重系数平衡两项损失,采用反向传播算法更新网络参数,逐步提升模型判别能力。

第八步:迭代训练与评估。重复采样训练任务进行多轮迭代训练,每轮结束后在独立的测试任务集上评估模型性能,监控训练损失和测试准确率变化趋势,确保模型具有良好的泛化性能。

第九步:特征可视化分析。采用t-SNE降维技术将高维特征映射到二维空间,可视化不同故障类别在特征空间中的分布情况,直观展示模型的特征学习效果和类别分离程度。

第十步:消融实验验证。设计基线模型对比实验,分别测试无对比学习、无注意力机制等简化版本的性能,定量分析各模块对整体性能的贡献度,验证所提方法的有效性和必要性。

第十一步:模型部署应用。将训练好的模型参数保存,在实际工业场景中加载模型对新采集的轴承振动信号进行实时故障诊断,输出故障类型及置信度,实现智能化故障预警和维护决策支持。

结果分析:

1. 训练过程表现

训练准确率从初始的60.0%稳步提升至最终的67.0%,增长了7个百分点。测试准确率表现波动较大,从56.0%起步,在训练中期经历了显著波动,但最终在第15个epoch稳定在65.6%。这表明模型在学习过程中存在一定的不稳定性,但最终能够收敛到相对稳定的性能水平。

2. 损失函数变化趋势

训练损失从1.6486下降至1.5196,呈平稳下降趋势。测试损失曲线则表现出明显的波动性,在1.4665(第8epoch)到1.8592(第1epoch)之间变化。这种训练损失稳定下降而测试损失波动的现象,在少样本学习任务中是典型的,反映了模型对训练任务的过拟合倾向以及不同测试任务之间的差异。

3. 关键性能指标

最终训练准确率:67.0%

最终测试准确率:65.6%

准确率差距:1.4%(训练vs测试)

训练集和测试集之间仅有1.4%的准确率差距,说明模型具备良好的泛化能力,没有出现严重的过拟合现象。

4. 消融实验结果

消融实验清晰地展示了各模块对整体性能的贡献:

基线模型(无对比学习,无注意力):60.4%准确率

仅添加对比学习:63.2%准确率(相比基线提升2.8%)

完整CMBDC模型:70.4%准确率(相比基线提升10.0%)

结果表明:

对比学习模块单独贡献了2.8%的性能提升

注意力融合模块与对比学习结合产生了7.2%的额外提升

模块间的协同效应显著(2.8% + 7.2% > 10.0%)

5. 模型能力评估

优势表现:

快速学习能力:在5-way 5-shot的极端少样本条件下,仅用少量支持样本就能达到65%以上的准确率

泛化能力强:训练-测试性能差距小,表明模型学习到了通用的故障特征

模块有效性:消融实验验证了层级对比学习和注意力融合的有效性

存在的问题:

训练波动性:测试准确率在训练过程中波动较大(43.6%-74.4%),反映模型对任务采样敏感

收敛稳定性:模型在第8epoch达到峰值74.4%后出现性能下降,可能受限于优化策略

6. 算法优势分析

层级对比学习的有效性:

同时在浅层和深层特征空间进行对比学习

通过多尺度特征约束增强特征判别性

对比损失权重0.1的设置合理,既发挥了正则化作用,又不至于主导训练

注意力融合机制的作用:

显著提升特征表达能力(7.2%的增益)

帮助模型聚焦于故障相关的关键区域

增强了类原型的代表性


创作时间: