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

一、项目简介

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

相关推荐

  • 宁波出国留学中介

    每经AI快讯,企查查App显示,近日,新东方沃凯德(宁波)文化旅游有限公司成立,法定代表人为秦林,注册资本200万人民币,经营范围含旅游业务、幼儿园外托管服务、自费出国留学中介服务、组织体育表演活动、企业形象策划、品牌管理、版权代理等。股权全景穿透图显示,该公司由北京新东方沃凯德国际教育旅行有限公司全资持股,后者为北京新东方文旅有限公司全资子公司。 每日经济…

    2024年1月27日
  • 英国利物浦大学相当于中国哪所大学

    利物浦大学相当于国内哪所大学?说实话要比较两所不同国家的大学真不是件容易的事,毕竟教育体系、排名标准都不一样。但要是拿综合实力、学术声誉还有国际影响力来说,利物浦大学在国内大概能跟武汉大学、厦门大学这些985大学掰掰手腕。 利物浦大学在英国是老牌名校了,历史悠久,学术氛围浓厚,出了不少牛人。国内的武大和厦大也是名声在外,学术研究成果多多,师资力量强大。要是在…

    2025年12月23日
  • 国内大学生如何申请出国留学

    出国留学的途径有哪些?出国留学很贵吗?看完你就懂了 随着中国的发展越来越好,我们与国际之间的交流也越来越频繁。无论我们上的大学,是什么层次的都能见到外国人。不论是高高在上的985,还是民办三本,亦或者是公办大专,都有外国人的身影。那么我们中国的学生想要出国留学的话,有没有途径呢?本期袁老师就为大家总结了4种途径,帮助学生完成出国留学的梦想。 途径一:报考中外…

    2024年12月27日
  • 4年来首次 美联储降息50个基点 开启宽松周期

    9月18日,美国联邦储备委员会主席鲍威尔在华盛顿出席记者会。新华社记者 胡友松 摄 美国联邦储备委员会18日宣布,将联邦基金利率目标区间下调50个基点,降至4.75%至5.00%之间的水平。这是美联储自2020年3月以来的首次降息,也标志着由货币政策紧缩周期向宽松周期的转向。 美联储当天结束为期两天的货币政策会议。美联储决策机构联邦公开市场委员会18日在会议…

    2024年9月19日
  • 布达佩斯技术与经济大学(匈牙利布达佩斯技术与经济大学)

    复旦大学要去匈牙利开分校了? 9日,国家主席习近平以视频方式主持中国一中东欧国家领导人峰会并发表主旨讲话。习近平强调,要加强文化、教育、旅游、体育、媒体、出版、智库、青年、地方等领域交流合作。我们将在年内举行新一届教育政策对话和高校联合会会议,支持复旦大学在匈牙利开设校区。 今晨,复旦大学向解放日报·上观记者介绍,这一酝酿已久的海外校区,2024年一期建设完…

    2023年11月13日
  • 东国大学研究生好录取吗

    东国大学(동국대학교,Dongguk University),简称“东大(DGU)”,取"东方之国"之意,韩国佛教宗派曹溪宗创办的一所的私立高等学校。东国大学始创于1906年,其前身是以“教育救国”为目的开办的明进学校。现设有13个单科大学和11个研究生院。[1] 我是一名18年7月入学的东大电子系在读博士生,已经在东国学习三年了,还算是…

    2025年3月31日
  • 佛罗里达州立大学体育管理

    雷速体育4月4日讯 据海恩斯报道,佛罗里达州立大学新任男篮主教练卢克·洛克斯将任命亚特兰大老鹰队前锋特伦斯·曼恩担任球队助理总经理一职。 曼恩本赛季来到老鹰之后场均可以得到9.7分2.9篮板2.1助攻

    2025年4月25日
  • 杜伦大学有硕士预科吗

     英国杜伦大学本科预科课程要求申请者完成高二或高三课程,在校成绩均分达到80%-85%以上,雅思总分达到5.5分以上且单项不低于5.5分,研究生预科课程要求申请者毕业于正规大学,取得毕业证及学士学位证书,雅思总分至少达到5.5分以上且单项不低于5.5分。 杜伦大学预科申请材料 ①申请表; ②雅思成绩单; ③高中毕业证或者高中在读证明; ④3年高中成绩单; ⑤…

    2024年10月7日
  • 美国克莱蒙特麦肯纳学院

    护航申请系列 直面招生官系列之文理学院 聚焦2023-2024美国本科申请 对话美国名校现任招生官共同探讨: 文理学院是小众的选择吗? 文理学院只教文科吗? 看排名选文理学院无从下手? 文理学院的毕业生去哪儿了? 如何向招生官展示自己的独特性? 本期《海外路路通》我们邀请到了 三所美国知名文理学院的招生官 分享他们的招生策略 《文理学院到底值不值得选?》 为…

    2024年8月22日
  • 北爱荷华大学世界排名

    新疆晨报讯(记者 沈祖啸)他们不是“学霸”,却以人均近3.3份国外名校录取通知书的牛成绩,轻松驾驭“考霸”的头衔。 距离高考还有1个多月,当准高考生们正在埋头苦读时,乌鲁木齐八一中学国际班的高三学生却早被国外名校“抢光”,大多手握5个以上牛校通知书。最牛“考霸班”里的29名学生收到96份国外名校通知书,最多的手握8所名校的入学“绿卡”。 8所海外名校向他伸出…

    2025年10月29日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信