北漂炼丹青年
python学习者
展开
-
深度学习与西储大学轴承数据集(一)
西储大学数据集介绍原创 2022-06-14 21:06:14 · 8498 阅读 · 17 评论 -
深度学习与西储大学轴承数据集(三)
接着上一节所说的,这一节主要还是分享有关数据集的分割组合。目前,我们已经明确了自己的目的,有以下几个:进行10分类;时域、频域、时频都要有条件实现;样本大小设定为2048个点;使用滑窗取值法,训练集、验证集、测试集的比例为7:1.5:1.5.话不多说,先上一段代码(这段代码是我从别处参考的,有点找不到具体出处了),这段代码用来进行滑窗取值,返回值是序列的起始和结束位置。接下来要完成3个步骤,按照2048的样本大小分块、随机打乱顺序和划分训练集、验证集、测试集。我个人的理解,如果先划分训练集、验证集、测原创 2022-06-19 00:58:47 · 2415 阅读 · 0 评论 -
一维数据二维化的办法汇总(一)
在轴承故障诊断中,除了对模型进行改进,很多人也会对数据集进行变换。常见的比如说小波时频图,思路是将一维时序信号变换为二维图像,而后便于使用各种图像分类的先进技术。实际上还有很多方法可以进行这种类似的变换,相关的论文我也看到过,但是具体效果如何不好说。最近正在生成相关的数据集,比较耗时,所以先把大概类别贴出来,后续有了数据集以后会进行测试。原创 2022-11-12 21:36:48 · 2973 阅读 · 0 评论 -
一维数据二维化的办法汇总(二)
上次写了2种方法,分别是格拉米角场GAFs和马尔可夫变迁场 MTF,这次还有2个,分别是递归图 Recurrence Plot和短时傅里叶变换STFT。原创 2022-11-26 22:57:47 · 3032 阅读 · 2 评论 -
轴承图片数据集分类效果测试
前面展示了很多将一维数据二维图片化的方法,但是具体效果如何还待定,今天我把简单测试的结果放出来供大家参考。还有一种灰度图我觉得价值不大,因为它本质上是把一维数据乘以255后转化为图片,读取以后再除以255转换为原始二维数据。这是何苦呢,大家都只有一个通道,直接读取不就行了,何必换来换去的折腾。以上几种图我在之前的文章里都单独列举了,首先直观的看,小波和短时傅里叶的特征是最明显的,其他图片的特征目测已经不是一般人类能把握的了。原创 2022-11-29 09:53:18 · 1681 阅读 · 5 评论 -
关于轴承故障分类方法CNN+SVM和ELM的补充
上一篇文章里主要讲了CNN+SVM的实现方法,但是还有2个问题没有涉及,一是这种方法到底有没有改善的效果,二是ELM方法效果如何。通过这篇文章我进行具体展示。原创 2022-11-28 21:42:15 · 1250 阅读 · 6 评论 -
轴承故障分类方法之CNN+SVM和ELM
一直想写这个方法,CNN+SVM是我一开始学习的时候想复现的,结果学了很久才达到目标。主要还是太急于求成了,而且现成的资料很难查到,等对CNN和SVM模型以及训练方法有了一定了解以后,我才真正复现。但是实际上这个方法效果一般,只是给大家提供一种思路而已。原创 2022-11-27 16:08:07 · 1693 阅读 · 0 评论 -
西储大学数据集小波时频图的分类验证结果
上次生成了三个工况的小波时频图数据集。基本上电脑跑了一个小时的功夫,文件体积也不大。又花了点时间写了多工况的分类结果程序进行测试,结果出乎意料的好,当然运行时间也和想象的差不多长。以上是取128×128尺寸后的2次运行的平均结果,效果好的有点不敢相信,将尺寸缩小到64×64后效果略有下降。但是这个结果依然算很高了。怪不得用小波时频图进行诊断的那么多,确实是更好用一些,比较有潜力。原创 2022-11-11 23:09:18 · 967 阅读 · 5 评论 -
西储大学轴承数据小波变换
除小波变换外,还有格拉米角场 GAFs、马尔可夫变迁场 MTF、递归图 、短时傅里叶变换STFT,具体原理大家在其他地方都能很方便的找到,我这儿就不放了,我自己掌握的也有限,只是把相关方法展示出来,供大家参考。如果你在别的地方看到的图片不太一样,可能是小波种类的原因,或者cmap也就是色彩模式的设置以及levels=np.linspace的设置不一样,也就是说plt.contourf对于最终图像的表现形式影响比较大,大家可以自行测试。小波变换中可以有各种各样的小波类型可选,每种生成的图都是不一样的。原创 2022-11-05 23:05:04 · 1808 阅读 · 5 评论 -
二维频域数据轴承故障分类的几个保留模型
像我这种换一个模型就一篇论文的做法虽然也是灌水行为,但是如果能把模型机理写清楚,再把实验过程做的严谨一些,也绝对是好论文了。前面写过几个处理二维频域数据的模型,如ResNet、ResNeXt、ShuffleNetV2、VIT,效果都不错,尤其是VIT,速度快,准确率高。我想说的是,这些都是比较新的卷积模型,大家在其他地方找到以后要认真调参数,这个过程比较费劲,但是结果绝对是可以期待的。这几个模型我都还没见过有使用的论文,如果有急需的,可以私信我,有偿。速度同样很快,而且准确率更高,好像高的有点假了。原创 2022-11-04 20:04:00 · 491 阅读 · 0 评论 -
噪声对轴承故障诊断影响的测试(一)
考虑实际情况,我们需要测试的数据肯定不会很干净,因此测试集中包含噪声是肯定的。我认为都可以,添加噪声的时候,我们考虑的情况是我实际拥有的训练数据本身就是包含噪声的,在不进行降噪的情况下就是这种方式;而不添加噪声对应的是没有实际数据进行训练,模型是由比较干净的公开数据集训练而成的。因此效果确实不尽人意。下图中上面是添加噪声6的图,下面是-6,可见差别还是挺大的,噪声的影响确实非常显眼。区分度不高,间接也说明了真实数据的重要性,也就是说如果我们有足够的同类数据,哪怕它充满噪声,我们一样可以做出比较准确的分类。原创 2022-10-31 21:36:21 · 1204 阅读 · 6 评论 -
轴承故障诊断领域的论文到底有多水
这个是最让人困惑的,就好像你说自己证明了某个方法更好,但是你却没有交代自己怎么做的,或者说你交代的过程有外行话或者逻辑上的缺陷,但是你就这么给出个结果完事了。由于自己没有足够大的学术交流圈子,为了尽量避免误判,我在原来13篇论文的基础上又读了18篇,这些论文至少都出自中文核心,有一些还有EI的title,事实上近几年能找到的文章也不算多,这些基本能说明问题了。当然,还有更多细节,比如说损失函数你得交代吧,模型超参数得介绍全吧,至少数据集是哪个工况下的得说吧,当你想复现这些论文,关注点在这些地方的时候。原创 2022-10-30 16:45:12 · 2025 阅读 · 3 评论 -
论文中常见的混淆矩阵和T-SNE聚类图
混淆矩阵和TSNE原创 2022-10-25 19:01:45 · 2060 阅读 · 17 评论 -
西储大学轴承二维频域数据应用效果
之前说的还都是一维数据作为输入进行的测试,但是既然是卷积神经网络,怎么能一直在一维领域转悠呢,很多新模型可都是二维卷积。于是,很多人自然而然的想到了将一维数据二维化。转换为二维的方法非常多,我也有计划都试一试,这次先使用我使用最多最熟悉的直接二维化。原创 2022-10-22 11:04:05 · 970 阅读 · 1 评论 -
轴承数据频域信号的生成与效果测试
从结果看,准确率出现了反转,原来的CNN_1D模型反而轻松超越了WDCNN,后者反而表现很差,主要是因为WDCNN针对的是时域调的参数,换成了频域数据,尤其是输入大小变化以后效果受影响最大,如果稍微调一调参数的话,相信效果也不会差多少。从图中可以看出,频域的数据确实比时域的要直观一些,而且长度从2048变成了1024,这是由傅里叶变换的对称特性决定的,同时傅里叶变换也消除了时序数据的时间特性,不过在故障分类问题中,时间信息应该是没那么重要的,毕竟我只需要判断某个样本的类型,而不是时间相关的长短期的特征。原创 2022-10-14 16:45:03 · 863 阅读 · 3 评论 -
西储大学轴承数据一维时序方法基础测试
在单一工况下的故障分类准确率已经难以区分好的模型和方法,利用不同工况之间的直接预测,而后取均值是一种思路。原创 2022-10-07 21:07:42 · 1030 阅读 · 16 评论 -
关于西储大学轴承数据集的一些基本结论
研究生阶段基本都在研究这个数据集了,其实也是很无奈的事,没有导师指导也没有师兄弟和实验室,这个数据集用的人多,网上资源也不少,所以就以它为准了,下面是一些基本结论,我先写出来,抽空会把验证过程重新展示出来,主要是防止大家在一些基本问题上多耗费时间吧。以上这些只是粗浅的结论,相关证明过程我会花一些时间贴出来,供大家参考讨论,如果有希望我试一试的,也可以留言,一个星期以后论文交了就有时间了~原创 2022-10-06 11:56:39 · 1314 阅读 · 2 评论 -
如何给数据添加高斯白噪声?
首先测试集应该是加噪声的,至于训练集需不需要加噪声就见仁见智了。我个人测试的结果是,训练集如果不加噪声的话效果特别差,如果加噪声的话效果就比较好接受,大家可以自己试试看。在轴承故障研究中免不了要涉及到给数据主动加入噪声的情况,一般我们加的是高斯白噪声。由于热噪声是由大量自由电子的运动产生的,其统计特性服从高斯分布,故常将热噪声称为高斯白噪声。的频谱是均匀分布的,好像白光的频谱在可见光的频谱范围内均匀分布那样,所以热噪声又常称为。定义一:如果一个噪声,它的瞬时值服从。又是均匀分布的,则称它为高斯白噪声。原创 2022-10-05 14:52:02 · 4486 阅读 · 7 评论 -
tensorflow训练中常见的几种学习率调参方式
刚开始学习tensorflow时觉得最麻烦的就是训练调参了,有时候一不小心就梯度爆炸,有时候因为拟合不够的问题,本来很有潜力的模型或方法,没有得出好的结果,导致了很多错误和时间的浪费。其中学习率的调参机制非常重要,在这里总结一下。主要涉及几个方法,分别是最佳模型保存、指数学习率衰减、余弦退火和早停机制。原创 2022-09-24 22:58:17 · 2264 阅读 · 0 评论 -
经典模型WDCNN中的AdaBN pytorch复现
在测试的时候通过设置BN中的track_running_stats=False可以直接将BN里源域的均值方差替换为目标域的均值方差,实际效果其实是很明显的,提升了4.53%,但是这个是6次迁移学习准确率的均值,因此实际的准确率提升要更明显。另外,在我之前的测试中发现,只要模型中含有BN,使用AdaBN的方法均有较好的表现,其中一个shufflenet模型的准确率从96%提升到了98%,如果对性能更强的模型使用的话,99%也可能不是问题。如果模型中没有BN,我觉得也未必不能用,这种思路还是很有借鉴意义的。原创 2022-08-21 23:15:39 · 2426 阅读 · 4 评论 -
故障分类中的特征提取效果浅见
首先说明基本情况,本人入坑轴承故障诊断一年多,对于很多问题可定认识还不到位,研究的也不够彻底,所以这篇文章算是自己的阶段性认知,不一定正确,希望各位道友批评指正。当初之所以选择这个方向,第一是因为我之前的工作就是机械方向,二是人工智能比较热门,三是我认识到这个方向的门槛可能没有那么高。第三点其实很重要,因为我本身不是学机械的,学校和导师这边也没有支持,靠自学想毕业的话只能找自己力所能及的方向。...原创 2022-08-09 12:16:35 · 2437 阅读 · 2 评论 -
深度学习与西储大学轴承数据集(二)
西储大学数据的处理其实不复杂,在网上用心搜索的话可以找到几个版本,但是在实际使用过程中多少都还会遇到一些问题。事实上,实现数据集的基础功能比较容易,但是如果在使用过程中有一些细节注意不到的话,很可能你后续的实验会白做,这里我也走过一些弯路。大致来说,数据集制作一步到位比较难,因为后续你可能要在多种情况下应用,比如说加噪声、做FFT、维度变换、小波变换、选小样本进行迁移学习等。如果数据集搞不好,可能你的结果就不受控,到时候排查起问题来特别麻烦。对于数据集的处理,我这里把它分为3个部分详细进行说明。数据的读取数原创 2022-06-18 09:36:25 · 4408 阅读 · 15 评论