当前位置:首页 > 技术分析 > 正文内容

Matlab和Python环境下的深度学习小项目

ruisui883周前 (05-26)技术分析22

MATLAB环境下基于深度学习的图像去块(Image Deblocking)

该算法程序训练一个经典的降噪卷积神经网络 (DnCNN),并使用DnCNN网络减少JPEG压缩伪影(compresaion artifact)。

DnCNN网络

基于深度学习的超低频信号降噪方法

算法程序使用的深度学习模块为pytorch,运行环境为jupyter notebook和python,降噪结果如下

MATLAB环境下基于深度学习VDSR的单图像超分辨率重建

算法程序主要训练一个Very-Deep Super-Resolution (VDSR) 深层网络,然后使用 VDSR 网络从单低分辨率图像中估计高分辨率图像。超分辨率重建是从低分辨率图像创建高分辨率图像的过程,本例考虑单图像超分辨率 (single image super-resolution。SISR),其目标是从一张低分辨率图像中恢复为一张高分辨率图像。SISR具有一定的难度,因为高频图像内容通常无法从低分辨率图像中恢复。如果没有高频信息,高分辨率图像的质量就会受到限制。此外,SISR是一个所谓的病态问题,因为低分辨率图像可以产生几种可能的高分辨率图像。

基于LSTM的涡轮扇发动机(Turbofan Engine)剩余使用寿命预测

算法程序运行环境为python,所使用的深度学习模块为Pytorch,采用LSTM神经网络对NASA涡轮扇发动机(Turbofan Engine)进行剩余使用寿命预测(Remaining Useful Life,RUL)。

所需模块如下

import torch
import torch.nn as nn
from torch.autograd import Variable
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
from openpyxl import Workbook

MATLAB环境下使用深度学习网络对语音去噪

算法程序讲解如何使用深度学习网络对语音信号进行降噪,并比较了应用于同一任务的两种类型的网络:全连接和卷积网络。语音信号降噪的目的是去除语音信号中的噪声,同时提高语音的质量,本例主要讲解利用深度学习网络从语音信号中去除洗衣机的噪声。

绘制干净、嘈杂和降噪后的音频信号

绘制干净、嘈杂和降噪后的频谱图。

基于卷积神经网络CNN和支持向量机SVM的齿轮故障诊断

算法程序运行环境为python,可以选择Jupyter Notebook和py文件运行,深度学习模块为keras和tensorflow。采用如下方法进行齿轮故障识别:(1)CNN+Fully;(2)CNN+SVM linear;(3)CNN+SVM linear

齿轮在三种工况下运行:1.健康工况Healthy;2. 一颗断齿故障One chipped tooth;3.三颗磨损齿故障Three worn teeth

所用模块如下

import tensorflow as tf
import os


import warnings
warnings.filterwarnings('ignore')


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt


from sklearn import metrics
from sklearn.neighbors import NearestNeighbors


from keras.models import Sequential, Model
from keras.layers import Dense, Dropout, Convolution2D, MaxPooling1D, Flatten, Input,Conv1D, UpSampling2D, Reshape
from keras.optimizers import Adam
from keras.utils.np_utils import to_categorical
from scipy.io import loadmat


#


import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import confusion_matrix
from sklearn.model_selection import validation_curve
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import GridSearchCV
import seaborn as sns


from sklearn import metrics
from sklearn.metrics import confusion_matrix
from sklearn.metrics import plot_confusion_matrix

from scipy.spatial.distance import pdist
from sklearn.manifold._t_sne import _joint_probabilities
from scipy import linalg
from sklearn.metrics import pairwise_distances
from scipy.spatial.distance import squareform
from sklearn.manifold import TSNE
from matplotlib import pyplot as plt
import seaborn as sns

三种齿轮工况的时域波形和频谱如下

基于门控双注意力机制的滚动轴承剩余使用寿命(Remaining Useful Life)预测

算法程序运行环境为python,所使用的深度学习模块为tensorflow

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

所使用的数据为公开数据,试验台如下

附带参考文献

代码运行结果如下

基于1D-CNN的齿轮故障诊断及TSNE可视化

算法程序运行环境为Python,深度学习为tensorflow和keras

from tensorflow.keras.models import Sequential,Model
from tensorflow.keras.layers import Input,Dense, Dropout, Flatten
from tensorflow.keras.layers import Conv2D, MaxPooling2D

代码自带数据集:断齿故障和健康状态

基于指数退化模型和LSTM自编码器的轴承剩余寿命预测

算法程序运行环境为python。所需机器学习和深度学习模块:sklearn, keras,tensorflow

import tensorflow as tf
#tf.random.set_seed(x)
#tf.logging.set_verbosity(tf.logging.ERROR)
tf.compat.v1.logging.set_verbosity(tf.compat.v1.logging.ERROR)
from keras.layers import Input, Dropout, Dense, LSTM, TimeDistributed, RepeatVector
from keras.models import Model
from keras import regularizers

所用数据集:NASA FEMTO Bearing 公开数据集,试验台如下

参考文献:

Review on Remaining Useful Life Prediction Methods of Bearing (2020)

A Review on Prognostics Methods for Engineering Systems (2020)

指数退化模型

参数估计


(2)LSTM自编码器模型


MATLAB环境下深度学习可解释性(图像局部遮挡敏感性分析,Grad-CAM可解释性分析等)

