基于胶囊网络的轴承故障诊断(代码实现)

1 简介

胶囊网络(CapsNet)由 Hinton 于2017年10月在《Dynamic Routing Between Capsules》中提出,目的在于解决  CNN 只能提取特征,而不能提取特征的状态方向位置等信息,导致模型的泛化(举一反三)能力较差。

而胶囊神经网络构建一组神经元,从而进一步挖掘了原始数据的信息,从而凭借着远低于卷积神经的所需的样本数目、较好的泛化性的优点,被众多学者研究。

部分内容引用来源 基于keras的胶囊网络(CapsNet)_little_fat_sheep的博客-CSDN博客_capsnet

2 基本原理

本人肯定只能讲基本原理,建议看看这位大神的理解思路。

揭开迷雾,来一顿美味的Capsule盛宴 - 科学空间|Scientific Spaces

3 实验

3.1实验数据

数据集:凯斯西储大学(CWRU)滚动轴承数据中心

采用美国凯斯西储大学(CWRU) 的开放轴承 数据库的样本进行实验分析,轴承故障产生的实验台如下图所示。使用电火花加工技术分别在轴承的内圈、外圈和滚动体上引入单点缺陷,故障尺寸分别为 71421英尺,48kHz采样频率采集不同负载下的故障轴承振动数据用于实验分析。

如下图,为CWRU 滚动轴承数据采集系统:

3.2数据集划分

本文实验样本选取1HP10种故障状态振动信号,经过傅里叶变换后构建数据集,每类样本长度为1024,其中具体实验样本信息如下表所示。另外每种轴承状态随机选择50%的样本用于模型训练和25%的样本用于模型的验证,25%的样本用于模型测试。

 

 3.2 实验代码

实验环境(基于Tensorflow2.2 进行操作,win10)

3.2.1网络结构

简单的两层卷积加胶囊层的胶囊神经网络。

 3.2.2 训练精度

 3.2.3 loss

 3.3评估预测结果

3.3.1代码

predict = model.evaluate(x_test, y_test, batch_size=4, verbose=1)

3.3.2精度

效果还不错

3.4混淆矩阵

 3.5T-SNE可视化

向秃头前进中
关注 关注
  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
