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

一、项目简介

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

相关推荐

  • 全球大学排名100强留学申请条件

    2026年的留学申请季已经悄悄开始了,最近不少同学开始翻邮箱查资料,最常问的问题里一定有:"我雅思/托福得考多少分才能冲QS前100?" 这事儿真得提前摸清楚——语言成绩不仅是申请时的"入场券",更是你到国外上课能听懂教授讲啥、小组作业不被"拖后腿"的基础。 2026QS世界大学排名TOP100院校…

    2025年9月17日
  • 纽约的大学

    这两天,ED放榜季传来重磅好消息—— 睿达学子成功ED录取美国本科商学院排名TOP 5的NYU Stern(纽约大学斯特恩商学院)。 如果你关注近两年的美本申请,一定会发现一个明显趋势: NYU Stern,正在成为“最卷”的顶级商学院之一。在本科层面,Stern的录取极具竞争力,国际生比例非常紧张,和藤校一样难! 为什么是 NYU Stern? NYU S…

    2025年12月24日
  • 伊利诺伊大学香槟分校计算机排名

    近日,2023 U.S.News公布了2023全美研究生最佳计算机科学专业院校排名(Best Computer Science Schools),前五名为麻省理工学院(第一名),卡内基·梅隆大学(CMU)、斯坦福大学与加州大学伯克利分校(UCB)并列第二,第五名为伊利诺伊大学厄巴纳-香槟分校(UIUC)。 计算机专业的本科排名则为CMU、MIT、斯坦福、UC…

    2025年12月27日
  • 美国大学有考试吗_美国大学有考试吗现在

    据香港《南华早报》网站5月12日报道,由于疫情防控,中国多个城市取消了美国大学的先修课程(AP)考试。负责管理美国大专院校AP考试的美国大专院校委员会宣布了这个消息。这意味着,因为疫情防控,今年中国内地的多个城市——包括北京和上海在内——将不会举行这些考试。 该组织此前在网站上发表声明说:“广泛的疫情防控措施将阻止一些考点在5月如期举行考试。鉴于中国疫情的规…

    2024年3月3日
  • 印度最好的大学排名_印度最好的大学排名世界第几

    点蓝字关注,不迷路~ 今年以来,有关制造业外移东南亚、印度的的争论甚嚣尘上,参照中国的发展路径,其实制造业的承接是一个复杂问题,涉及人口红利与用工成本、产业配套、工程师红利等,或许我们也可以从中印高校排名和国内高等教育现状得出一些启示。印度顶级高校相当于国内什么水平?6月9日,国际高等教育研究机构QS Quacquarelli Symonds发布了第十九版全…

    2024年3月22日
  • 2024年首秀!时隔两年召开发布会 证监会重磅发声

    时隔两年多,中国证监会再次召开新闻发布会。 1月12日,中国证监会在新闻发布会上,分别就上市公司分红机制、IPO发行节奏、新股发行定价以及注册制下的投资端改革现状及所面临的问题,进行了详细介绍和回应。 针对备受关注的IPO节奏明显放缓问题,中国证监会发行司司长严伯进表示,去年9月到12月,月均核发批文和启动发行数量明显下降。下一步,证监会和交易所将继续把好I…

    2024年1月14日
  • 双非财经类大学排名

    \r 在高考志愿填报中,财经类高校一直备受关注。除了“985”“211”名校,其实还有几所非“双一流”财经大学,凭借王牌专业和优质资源,培养出大量金融、会计等领域的高端人才。\r它们的毕业生就业率和薪资水平甚至超越不少211高校,成为考生和家长的“黑马”选择。选择这些实力强劲的双非财经院校,既能享受高性价比的教育资源,也为未来职业发展打下坚实基础。 \r\r…

    2025年9月1日
  • 带着爸爸去留学的演员(带着爸爸去留学的演员表)

    孙红雷很久没有电视剧作品和观众见面了,粉丝们等了三年,终于等到了孙红雷的新剧播出。 由孙红雷、辛芷蕾、曾舜晞领衔主演的电视剧《带着爸爸去留学》正在热播,至于这部剧的口碑,真的是一言难尽。 先看《带着爸爸去留学》的演员阵容,曾舜晞、蒋依依、杨玏几个年轻偶像派先暂且不提。孙红雷,观众眼中绝对的实力派男演员,这部剧开播,很多人就是冲着孙红雷看的。 辛芷蕾出道以来也…

    2023年9月26日
  • 艺术类有出国留学吗

    由于艺考对考生文化课要求越来越高,加上2015年艺考政策又进一步收紧,不少人把2015年称为“最难艺考年”。面对国内的艺考难,艺考生们是不是想到了申请出国留学呢?下面就为大家介绍下艺术生申请出国留学的三大途径。 途径一:短期进修课程 不少国外院校都设置了国际性短期进修课程,吸引国际学生就读,其中英国的课程比较有吸引力,一般为两三个月。 途径二:艺术专修文凭 …

    2026年1月13日
  • 剑桥大学的简介怎么写

    剑桥大学(www.cam.ac.uk),经常被简称为剑桥,是一所位于英国英格兰剑桥市的研究型大学,被誉为英国以及全世界最顶尖的大学之一。始创于1209年,亦是英语世界里第二古老的大学。剑桥大学和牛津大学合称为“牛剑”,除了两所大学在文化和现实上的协作已成为英国社会史的一部分外,两所大学长久以来一直存在竞争。并经常和牛津大学争夺全英最佳学府的声誉。 剑桥大学获…

    2025年8月23日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信