算法程序运行环境为MATLAB R2021B。

图像局部遮挡敏感性分析

(Local Interpretable Model-agnostic Explanations,LIME)可解释性分析

(class activation mapping,CAM)可解释性分析

Grad-CAM可解释性分析

MATLAB环境下简单的利用深度学习拟合多项式系数

Python环境下基于机器学习(决策树,随机森林)和深度学习(1D-CNN)的汽车变速箱轴承故障诊断

算法程序使用机器学习(决策树,随机森林)和深度学习(1D-CNN)的汽车变速箱轴承进行故障诊断

注意:该程序只有轴承故障数据,没有试验台信息(保密)

故障数据信息如下:label0: 汽车变速箱正常轴承,label1: 汽车变速箱输入轴减速器端轴承内滚道故障 2000rpm,label2: 输入轴电机端轴承内滚道故障 2000rpm,label3: 中间轴减速器端轴承滚子故障 2000rpm,label4: 输入轴减速器端轴承保持架故障 2000rpm

所使用的模块如下

from scipy.io import loadmat
import matplotlib.pyplot as plt
from sklearn.preprocessing import MinMaxScaler
import numpy as np
from collections import Counter
#pip install pyemd
from PyEMD import EEMD, EMD
import math
import pandas as pd

from tensorflow import keras
from tensorflow.keras import layers, models

数据集如下

MATLAB环境下基于AlexNet网络的Deep Dream图像生成

算法程序讲解如何使用预训练的卷积神经网络AlexNet生成Deep Dream图像

Deep Dream是深度学习的一种特征可视化技术,能够生成强烈激活网络层的图像。通过可视化Deep Dream图像,可以突出显示深层网络学习到的图像特征,这些图像特征对于理解和调试网络非常有用。

MATLAB环境下基于深度学习的人体动作识别(Sequence-to-Sequence分类)

算法程序讲解如何使用长短时记忆(LSTM)网络对人体动作进行识别

为了训练深层神经网络对序列数据的每个时间步长进行分类,使用Sequence-to-Sequence的LSTM网络。Sequence-to-Sequence的LSTM网络能够对序列数据的每个单独的时间步长进行不同的预测。该程序使用从受试者智能手机中获得的传感器数据,以识别受试者的动作,包括跳舞、跑步、散步、站立和静坐。训练数据包含七个受试者的时间序列数据,每个时间序列有三个特征(三个特征对应于三个不同方向的加速度计读数),长度各不相同。数据集包含六个训练观测值和一个测试观测值。


MATLAB环境下基于深度学习(R-CNN和Faster R-CNN)的车辆检测

算法程序讲解如何训练 R-CNN和Faster R-CNN 目标检测器以检测停车标志和车辆。


,面包多代码

https://mbd.pub/o/GeBENHAGEN

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/4337.html

分享给朋友:

“Matlab和Python环境下的深度学习小项目” 的相关文章

冷库存储费管理系统——货架收费版

冷库存储费管理系统——货架收费版headerfooter《冷库存储费管理系统——货架收费版》是根据冷链存储的管理进行开发的一款软件,该软件操作简单,界面简洁。区别于其他同类软件的主要特点是:按所用货架个数及存放时间收费。软件界面设计简洁、美观、其人性化的管理可以使用户轻易上手,提升服务质量,提高工作...

Slackware 15.0?发布:历史最久且在维护的Linux发行版本

Slackware 14.0 于 2012 年发布,在经过了数年的等待之后 Slackware 15.0 发行版本于今天正式发布。Slackware 于 1993 年发布,是目前历史最悠久、且仍在维护的 Linux 发行版本。Slackware 15.0 在去年进入测试阶段,在发布几个候选版本之后终...

vue中组件之间的通信方式

** 1.1 父子组件**a. 父向子传数据: 第1种: 父通过属性传值,子组件通过props接收数据(注:props传过来的数据是单向的,不可以进行修改)第2种:子组件可以通过$parent来获取父组件里的数据和调用父组件的方法(注:数据是双向的,还要注意如用了UI组件并且在该UI组件里重新定义一...

10个实例小练习,快速入门熟练 Vue3 核心新特性(一)

作者:xuying 全栈修炼转发链接:https://mp.weixin.qq.com/s/_n2seDbbiO5hXQfuUGbUCQ前言Vue3.0 发 beta 版都有一段时间了,正式版也不远了,所以真的要学习一下 Vue3.0 的语法了。本篇文章总共分两部分,望小伙伴们认真阅读。下一篇:10...

Git 分支管理策略汇总

最近,团队新入职了一些小伙伴,在开发过程中,他们问我 Git 分支是如何管理的,以及应该怎么提交代码?我大概说了一些规则,但仔细想来,好像也并没有形成一个清晰规范的流程。所以查了一些资料,总结出下面这篇文章,一共包含四种常见的分支管理策略,分享给大家。Git flow在这种模式下,主要维护了两类分支...

「Git迁移」三行命令迁移Git包含提交历史,分支,tag标签等信息

问题描述:公司需要将一个git远程服务器的全部已有项目迁移到一台新服务器的Gitlab中,其中需要包含全部的提交纪录,已有的全部分支与全部打tag标签,目前此工作已全部迁移完毕,特此记录一下操作步骤环境描述:1. 要迁移的远程Git:Gitblit2. 迁移目的Git:Gitlab3. 暂存代码的P...