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

一、项目简介

本文主要介绍如何使用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日

相关推荐

  • 世界排名前五十的大学_世界排名前五十的大学有哪些

    U.S排名是美国最佳大学排名是由美国杂志《美国新闻与世界报道》发布的美国高校排名,排名对象不包括文理学院。 该排名至今已发布36年,是最具权威性和影响力的大学排名之一,也是留学生们在择校时参考的重要指标之一。 个人认为本大学排名所然是大学三大排名之前,单大家仅做参考即可,因为不管是哪个机构排名肯定有地域的优势,所以只能作为参考。 一、美国有42所高校上榜(自…

    2024年4月7日
  • 英语教育专业_

    那些年学过的专业和就业2——英语(师范类) 那年高考没能升入英语系,而身边的同学好友中,英语系的有很多。作为国内外语专业类的第一大语种,英语的流通分布之广,已经遍布很多领域,特别是更多理工科领域,很多英文资料需要翻译成中文,以服务科技经济和社会发展。当时的英语专业,可以说是其他专业学生向往膜拜的专业。英语专业的学生平时在聊天说话时,都透露着极强的自信,这种自…

    2024年3月5日
  • 在英国剑桥大学留学一年费用_在英国剑桥大学留学一年费用多少

    剑桥大学费用海外留学生,以及那些符合英国和欧盟学生学费支持的学生(如因为他们申请了第二学士学位),除了大学学费,还需要支付学院费。学院费包括你在大学的教育、各种服务和支持。不同学院之间的大学学费也不一样(目前每年在£5670和£7980之间)。 剑桥大学本科学费 据立思辰留学介绍:组专业:盎格鲁-撒克逊、挪威和凯尔特人 、考古学 、亚洲和中东研究、经典、经济…

    2024年3月8日
  • 新疆师范大学是211还是985

    来自软科网最新公布的 《软科中国大学专业排名》中 中国少数民族语言文学专业 位于全国排名第12位 在《2021中国最好学科排名》中 民族学学科 位于全国排名第18位 厉害了!我的新师大! 一个不是985、211 也不是中字头、国字头 一个地方院校 以经济学、法学、教育学类专业形成自己的区域特色 拥有办学历史悠久的区域高水平大学 ——新疆师范大学! 给身边的朋…

    2025年5月14日
  • 英国利兹大学何红艳

    以梦为马,不负芳华不负卿 ——读《以梦为马:海子经典诗选》有感 作者:何红艳近照 “和所有以梦为马的诗人一样,我选择永恒的事业。我的事业,就是要成为太阳的一生,他从古至今,他无比辉煌无比光明。” 以苦为鞭,逐梦检察 老式的藤制坐椅上,奶奶手里捧着一副黑白相框,房间里的光线有些昏暗,奶奶花白的头发下一双眼睛深深地望着照片上早已模糊不已的人像,时不时用手抹去脸上…

    2025年3月11日
  • 加利福尼亚有什么大学

    加利福尼亚大学(University of California),简称加州大学,是位于美国加州的一个由10所公立大学组成的大学行政系统,是世界上最具影响力的公立大学系统,被誉为“公立高等教育的典范”。 在《2020美国开放门户报告》中,加州以16万多留学生人数,成为最吸引留学生的州。 而在这里留学生们入读最多的学校,也基本都是加州系大学。在前20中,加州系…

    2024年12月25日
  • 伯明翰商学院世界排名_伯明翰商学院世界排名榜

    伯明翰商学院排名 ·《卫报》(The Guardian)2015英国大学会计与金融专业排名全英第20名 ·《完全大学指南》(Complete University Guide)2015英国大学会计与金融专业排名全英第38名 ·《卫报》(The Guardian)2015英国大学商业、管理与市场营销专业排名全英第22名 ·《金融时报》2013欧洲商学院排名上位…

    2024年3月18日
  • 证券日报头版:跟风炒作ST股票无异于刀尖上跳舞

    近期,多只ST板块股票涨势突出。但是,从这些上市公司披露的风险提示公告来看,公司的基本面并没有发生变化,且背后存在“可能终止上市”“涉嫌违法违规,正在立案调查”等不同程度的风险事项。 根据规定,上市公司股票被实施其他风险警示的,在公司股票简称前冠以“ST”字样;上市公司股票被实施退市风险警示或同时被实施退市风险警示和其他风险警示的,在公司股票简称前冠以“*S…

    2024年3月9日
  • 南京南洋大学

    1963年9月22日清晨,新加坡裕廊路飘着细雨。66岁的陈六使握着当日报纸,手指划过“褫夺公民权”的铅字时,窗外的南洋大学正传来琅琅书声。他转身望向云南园里葱郁的棕榈树,恍惚间又看见1920年的自己——那个赤脚踩着橡胶汁液、在热带烈日下搬运胶块的闽南少年。 1897年的福建同安,咸湿海风裹着陈氏兄弟的饥饿。父母早逝的七个孩子挤在渔村破屋里,六弟啃着地瓜皮问三…

    2025年3月21日
  • 外资大行研判:逢低布局A股正是良机

    岁末时点,中国资本市场迎来外资新一轮展望。综合考虑估值、宏观政策发力、经济增长韧性等因素,“逢低布局”“估值回升”成为外资机构对于2024年中国资本市场的主要判断。 德意志银行最新发布以“逢低布局”为主题的中国股票策略报告显示,中国经济增速远高于全球其他主要经济体,未来有望进一步增长,在当前估值低点布局中国股票为投资良机。 无独有偶,瑞银证券中国股票策略分析…

    2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信