关于CWRU轴承数据集的分类

对CWRU数据集中12K采样频率下的驱动端轴承故障数据,电机近似转速=1797的数据进行四分类。内圈故障、滚动体故障、外圈故障(中心方向@6:00)、正常

file namelabel
0.000-Normal.mat0
0.007-Ball.mat1
0.007-InnerRace.mat2
0.007-OuterRace6.mat3
0.014-Ball.mat1
0.014-InnerRace.mat2
0.014-OuterRace6.mat3

读取数据时,采样率=400,训练数据1824组,测试数据610组
epochs=100、batch size=32
结果在训练集的识别率为1,测试集的识别率为0.9902

测试集结果

NormalBallInner RaceOuter Race
Normal153000
Ball015300
Inner Race15301460
Outer Race15306152

Model

    model = Sequential()
    model.add(Conv1D(16, 16, activation='relu',
                     input_shape=(subsample, 1)))
    model.add(Conv1D(32, 8, activation='relu', padding="same"))
    model.add(MaxPooling1D(8))
    model.add(Conv1D(64, 4, activation='relu', padding="same"))
    model.add(Conv1D(64, 4, activation='relu', padding="same"))
    model.add(MaxPooling1D(4))
    model.add(Conv1D(256, 2, activation='relu', padding="same"))
    model.add(Conv1D(256, 2, activation='relu', padding="same"))
    model.add(MaxPooling1D(2))
    model.add(Conv1D(512, 1, activation='relu', padding="same"))
    model.add(Conv1D(512, 1, activation='relu', padding="same"))
    model.add(MaxPooling1D(1))

    model.add(GlobalAveragePooling1D())

    model.add(Dense(256, activation='relu'))
    model.add(Dropout(0.3))
    model.add(Dense(128, activation='relu'))
    model.add(Dropout(0.3))

    model.add(Dense(labels, activation='softmax'))

    opt = Adam(0.0002)

    model.compile(loss='categorical_crossentropy',
                  optimizer=opt, metrics=['accuracy'])
  • 4
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值