凯斯西储大学轴承故障数据

一、项目简介

本文主要介绍如何使用python搭建:一个基于深度学习的滚动轴承故障诊断系统

项目中涉及使用了多种方法对比检测结果,包括:

传统机器学习方法:随机森林深度学习方法:CNN增加残差模块后的深度学习方法:CNN+ResBlock

如各位童鞋需要更换训练数据,完全可以根据源码将图像和标注文件更换即可直接运行。

博主也参考过网上故障检测的相关文章,但大多是理论大于方法。很多同学肯定对原理不需要过多了解,只需要搭建出一个基于深度学习的轴承故障预测系统即可。

也正是因为我发现网上大多的帖子只是针对原理进行介绍,功能实现的相对很少。

如果您有以上想法,那就找对地方了!

不多废话,直接进入正题!

二、数据介绍

本次项目的数据是使用的凯斯西储大学(Case Western Reserve University)轴承数据中心的开源数据集。

数据文件采用Matlab格式。每个文件都包含风扇和驱动端振动数据以及电机转速。对于所有文件,变量名称中的以下项表示:

DE – 驱动端加速计数据

FE – 风扇端加速计数据

BA – 基础加速计数据

time – 时间序列数据

RPM- 测试期间的转速

2.1 故障类型图示2.2 数据图示2.3 查看单个数据文件情况2.4 数据分布情况

博主对:

正常

内圈故障

外圈故障

滚动体故障

四种不同情况下轴承的数据分布进行了可视化展示,由于图示较多,这里只展示内圈故障的一个文件的数据分布情况,其他情况感兴趣的同学可以下载完整代码运行看看。

三、数据预处理

通过可视化观察发现数据波长周期基本上为100-200左右,博主这边使用1000作为采样长度,对所有轴承数据进行采样,并构建label。我们这次需要学习并预测的是输入的轴承数据是为:正常、内圈故障、外圈故障、滚动体故障。中哪一类,因此是一个4分类的任务。处理后数据分布如下:

正常样本:1696个

内圈故障样本:1455个

滚动体故障样本:1457个

外圈故障样本: 1457个

然后对数据进行采样,保证每类数据1400个。

data_train = np.asarray(data_normal[:1400] + data_inner[:1400] + data_ball[:1400] + data_outer[:1400],dtype = 'float64')label = np.asarray(label_normal[:1400] + label_inner[:1400] + label_ball[:1400] + label_outer[:1400],dtype = 'int64')print("处理后样本shape:",data_train.shape)print("处理后数据类别分布:",Counter(label))# 保存数据np.save("train_data/train_data.npy",data_train)np.save("train_data/label.npy",label)print("数据保存成功,位置:/train_data/")

四、模型训练及评估4.1 加载数据

def load_data(): # 读取数据 x = np.load('train_data/train_data.npy') y = np.load('train_data/label.npy') num = len(Counter(y)) print("类别数量为:", num) return x, y, num # 读取数据data, label, label_count = load_data()# 生成训练集测试集,70%用作训练,30%用作测试train_data, train_label, val_data, val_label = create_train_data(data, label, 0.7)print("*"*10)print("训练集数量:",len(train_label))print("测试集数量:",len(val_label))

4.2 随机森林

# 模型参数设置rfc = RandomForestClassifier(n_estimators = 50,min_samples_split = 5,min_samples_leaf = 4,max_depth = 5)# 模型准确率和损失值acc_list = []loss_list = []train_acc_list = []print("开始训练")for i in range(1,epoch +1): # 模型训练 rfc.fit(m_train,train_label) # # 训练集 # y_train = rfc.predict(m_train) # 测试集 y_pred = np.asarray(rfc.predict(m_val),dtype = 'int64') # 计算准确率 acc = round(accuracy_score(val_label, y_pred),3) # 训练集 y_pred = np.asarray(rfc.predict(m_train),dtype = 'int64') # 计算准确率 train_acc = round(accuracy_score(train_label, y_pred),3) # print('测试集准确率:', round(accuracy_score(val_label, y_pred),3)) acc_list.append(acc) train_acc_list.append(train_acc) # 计算损失值 # 使用one-hot编码计算损失值 noe_hot = OneHotEncoder(sparse = False) y_pred_o = noe_hot.fit_transform(y_pred.reshape(1, -1)) val_label_o = noe_hot.fit_transform(val_label.reshape(1, -1))# loss = round(log_loss(val_label_o,y_pred_o),3) # print("loss:",round(log_loss(val_label,y_pred),3))# loss_list.append(loss) print("完成第",i,"轮训练,测试集准确率:",acc)

