资源简介
利用卷积神经网络对轴承故障数据进行分类,通过构造简单的卷积神经网络,达到良好的识别分类效果
代码片段和文件信息
import os
os.environ[‘TF_CPP_MIN_LOG_LEVEL‘] = ‘2‘
import numpy as np
import tensorflow as tf
nSampleSize = 20000 # 总样本数
nSig_dim = 576 # 单个样本维度
nLab_dim = 4 # 类别维度
# 读取float型二进制数据(最后数据格式存放在元祖里)
def getdata(nSampSize=20000):
signal = np.fromfile(‘DLdata90singal.raw‘ dtype=np.float64)
labels = np.fromfile(‘DLdata90labels.raw‘ dtype=np.float64)
# print(signal)
# print(labels)
mat_sig = np.reshape(signal [-1 nSampSize]) #由于matlab 矩阵写入文件是按照【列】优先 需要按行读取
mat_lab = np.reshape(labels [-1 nSampSize])
mat_sig = mat_sig.T # 转换成正常样式 【样本序号,样本维度】
mat_lab = mat_lab.T
return mat_sig mat_lab
#数据归一化处理,样本归一化到[-1 1],逐条对每个样本进行自归一化处
def zscore(xx):
max1 = np.max(xx axis=1) #按行或者每个样本,并求出单个样本的最大值
max1 = np.reshape(max1 [-1 1]) # 行向量 ->> 列向量
min1 = np.min(xx axis=1) #按行或者每个样本,并求出单个样本的最小值
min1 = np.reshape(min1 [-1 1]) # 行向量 ->> 列向量
yy = (xx-min1)/(max1-min1)*2-1
return yy
def NextBatch(iLen n_batchsize):
# iLen: 样本总数
# n_batchsize: 批处理大小
# 返回n_batchsize个随机样本(序号)
ar = np.arange(iLen) # 生成0到iLen-1,步长为1的序列
np.random.shuffle(ar) # 打断顺序
return ar[0:n_batchsize]
def weight_variable(shape):
# 定义权重初始化
initial = tf.truncated_normal(shape stddev=0.1)
return tf.Variable(initial)
def bias_variable(shape):
# 定义偏置初始化
initial = tf.constant(0.1 shape=shape)
return tf.Variable(initial)
def conv2d(x W):
# 定义卷积层
# x input tensor of shape ‘[batch in_height in_width in_channels]‘
# W filter / kernel tensor of shape [filter_height filter_width in_channels out_channels]
# ‘strides[0] = strides[3] = 1‘. strides[1]代表x方向的步长,strides[2]代表y方向的步长
# padding: A ‘string‘ from: ‘“SAME“ “VALID“‘
return tf.nn.conv2d(x W strides=[1 1 1 1] padding=‘SAME‘)
def max_pool_2x2(x):
# 池化层
# stride [1 x_movement:2 y_movement:2 1]
return tf.nn.max_pool(x ksize=[1 2 2 1] strides=[1 2 2 1] padding=‘SAME‘)
# 为NN定义placeholder
xs = tf.placeholder(tf.float32[NonenSig_dim])
ys = tf.placeholder(tf.float32[NonenLab_dim])
keep_prob = tf.placeholder(tf.float32)
x_image = tf.reshape(xs [-1 24 24 1])
## conv1 layer ##
W_conv1 = weight_variable([5 5 1 32]) # patch 5x5 in size 1 out size 32
b_conv1 = bias_vari
- 上一篇:生意参谋transit-id和data解密源码
- 下一篇:KNN实现鸢尾花分类
相关资源
- 利用鸢尾花数据集画出P-R曲线 pytho
- 卷积神经网络回归模型
- python图像裁剪
- Python-手势识别使用在TensorFlow中卷积神
- 目标检测自动标注代码
- 利用keras实现的cnn卷积神经网络对手写
- 梯度下降python程序实现+可视化
- 基于vggnet卷积神经网络的图像风格迁
- 基于深度学习的表情识别系统
- 语义分割标注转为目标检测框标注
- keras上LSTM长短期记忆网络金融时序预
- CNN卷积神经网络TensorFlow代码
- 深度学习 莫烦 Keras源代码
- 合并BN层的python脚本
- 机器学习深度学习篇系列分享_超值
- 《TensorFlow2深度学习》
- 深度学习视频教程,包括python入门,
- python三阶深度学习框架-Real-Time-Voice
-
xm
l_parse.py - 卷积神经网络(CNN)源码
- 可直接运行版本python实现yolov3调用摄
- Deep Learning for Computer Vision with Python链
- 莫烦全部代码Reinforcement-learning-with-
- cifar-10-python.tar.gz的资源
- minist+CNN+交叉验证
- python全栈视频某智
- YOLO_train.py
- 强化深度学习迷宫问题
- 基于PyTorch的深度学习技术进步
-
深度学习目标检测提取xm
l文件中的
评论
共有 条评论