轴承故障诊断matlab代码.zip
05-05
Hilbert包络谱分析和Haar小波分析和数学形态学分析相对于时域无量纲参数分析、FFT分析方法,可以更好的观测出故障信号频率,分析故障类型。
故障诊断开源代码推荐 | 轴承故障诊断迁移学习综述,免费获取!
m0_47410750的博客
10-17 4099
传统的基于深度学习的轴承故障诊断方法假设训练数据和测试数据遵循相同的分布。然而,对于实际场景中收集的轴承数据,这一假设并不总是正确的,导致故障诊断性能显着下降。为了满足这一假设,在深度学习中引入迁移学习的概念,将从其他数据或模型中学习到的知识进行迁移。深度迁移学习方法由于其出色的特征学习和领域迁移能力,近年来在轴承故障诊断中得到了广泛的关注。本文对2016年以来基于深度迁移学习的轴承故障诊断方法的发展进行了全面回顾。
【故障诊断】基于EMD实现滚动轴承故障诊断含频谱 包络图附Matlab代码
最新发布
m0_57702748的博客
05-04 912
滚动轴承是旋转机械中重要的零部件,其故障会导致设备停机、生产效率下降甚至安全事故。因此,对滚动轴承进行故障诊断至关重要。近年来,基于经验模态分解(EMD)的故障诊断方法得到了广泛应用。EMD是一种自适应信号处理方法,可以将非平稳信号分解为多个平稳的本征模态函数(IMF)。通过分析IMF的频谱和包络图,可以有效地识别滚动轴承的故障类型和严重程度。本文将介绍基于EMD实现滚动轴承故障诊断含频谱 包络图的方法。首先,介绍EMD的基本原理和算法流程。
CNN网络的故障诊断(轴承的多故障类型分类+Python代码
weixin_49890890的博客
07-13 7680
基于仿真数据的滚动轴承故障诊断研究。
基于深度学习的轴承故障诊断
秋雨行舟
05-24 6668
该专栏将较为详细的介绍如何利用深度学习进行故障诊断方面的学术研究,主要以轴承为例,包括深度学习常用框架Tensorflow的搭建以及使用,并会记录完整搭建过程,并以卷积神经网络与循环神经网络为例进行代码编写和实际运行,相信经过本次学习,你能够入门开始着手研究。 完成该专栏的学习,你将会收获以下知识: 1.Anaconda的安装以及使用,深度学习框架Tensorflow2的安装以及使用 2.学会如何利用卷积神经网络与循环神经网络进行轴承故障诊断-以凯斯西楚大学轴承数据集为例 3.学会一些常用调参技巧
保姆级教程之VMD-CNN-BILSTM轴承故障诊断,MATLAB代码
woaipythonmeme的博客
09-06 2387
本期为大家带来VMD-CNN-BILSTM的轴承故障诊断。和前几期一样,依旧是包含了数据处理,优化VMD参数,特征提取,再到CNN-BiLSTM的故障诊断,其他类型的故障诊断均可参考此流程。数据替换十分简单!其中优化VMD参数部分,采用的是最新推出的,效率非常高的融合鱼鹰和柯西变异的麻雀优化算法(OCSSA),文件中也包含了该算法与其他算法的对比的代码。故障诊断部分,本期作者将CNN-LSTM,C...
代码已开源!多分支多尺度CNN在强噪声变载荷条件下轮对轴承故障诊断中的应用
weixin_51036112的博客
05-16 1016
高速列车轮对轴承故障诊断的关键问题是从振动信号中提取故障特征。针对复杂度高、耦合性强、信噪比低的振动信号,提出了一种新的多分支多尺度卷积神经网络,能够从振动信号的多个信号分量和时间尺度中自动学习和融合丰富且互补的故障信息。该方法结合了传统的滤波方法和多尺度学习的思想,可以扩展特征学习过程的广度和深度。因此,所提出的网络可以得到更好的性能。在轮对轴承数据集上的实验结果表明,该方法具有较好的抗逆能力和载荷域适应性,与现有的5种网络相比,可以更准确地诊断12种故障类型。
人工智能-基于多级神经网络的轴承故障分类.pdf
06-27
2. 多级神经网络在轴承故障诊断中的应用:本文提出了一种基于多级神经网络的轴承故障分类方法,该方法可以实时检测轴承故障并对故障程度进行准确的判断。 3. 轴承故障特征提取网络模块:通过在多层感知器网络中嵌入...
用于故障诊断的胶囊网络胶囊网络故障诊断).zip
05-23
用于故障诊断的胶囊网络 最大训练>99% 最大测试>98% 原始振动信号经过滑动窗口采样归一化后成为32x32的图像,再经过数据增强后输入到胶囊网络中。这是纯破胶囊网络代码实现。由于胶囊网络的参数约为8558848,所以...
胶囊网络代码和参考文献
04-08
*************************************************************************** contain: 1. code 2. 参考 ***************************************************************************
胶囊网络代码实现
04-23
CapsNet-Tensorflow-master.zip,胶囊网络代码实现,按readme复现代码
基于多头注意力胶囊网络的文本分类模型
05-25
基于多头注意力胶囊网络的文本分类模型 本文提出了一种基于多头注意力的胶囊网络模型,该模型能够编码单词间的依赖关系、捕获文本中重要单词,并对文本语义编码,从而有效提高文本分类任务的效果。胶囊网络不能选择...
写一下轴承故障诊断代码
weixin_35749440的博客
02-16 1311
轴承故障诊断通常需要结合振动信号和声音信号等多种传感器数据进行分析,代码实现比较复杂。以下是一种简单的基于振动信号的轴承故障诊断代码示例: ```python import numpy as np from scipy.fftpack import fft from scipy.signal import hilbert 加载振动信号数据 vibration_data = np.load('vib...
【动手教你学故障诊断:Python实现Tensorflow+CNN深度学习的轴承故障诊断(西储大学数据集)(含完整代码)】
热门推荐
qq_34211771的博客
06-09 2万+
动手学基于Python+CNN深度学习的轴承故障诊断(西储大学数据集)(含完整代码)该项目使用tensorflow和keras搭建深度学习CNN网络,并使用西储大学数据集作为训练集和测试集,对西储大学mat格式数据进行处理,将数据放入搭建好的网络中进行训练,最终得到相关故障诊断模型。最近在上故障诊断的课程,老师发给我们西储大学的轴承故障数据集,让我们自己去折腾。正巧前段时间学习了深度学习的课程,因此想着自己搭建一个深度学习的网络来进行相关故障的诊断。查阅相关文献,使用深度学习的故障诊断方法目前主要有两种形式
Capsules胶囊神经网络代码测试(1)——测试mnist数据
吃了亏还皮
08-14 3740
原地址:https://github.com/Sarasra/models/tree/master/research/capsules 运行必须要有GPU 下载两个数据包,第一个是 MNIST tfrecords,第二个是已经训练好的模型文件。 Download and extract MNIST tfrecords to $DATA_DIR/ from:https://storage.go...
Python轴承故障诊断 (一)短时傅里叶变换STFT
小蜗爱建模的博客
12-08 4305
Python实现轴承故障短时傅里叶变换
基于深度自编码网络实现轴承故障诊断python代码,tensorflow框架)
qq_40840797的博客
05-14 1320
代码实现了一个基于DAE的分类模型,用于对给定数据集进行分类。首先,通过DAE模型对原始数据进行特征提取和降维,然后使用分类模型将提取的特征与标签相匹配,以便对新数据进行分类。2.效果(展示图中epoch为1000,当epoch为2000更佳)1.网络模型(数据集为CWRU)2.2.0HP训练集损失曲线。2.3.0HP测试集准确率曲线。2.4.0HP测试集损失曲线。2.1.0HP训练集曲线。
基于残差神经网络的轴承故障诊断Python代码实现
weixin_49890890的博客
07-17 1765
残差神经网络的主要贡献是发现了“退化现象(Degradation)”,并针对退化现象发明了 “快捷连接(Shortcut connection)”,极大的消除了深度过大的神经网络训练困难问题。神经网络的“深度”首次突破了100层、最大的神经网络甚至超过了1000层。残差神经网络(ResNet)是由微软研究院的何恺明、张祥雨、任少卿、孙剑等人提出的。数据集西储大学的轴承数据集,我选取了四种故障类型进行轴承的故障诊断。训练集:1200组(每种故障数目为400组)测试集:720组(每种故障数目为180组)
【Mo 人工智能技术博客】胶囊网络——Capsule Network
Mo 的博客
11-04 2811
胶囊网络——Capsule Network 作者:林泽龙 1. 背景介绍 CNN 在处理图像分类问题上表现非常出色,已经完成了很多不可思议的任务,并且在一些项目上超过了人类,对整个机器学习的领域产生了重大的影响。而 CNN 的本质由大量的向量和矩阵的相乘或者相加,因此神经网络的计算消耗非常大,所以将一张图片上全部像素信息传递到下一层运算是十分困难的,所以出现了“卷积”和“池化”这种方法,能够在不损...
写用于故障诊断的一维胶囊网络代码keras
06-13
好的,以下是用于故障诊断的一维胶囊网络的 Keras 代码: ```python from keras import layers, models # 定义输入层 input_shape = (None, 1) # 一维输入,长度任意 inputs = layers.Input(shape=input_shape) # 第一个卷积层,用于提取特征 conv1 = layers.Conv1D(filters=32, kernel_size=3, activation='relu')(inputs) # 第二个卷积层,进一步提取特征 conv2 = layers.Conv1D(filters=64, kernel_size=3, activation='relu')(conv1) # 定义胶囊层 num_capsule = 5 # 胶囊数 dim_capsule = 16 # 每个胶囊的维度 capsule = layers.Capsule(num_capsule=num_capsule, dim_capsule=dim_capsule, routings=3)(conv2) # 将胶囊层的输出展平,用于分类 flatten = layers.Flatten()(capsule) # 全连接层,用于分类 fc1 = layers.Dense(units=128, activation='relu')(flatten) fc2 = layers.Dense(units=64, activation='relu')(fc1) outputs = layers.Dense(units=1, activation='sigmoid')(fc2) # 定义模型 model = models.Model(inputs=inputs, outputs=outputs) ``` 这是一个简单的胶囊网络,由两个卷积层和一个胶囊层组成。输入数据是一维的,可以是时间序列数据或者其它一维数据。胶囊层用于提取特征,并输出分类结果。在此代码基础上,可以根据具体需求进行修改和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • CNN网络的故障诊断(轴承的多故障类型分类+Python代码) 7667
  • BP神经网络的诊断分类(初学者+matlab代码实现) 4842
  • SVM的诊断分类(初学者+MATLAB代码实现) 3552
  • python 画图背景修改(将背景的灰色改成白色) 2974
  • 基于胶囊网络的轴承故障诊断(代码实现) 2751