4.2.1 模型训练4.2.2 模型测试4.3 CNN

构建一个CNN网络,结构如下:

4.3.1 模型训练4.3.2 模型测试

可以看到,使用原始cnn模型训练后准确率只有83。类标2即“内圈故障”的召回率较低,无法准确有效识别。

4.4 CNN+ResBlock

模型构建:

import n_model as mdimport tensorflow as tf# 模型参数model_param = { "a_shape": 1000, "b_shape": 2, "label_count": 4, "num_b":5}data_shape=(model_param['a_shape'],model_param['b_shape'])# 模型实例化model = md.CNN_ResNet_model(model_param['label_count'] , model_param['num_b'] , data_shape=data_shape)# 使用学习率进行训练res_model = model.model_create(learning_rate = 1e-4)# 模型网络结构print("实例化模型成功,网络结构如下:")print(res_model.summary())# 设置模型log输出地址log_dir = os.path.join("logs/ResNet")if not os.path.exists(log_dir): os.mkdir(log_dir)

4.4.1 模型训练4.4.2 模型测试

可以看到,增加了残差模块的CNN网络已经能准确对不同故障类型进行分类,准确率和召回率均在95分以上。

五、完整代码地址

由于项目代码量和数据集较大,感兴趣的同学可以下载完整代码,使用过程中如遇到任何问题可以在评论区评论或者私信我,我都会一一解答。

完整代码下载:

点击即可获取→→→→→AI鈥斺€擹iLiaoHuoQu←←←←←←

声明:壹贝网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者wangteng@admin所有,原文出处。若您的权利被侵害,请联系 756005163@qq.com 删除。

本文链接:https://www.ebaa.cn/36550.html

(0)
上一篇 2024年11月22日
下一篇 2024年11月22日

相关推荐

  • 皇后大学学费预估

    加拿大留学皇后大学学费约为18,000加元/年—25,000加元/年,食宿费约为12,519加元/年—14,110加元/年。住宿服务校内住宿:提供11栋宿舍楼。女生宿舍:528间;男生宿舍:262间;混合宿舍:2,064间。夫妻合住:400间。只要存款在指定期限内汇到,则保证新生的住宿。校外有公寓和宿舍提供。超过85%的学生住在校园步行15分钟内的路程距离范…

    2025年8月15日
  • 马来西亚留学生活费_马来西亚留学生活费一年

    第一部分: 简介 留学生活中最重要的一环便是资金问题。因此,预算成为了每个留学生必须考虑的一部分。而在许多地方留学,马来西亚备受瞩目。那么,留学生在马来西亚一年的生活费是多少?以下将就此的问题进行详细解答。 第二部分: 水电费用 首先是房屋水电费用。马来西亚不同城市的房租价格不同。首都吉隆坡租房一般要300~800马币一个月,如果是合租的话一个月大约需要50…

    2024年4月14日
  • 西班牙康奈尔大学

    美国康奈尔大学(Cornell University)是一所位于美国纽约州伊萨卡的私立研究型大学,另有两个分校区分别位于纽约市和卡塔尔教育城。康奈尔大学由埃兹拉·康奈尔和安德鲁·迪克森·怀特于1865年建立,是常春藤盟校最年轻的成员。康奈尔大学男女同校,不分信仰和种族都可以进入。学校成立伊始,其创始人就打算将其建设成为一所全科型的新型大学,教授内容从文学名著…

    2024年8月4日
  • 美国福特海斯州立大学排名

    现在对于很多的在职人士来说尽管经济形势比较低迷,但是职场上对于MBA专业人才的热情却并没有降低。所以在职MBA还是有很大的市场需求。那么备考在职MBA有哪些误区?接下来小编就来带大家了解一下。 邓迪大学(University of Dundee) 全球工商管理硕士(Global Master of Business Administration) 项目咨询:…

    2025年12月1日
  • 美国大学毕业年龄

    近期,美国总统特朗普的一张照片在网上流传,再次激发了美国民众对于他健康问题及年龄的担忧。照片显示,特朗普下肢出现肿胀,右手手背有瘀伤,部分受影响部位涂有化妆品。白宫发言人卡罗琳·莱维特(Karoline Leavitt)7月17日在记者会上宣布,特朗普腿部肿胀是由“常见的”静脉疾病引起的,右手瘀伤则是因为他握了太多人的手,这两种症状都是良性的。不过这并未能平…

    2025年9月4日
  • uic大学(uic大学是几本)

    大家好,我是让学习变得更快乐的张雪峰老师。上回我们盘点了5所中外合办大学的就业质量数据,很多朋友留言问为什么XX大学不在里面?这个问题问得非常好!那究竟是为何?究其原因,其实单纯是因为“鱼太大,一锅炖不下”……所以今天我们再次来带大家看下另外5所中外合办高校(含大陆与港澳台地区合办)2022年的就业质量情况。 一、上海纽约大学 上海纽约大学成立于2012年,…

    2023年10月25日
  • 法伦达尔管理学院

    法伦达尔WHU管理学院(WHU Vallendar),是一所于1984年创建于德国科布伦茨附近的法伦达尔的私立商学院。校名中的 WHU 是德语“企业高层管理学术学院”的缩写。WHU的前身于1984年建立,经过7年的时间该校的校办资质通过了州教育机构评审,最终确定了其“莱茵兰-普法尔茨州州立标准公立资格”的认定。WHU的标志性专业是工商管理硕士,在世界不同国家…

    2025年2月7日
  • 南阳大学城最新进展

    1 去年至今,“大学城”的消息在南阳甚嚣尘上,关于选址也有鸭河跟新店等多个版本,引起人们无限的憧憬和幻想。 尤其是今年,有了官方认证的实锤消息以后,热心市民心头的小火苗更加按捺不住地跳动摇曳起来。 “大学城”这个事物,其实并不新鲜,大部省会以上的城市在十几二十年前就已经有了。 很多南阳人在都有过在外地大学城求学的经历,所以在对南阳大学城的期盼中更多了几分青春…

    2024年11月19日
  • 欧美大学有哪些影响

    中国大学最近因留学生隐私问题成为争议焦点。 大连某高校公开开除一名与外国网友接触的女学生,理由是“损害国格”,同时曝光其姓名引发舆论哗然。 另一边厢,近半数留美中国学生却因学术诚信问题被开除,剽窃和代考占比高达53.8%。 两种极端现象撕开了跨文化教育的深层裂缝。 那个东北高校的操作确实让人皱眉。 网传视频里女生和乌克兰玩家的互动,学校直接扣上“国格”帽子公…

    2025年9月12日
  • 欧洲公立大学免学费_

    盘点“低免学费”留学国家比利时与瑞士即将在4月30截止的欧洲院校~ 1、法语鲁汶大学4月30截止(已改为4月1截止,当前不可申23入学) 法语鲁汶大学(http://www.uclouvain.be/ )简称UCL,一所在学术界颇有地位的大学,在2023THE泰晤士世界大学排行榜上位居第170名,在2023QS世界大学排行榜上位居第195名,在2023USN…

    2024年4月8日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信