往期精彩内容:
Python轴承故障诊断 (14)高创新故障识别模型-CSDN博客
独家原创 | SCI 1区 高创新轴承故障诊断模型!-CSDN博客
基于 GADF+Swin-CNN-GAM 的高创新轴承故障诊断模型-CSDN博客
视觉顶会论文 | 基于Swin Transformer的轴承故障诊断-CSDN博客
Python轴承故障诊断 | 多尺度特征交叉注意力融合模型-CSDN博客
SHAP 模型可视化 + 参数搜索策略在轴承故障诊断中的应用-CSDN博客
位置编码祛魅 | 详解Transformer中位置编码Positional Encoding-CSDN博客
多模态-故障诊断 | 大核卷积开启视觉新纪元!-CSDN博客
超强!一区直接写!基于SSA+Informer-SENet故障诊断模型-CSDN博客
图卷积故障诊断,新增GAT、SGCN、GIN分类模型-CSDN博客
故障诊断一区直接写,图卷积+BiGRU-Attention 并行诊断模型-CSDN博客
故障诊断高创新!基于1D-GRU+2D-MTF-ResNet-CBAM的多模态融合分类模型_基于1dcnn-informer+matt融合的故障诊断模型-CSDN博客
轴承寿命预测全家桶更新!新增西交XJTU-SY数据集+预测模型合集_hxd3b 型电力机车轴承寿命预测实例中,一张该模型预测结果-CSDN博客
故障诊断 SCI 1 区直接写!基于GADF+SwinTransformer-CBAM+GRU的多模态融合分类模型-CSDN博客
创新首发!齿轮箱故障诊断:基于MTF+Swin-Informer的多模态创新模型
基于多尺度卷积神经网络(MSCNN-1D)的轴承信号故障诊断模型
创新首发!基于CNN-BiLSTM-KAN模型的滚动轴承剩余使用寿命预测
高效对抗噪声!基于深度残差收缩网络(DRSN)的轴承故障诊断模型
高创新!基于FFT+WDCNN-Transformer时频域融合的轴承故障诊断模型
创新首发!从"样本极少"到"可用增强":基于 CWT + Conditional DCGAN 的故障诊断模型
独家复现!从 FFT 频域特征到全连接图分类:基于图卷积神经网络 GCN 的滚动轴承故障诊断模型-CSDN博客
强噪声故障诊断新思路!从频域降噪到故障分类:FusADFaultClassifier 自适应谱降噪分类模型详解-CSDN博客
前言
在小样本故障诊断任务中,最常见的难题不是模型不够复杂,而是类别极不平衡:正常样本数量充足,而故障样本尤其是细粒度故障类别样本极少,导致模型在训练时容易偏向多数类,在测试时则对少数类识别失稳。
小样本故障诊断:基于 CWT + Conditional DCGAN 的故障诊断模型
上一期我们提出了基于 CWT + Conditional DCGAN 的故障样本生成增强方法,本期在此基础上进一步升级,构建 Conditional WGAN-GP 生成增强模型。相比 Conditional DCGAN,Conditional WGAN-GP 引入 Wasserstein 距离与梯度惩罚(Gradient Penalty, GP),能够有效缓解传统 GAN 训练中常见的梯度不稳定、模式坍塌和生成样本多样性不足等问题,使生成样本对下游故障分类任务更具判别价值。

在小样本故障诊断任务中,生成式增强不是简单地"多造几张图",而是要生成对分类边界真正有帮助的样本。Conditional DCGAN 证明了类别可控生成的可行性,而 Conditional WGAN-GP 则进一步提升了生成样本的稳定性和判别价值。为小样本故障识别提供了一种更稳定、更有效的解决思路。

● 数据集:CWRU西储大学轴承数据集
● 环境框架:python 3.11 pytorch 2.1 及其以上版本均可运行
● 使用对象:初学者、论文需求、毕业设计需求者
● 代码保证:代码注释详细、即拿即可跑通。
注意:我们还有配套的模型讲解(方便学习网络结构)和**讲解视频******!有毕业设计或者发小论文需求的同学必看,模块丰富,创新度高,性能优越!!
1 模型简介
1.1 CWT+Conditional WGAN-GP 模型简介

本文的整体思路可以概括为三步:
Step 1:把原始振动信号转换为 CWT 时频图
首先,将每条长度固定的一维振动信号转换为二维时频图像。这样做的原因在于:
-
原始时域波形中,局部冲击特征不易直接建模;
-
故障模式往往体现在频带能量分布和时间-频率联合结构上;
-
CWT 能够同时保留时间与频率信息,适合后续用图像模型进行学习。
Step 2:用 Conditional WGAN-GP 为少数类生成增强样本
Conditional WGAN-GP 在 Conditional GAN 的类别条件机制基础上,引入 Wasserstein 距离和 Gradient Penalty。与普通 GAN 不同,WGAN-GP 不再将判别器输出解释为"真假概率",而是将判别器改为 Critic,用于衡量真实样本与生成样本之间的分布距离。Critic 的优化目标为:

生成器的优化目标为:

其中:
-
x_real 表示真实 CWT 图像;
-
x_fake 表示生成 CWT 图像;
-
y 表示类别标签;
-
C(.) 表示 Critic 网络;
-
GP 表示梯度惩罚项;
-
lambda_gp 为梯度惩罚系数。
通过这种设计,Conditional WGAN-GP 可以获得更加平滑、稳定的梯度反馈,有效改善传统 GAN 训练不稳定的问题。
Step 3:设计更合理的数据划分方式,验证增强是否有效
在小样本任务里,实验结果往往不只取决于模型,还非常依赖数据划分方式。如果把少数类真实样本全部放入测试集,而训练只用生成图,那么模型实际上在学习的是"synthetic → real"的跨域映射,这会严重拉低测试表现,也不利于公平评估增强效果。因此,本实验对比了多种划分方案,并最终采用了一个更合理的改进策略:保留真实测试集,同时让训练集中保留少数类真实样本,再用生成样本进行补齐。
2 轴承数据加载与预处理
2.1 导入数据
参考之前的文章,进行故障10分类的预处理,凯斯西储大学轴承数据10分类数据集:

通过人为的制作不平衡数据集,包含100个正常样本,和9类故障各10个样本:

2.2 故障信号转为连续小波变换时频图像

3 基于CWT+Conditional WGAN-GP的故障生成模型
3.1 定义生成网络模型,设置参数,训练模型

3.2 数据训练生成过程

3.3 数据生成

3.4 模型对比
(1)CNN训练过程(原始分布 VS 数据生成)

(2)精度对比:
实验结果表明:Conditional WGAN-GP 相比 Conditional DCGAN 具有更明显的少数类增强优势。其中,Macro F1 从 0.5967 提升至 0.7267,说明模型并不是单纯依赖正常类获得更高准确率,而是在类别平均意义下取得了更好的分类性能。WGAN-GP 生成的增强样本更可能保留少数类故障的关键判别特征,使分类器能够学习到更有效的类别边界
Conditional DCGAN 采用二分类损失进行训练,容易出现梯度饱和或训练震荡问题。而 Conditional WGAN-GP 通过 Wasserstein 距离优化真实样本分布与生成样本分布之间的差异,使生成器获得更稳定的梯度反馈。因此,WGAN-GP 在少样本时频图生成任务中通常具有更好的训练稳定性和生成多样性。如果你也在做小样本故障诊断、长尾分类、轴承故障识别或生成式数据增强,这套模型值得重点尝试。
4 代码、数据整理如下:


