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

一、项目简介

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

相关推荐

  • 格拉斯哥大学语言班(格拉斯哥大学语言班好过吗)

    近期很多申请英国留学的同学们都收到了conditional offer,如果你的offer里有语言条件,那你就需要继续刷语言成绩或读语言班了。 这里给大家整理了英国热门院校2023年语言班的一些信息,大家可以参考一下! PS:语言班也可能出现提前满位的情况,像UCL、爱丁堡大学、曼大、格拉在往年出现过提前关闭申请通道的情况,所以不建议踩着DDL申请,可以提前…

    2023年9月19日
  • 华威大学一年需要多少钱

    对于英国留学,家长们最关心的问题无非就两个:学校好不好,以及费用贵不贵。像王曼爱华,更是很多中国家庭比较关心的名校,就是费用这块儿究竟怎么算,家长们可能拿不太准。 那么今天我就以华威大学为例,替各位家长来算一笔账,看看去华威读本科和硕士到底要多少钱! 本硕学费 学费是占据总费用的大头,华威本硕一年的学费普遍在24-50万人民币。 根据最新的官网数据,华威大学…

    2025年8月12日
  • 哈佛大学在美国哪个位置

    视频加载中… 在原本充满期待、值得庆祝的毕业季,位于美国东北部马萨诸塞州波士顿市剑桥城的哈佛大学校园却笼罩在一片紧张与不安的氛围中。本月22日,美国国土安全部宣布取消哈佛大学获得的学生和交流学者项目资质,禁止该校招收国际学生,成为特朗普政府对哈佛大学进行打压的最新举措。 日前,新华社记者在哈佛校园采访时发现,“禁招令”引发震惊与愤怒。很多学生并不…

    2025年7月31日
  • 景观学专业(景观学专业大学排名)

    很多同学为了获得更好的设计理念,海外景观&城设专业有机会选择海外留学,不光提升了学历也开拓了国际视野。那如果去国外学景观设计,都有哪些好的大学呢?今天我们推荐部分知名院校与课程方向(排名不分前后)给大家,感兴趣快点收藏吧~ 美国 United States 哈佛大学GSD的景观建筑是专业领域中当之无愧的第一名,其所涵盖的设计领域包含了不同尺度、不同维…

    2023年9月14日
  • 华北电力大学保定

    华北电力大学在历史上可以说是几经搬迁,后来也算是在河北的保定落地生根并获得了发展,但是后来又在北京建设了校区,开始的时候保定校区还是主校区,后来北京校区成为了主校区。对于保定来说到底是好还是坏呢? 历史沿革 1958年,北京电力学院创办。 1969年,学校迁至邯郸。 1970年,迁至保定,更名为河北电力学院。 1978年,更名为华北电力学院。 1995年,华…

    2025年3月28日
  • 上大学一年需要多少钱

    孩子上大学一年需要的费用因地区和学校类型而异。以下是一些可能的费用项: 学费:一般而言,公办大学的学费较低,大约在7000元左右,而民办类高校和中外合作高校的学费较高,可能是15000-100000元不等。 住宿费:如果学生选择住校,宿舍费用会相对便宜,一般每年约1300元左右。如果选择外出租房,房租则根据地区和租赁条件来定。 生活费:包括日常生活费、电话费…

    2024年6月26日
  • 法国巴黎大学排名

    根据2025-2026年最新QS世界大学排名,法国前十大学以巴黎文理研究大学(PSL)、巴黎综合理工学院和索邦大学等顶尖学府领衔,这些院校在学术声誉和学科特色上展现出卓越实力。 法国顶尖大学排名与特色 ‌1. 巴黎文理研究大学(PSL)‌ 2026QS世界排名第24位,整合巴黎高等师范学院等11所顶尖机构,在数学、物理领域全球领先,拥有14位菲尔兹奖得主。‌…

    2025年11月10日
  • 韩国顺天大学是一本吗

    戚家军,是中国封建王朝历史上最后一支在抵抗外侮中走向辉煌的强大军队。 (戚继光盔甲像) 倭乱平息后,戚家军北上戍边,驻扎在明朝北疆的九边军事重镇——蓟镇。由于明显的地域特征,他们又被称为“浙兵”或“南兵”。 (戚家军灭倭寇) 万历十年,戚继光在朝中的靠山——内阁首辅张居正病逝,接着戚继光便被排挤。先是将戚继光及其得力部将调离戚家军,两年后他又遭弹劾被罢免回乡…

    2025年5月15日
  • 上海的一本大学有哪些学校

    #上海有哪些一本大学# 上海,作为中国最繁华的城市之一,拥有丰富的教育资源。在这个国际化大都市中,一本大学更是承载着培养未来精英的重任。本文将为您介绍上海的一些一本大学,深入了解它们的办学理念、特色专业以及校园文化。 1. 上海交通大学 作为国内一流的综合性大学,上海交通大学是上海一本大学中的佼佼者。学校的工科优势在国际上有着较高的声誉,尤其在电子信息、机械…

    2025年1月16日
  • 英国留学中介排行榜

    英国留学申请经验的 “足与不足”,最终会体现在学生口碑里 —— 案例储备是否丰富、政策把控是否精准、突发问题能否应对,都是留学生评价的核心。以下结合真实口碑,从这三大维度打星排名(满分 5 星),看哪家中介的申请经验更扎实。 排名 1:优越留学(★★★★★)—— 经验全覆盖,口碑零差评 优越留学的申请经验在学生口碑中堪称 “全能”。案例库覆盖极广:既有 “I…

    2025年10月13日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信