最新评论

  • 基于CNN的刀具剩余使用寿命预测(初学者+matlab代码实现)

    Thftiii: 求数据

  • CNN网络的故障诊断(轴承的多故障类型分类+Python代码)

    2301_77515768: 博主可以教教我怎么配置吗

  • 基于残差神经网络的轴承故障诊断(Python代码实现)

    qq_58650446: 作者这些库能分享一下吗?

  • CNN网络的故障诊断(轴承的多故障类型分类+Python代码)

    m0_61437511: 请问博主可以分享一下数据集吗?谢谢啦!

  • 基于胶囊网络的轴承故障诊断(代码实现)

    Y106186: 请问可以共享一下代码么1064792507@qq.com

大家在看

  • 嵌入式系统软件开发环境_1.定义及特点和分类
  • 基于jmeter+perfmon的稳定性测试记录!
  • Python面试题-4
  • 计算机组成原理 易错知识点 第一章-第四章 计算机概述;总线与存储器
  • 从零开始! Jupyter Notebook的安装教程

最新文章

  • 多尺度卷积网络(Muti-CNN-FNN Network)寿命预测研究
  • 基于残差神经网络的轴承故障诊断(Python代码实现)
  • CNN网络的故障诊断(轴承的多故障类型分类+Python代码)
2023年8篇
2022年4篇

目录

目录

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司漯河百搜标王多少钱永湖SEO按天收费报价武威网站搜索优化哪家好丹东网站seo优化哪家好许昌优化公司六安外贸网站建设南昌网站推广工具公司金昌营销型网站建设公司哈密外贸网站建设报价保定关键词排名推荐林芝百度标王多少钱济南seo优化价格乐山百度竞价哪家好连云港网站建设公司湘西seo网站推广中卫网站优化按天收费报价郑州网站优化按天计费哪家好秦皇岛网站seo优化哪家好三明推广网站推荐唐山营销网站推荐内江推广网站银川网站推广系统推荐蚌埠网站推广系统推荐汕尾网站优化推广多少钱绍兴品牌网站设计哪家好辽源关键词按天计费多少钱大同关键词排名陇南网站推广系统推荐九江网站关键词优化公司平顶山百姓网标王推广推荐歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化