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

一、项目简介

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

相关推荐

  • 香港中文大学分数线河北_香港中文大学分数线河北招生

    河北新闻网7月8日讯(记者马利)今天是河北省高招录取第二天,教育部直属高校公费师范生、飞行员、香港高校均完成了招生计划。整体看,部分高校生源充足,录取分数较高。 ●部属公费师范生文史类最低录取分数线610分 7月8日,东北师范大学、华中师范大学、陕西师范大学、西南大学等4所教育部直属师范高校公费师范生录取结束。文史类中,各高校的最低录取分数全部在610分及以…

    2024年2月27日
  • 上海市有多少所985大学和211大学

    上海作为中国的重要城市,拥有多所知名的高等学府。关于985和211高校的数量我可以为您详细列举: ·985大学:上海共有4所985大学,分别是:复旦大学、上海交通大学、同济大学、华东师范大学。这些大学都是中国顶尖的高水平研究型大学,在各自的领域内享有很高的声誉。 ·211大学:上海的211大学数量较多,共有10所,包括上述的4所大学。985大学以及以下6所大…

    2024年11月12日
  • 德克萨斯大学奥斯汀分校

    这个周末,全美大学橄榄球迷的目光将集中在第12名奥克拉荷马大学快船队(5-0)与第3名德克萨斯大学长角队(5-0)之间的全美橄榄球赛上。比赛将在达拉斯的棉花碗内进行。奥克拉荷马对德克萨斯预计会是一场火爆的对抗赛,德克萨斯队在Fanduel上以5.5分优势领先。 俄克拉荷马州和德克萨斯州之间的竞争可以追溯到1900年,长角牛队以63-50-5的战绩领先。上个赛…

    2023年12月7日
  • 教育学原理专业就业方向

    低头赶路,也要抬头看天。知道自己的未来怎么样,增加对未来的掌控力,努力会更有动力。 今天,启航集训营,带大家了解教育学学硕,各个专业的就业前景。 将从专业简介、研究方向、学习内容、就业方向、部分学校研究方向示例,5个方面,介绍教育学12个学硕士专业。 分别是: (1)教育学原理 (2)课程与教学论 (3)教育史 (4)比较教育学 (5)学前教育 (6)高等教…

    2024年1月8日
  • 澳大利亚墨尔本天气(澳大利亚墨尔本天气预报)

    //前言// 墨尔本冷到哭, 昨天一早, 更是经历了今年冬天以来最冷的一天! 甚至有些地区降至零下! 墨尔本冬季最冷一天 未来气温要更低 进入本周,墨尔本的温度低得令人无法接受。特别是昨天一早,大早上就有很多人被直接冻醒,看一看温度,早上7点温度仅有3.4摄氏度… 实际体感温度更低,这也是进入冬季以来,墨尔本最冷的一天。 图片来源:herald …

    2023年10月25日
  • 天津商业大学研究生院_天津商业大学研究生院官网

    #在职研究生# 简介 天津商业大学(Tianjin University of Commerce),简称TUC,是一所以商学为主干,管、经、工、法、文、理、艺多学科相互支撑、协调发展的高等学校,是天津市属重点大学,国家首批卓越农林人才教育培养计划改革试点高校。 招生计划 2023年我校面向全国招收全日制和非全日制硕士研究生,招生人数以教育部正式下达的招生计划…

    2024年3月19日
  • 美国耶鲁大学简介和特色

    今天小编给大家介绍一下美国的耶鲁大学: 耶鲁大学(Yale University),简称“耶鲁”或“Yale”,位于美国康涅狄格州的纽黑文市,是一所世界一流的私立研究型大学。该校成立于1701年,自建立以来一直致力于为学生提供卓越的教育和丰富的学术资源,让他们在深度学习和全面发展的过程中,充分发挥自己的潜力。2024QS世界大学排名在第16位。 耶鲁大学拥有…

    2024年10月17日
  • 西交大利物浦大学是什么大学

    9月,数百万学子将迈入大学,开始新的征程。他们曾憧憬象牙塔内的生活,他们曾渴望新的开始。但在传统大学之外,还有很多中外合办大学也值得被关注。 为此,红星新闻推出“大学·教育”系列报道,关注中外合办大学,展现它们在办学中遇到的挑战与机遇,为万千学子提供一个了解它们的机会。前期文章回顾:上海纽约大学首批毕业生惊艳亮相 为啥超10%学生没能顺利毕业 “为什么我们的…

    2025年3月18日
  • ucl是什么大学学费_ucl的学费

    TIMES搞过一个排名,揭露了一些最喜欢招中国学生的学校,分别根据中国学生占比,贡献的学费,以及对中国学生依赖比例做了个排名。排名越靠前,说明国内留学生对其越是真爱。 今天我们看下中国的留学生们,都把学费交给了哪些学校? No.1 UCL 学费1.27亿英镑 伦敦大学学院UCL当之无愧的中国留学生最喜欢的英国高校之一,学神喜欢拿ucl保底,学霸喜欢多申ucl…

    2024年2月28日
  • 德国慕尼黑大学怎么样

    现今,德国成了除英美国家外最受欢迎的留学国家之一。这个以严谨着称的国家,其优质的教育体系和高水准的教学质量处在世界领先水平。本期,跟着立思辰留学小编来看看德国综合排名的大学——慕尼黑大学。 慕尼黑大学 慕尼黑大学,全称为路德维希-马克西米利安-慕尼黑大学,建校于1472年,是德国巴伐利亚地区所大学,位于州府慕尼黑。 自15世纪建校以来,慕尼黑大学便是欧洲乃至…

    2024年10月19日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信